On 16/02/2011 20:13, Eliot Miranda wrote:


On Wed, Feb 16, 2011 at 12:04 PM, Stéphane Ducasse <stephane.duca...@inria.fr <mailto:stephane.duca...@inria.fr>> wrote:


    On Feb 16, 2011, at 6:15 PM, Eliot Miranda wrote:

    >
    >
    > On Tue, Feb 15, 2011 at 11:50 PM, Stéphane Ducasse
    <stephane.duca...@inria.fr <mailto:stephane.duca...@inria.fr>> wrote:
    > Eliot a final question.
    > So how will you handle OPAL compiler change in Cog?
    > Do you require that marcus and jorge have to deal with
    decompiler of caseOf: in addition to all the rest?
    > Is it a strong requirement? Because then this is clear that Opal
    will be delayed. But may be it is not that important after all.
    > Just curious.
    >
    > OPAL is a Smalltalk compiler.  I can therefore assume that it
    will compile Smalltalk.  caseOf: is valid Smalltalk and so will be
    compiled by OPAL.  Whether Marcus chooses to optimise caseOf: or
    not is up to him.

    This is exactly my point.


No it's not.  Your point was to raise two straw-=man arguments:
1. that Marcus and Jorge would have to deal with the decompiler (not an issue; the decompiler already deals with optimized caseOf: and the new decompiler will deal with optimized caseOf: just as it'll deal with optimized ifTrue: ifNotNil: et al). 2. that supporting caseOf: in optimized form will delay Opal (not an issue; Opal will optimize certain constructs, this is just one more and won't add a lot of time).

So your point appears to be to try and justify removing caseOf: on spurious grounds by spreading FUD.

This is so unlike you I'm having a hard time really understanding what's going on.



Correct me if I'm wrong but isn't Stephane essentially saying that Opal will just demote #caseOf: from inlined special form to normal method? (Possibly so it can be unloadable instead of being pinned in the system by the compiler support). It seems to me that this shouldn't affect caseOf: use in Cog since the inlining there is handled by the SLang translator.

Or have I totally misunderstood?

Of course, where caseOf: is kept afterwards another question :)

Reply via email to