Re: Win32LIb/Llama Status

new topic     » goto parent     » topic index » view thread      » older message » newer message

On Thu, 24 Jun 1999, David Cuny wrote:

] [ The Bad News ]

[Paraphrase: Llama doesn't bind, whatever I do...]

] (BTW, thanks for the hint about alt+034. I theory, that feature is supposed
] to be in EE)

Gaah. I should have read this message before posting the last one :) :)

] Anyway, Euphoria decides that the second "set" is a name conflict, and the
] next "set" that follows... each is renamed some symbol like "Dg" or "Lw",
] despite the -clear_routines option being selected.
]
] Naturally, routine_id can't find the renamed symbol, and Llama returns error
] after error about methods not being defined.
]
] This is a Bad Thing. I could get around it by renaming the function to
] unique identifiers, such as windowSet and pushButtonSet. But I'd prefer that
] it just work correctly. I'd like to see this fixed, but not before the Linux
] port.

I think if this were to be fixed, BIND and SHROUD would have to become
2-pass compilers, which is something Rob wanted to avoid.

I'm just trying to think it through as I type...

Yup. Solved it, and it *doesn't* have to be 2-pass.
Routine_Ids should be set at compile time. They can't possibly change, so
I think this is a vialable option.

e.g.

function foo()
    return time()
end function

bar = routine_id("foo")

Compiles to

function_token foo_tag ( ) return_token time_token ( ) end_token
function_token bar_tag = constant_from_id_table_for_foo

...or whatever. Notice it removes the need for a token for routine_id,
since it never gets used.

IMHO, it's a perfect argument for including and appending to an internal
routine_id() table for the interpreter.

We could then also do things like 'bar = routine_id("time")', without
having to define a wrapper function like 'foo()'.

Looks like I may have started another "we want _this_ feature" thread.
Sorry. :( :)

Carl

--
Carl R White -- Final Year Computer Science at the University of Bradford
E-mail........: cyrek- at -bigfoot.com -- Remove hyphens. Ta :)
URL...........: http://www.bigfoot.com/~cyrek/
Uncrackable...: "19.6A.23.38.52.73.45 25.31.1C 3C.53.44.39.58"

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu