[Newbies] Re: translateFrom:to:table:

Thomas Keller thokeller at gmail.com
Mon Jul 31 21:29:41 UTC 2006


Hi guys,
I wasn't trying to do anything sophisticated. So browsing classes etc was
beyond what I needed. I AM a NEWBIE.

Here's my solution:
b _ Dictionary new.
b at: 'A' put: 5.
b at: 'G' put: 6.
b at: 'C' put: 7.
b at: 'T' put: 8.

myString _'ACGTACGT'.
Transcript show: myString; cr.
myString do: [:each |
Transcript show: (b at: each asString)].

Voila! in Transcript I get:
ACGTACGT
57685768

Thanks though. 8-)
Tom Keller

On 7/30/06, David Shaffer <cdshaffer at acm.org> wrote:
>
> Thomas Keller wrote:
>
> > That works for lots of methods. But for some methods there are no
> > decent comments or examples. This is what I get from "Senders of
> > translateFrom:to:table:"
> >  translateWith: table
> >     "translate the characters in the string by the given table, in
> place"
> >     ^ self translateFrom: 1 to: self size table: table
>
>
> Keep going...senders of #translateWith: and so on until you find a
> meaningful method.  With Kom loaded in my image I find:
>
> ModDoc>>relativeFilePathFrom: path
>     ^((path notEmpty and: [path first = $/])
>         ifTrue: [path copyFrom: 2 to: path size]
>         ifFalse: ['']) translateWith: DelimiterTranslation
>
> and if I inspect DelimiterTranslation I find:
>
> a ByteArray(0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
> 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
> 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
> 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
> 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
> 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
> 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
> 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167
> 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185
> 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203
> 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
> 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
> 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255)
>
> I see that it is a class variable of ModDoc so I look at the /class
> side/ initialize method to see where it gets assigned and find:
>
> initialize
>     "self initialize"
>
>     DelimiterTranslation _ (0 to: 255) as: ByteArray.
>     DelimiterTranslation
>         at: ($/ asciiValue + 1)
>         put: FileDirectory pathNameDelimiter asciiValue.
>
>     "Register this class for startUp notification (in case we are
> started on a
>     platform with a differen path name delimiter"
>     Smalltalk addToStartUpList: self.
>
>
> >
> > I don't find see anything called "references".
> > I cannot find a single example of what a table arguments should look
> > like.
>
> It is available for classes so in the class pane of your browser bring
> up the right-click menu and you should see it (alt-N is shortcut which
> also works in text panes if you have a class name selected).
>
> Hope that helps....
>
> David
>
> _______________________________________________
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
>



-- 
Tom
"Ecrasez l'Infame!" -- Voltaire
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/beginners/attachments/20060731/eebe1217/attachment.htm


More information about the Beginners mailing list