[Etoys] Fwd: MO reader
Bert Freudenberg
bert at freudenbergs.de
Fri Sep 21 03:54:40 EDT 2007
On Sep 21, 2007, at 6:19 , korakurider wrote:
> Hi Bert,
>
> --- Bert Freudenberg <bert at freudenbergs.de> wrote:
>>
>> Based on the category of the sender of #translated:
>>
>> translated
>> | classAndSelector category |
>> classAndSelector := thisContext sender who.
>> category := classAndSelector first category.
>>
>> This is rather inefficient, when loading an MO file
>> we might want to
>> create a cache for looking up the category from the
>> CompiledMethod
>> directly.
> I think it would be safe to implement like this if
> receiver of #translated is literal.
> But how about #translatedNoop? I am not sure if senders
> of #translated and #translatedNoop have same category.
You misunderstood - the lookup is independent of the *receiver* it
only looks at the *sender*, that is, the method in which the
#translated or #translatedNoop send happens.
Or did I misunderstood your question?
>>> c) Where will MO reside in runtime environment?
>>
>> In a subdirectory of "Smalltalk imagePath".
>>
>>> I am thinking about squeakland-OLPC with
>> SecurityPlugin
>>> enabled.
>>> (Is security plugin enabled on XO ?)
>>
>> We might need to add an exception to the
>> SecurityPlugin allowing to
>> read from the po path. On the XO we don't really
>> have to enable it,
>> but the same translations should work on the regular
>> etoys.
> I agree it is needed to tweak SecurityPlugin. But
> SecurityPlugin doesn't differentiate access modes (read
> only or read/write), just allow/disallow file access. So
> It would need major work on plugin/VM of each architecture
> to support that exception.
> (Just arrowing file access under imagePath should be
> dangerous).
That is true unfortunately.
Maybe building a gettext plugin linking to libintl.a is indeed the
best solution. Other ideas?
- Bert -
More information about the Etoys
mailing list