[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Creating a Lua roadmap
From: |
Phil |
Subject: |
Re: Creating a Lua roadmap |
Date: |
Fri, 22 Apr 2011 14:48:08 -0500 |
On Thu, Apr 21, 2011 at 7:16 AM, Andy Wingo <address@hidden> wrote:
> On Tue 19 Apr 2011 23:11, Phil <address@hidden> writes:
>
>> I have recently checked out the Lua branch. I want to make it seaworthy.
>
> Cool! It does indeed need some more loving :-)
>
>> I've requested to be added back onto the Savannah group, can someone
>> do that? TIA.
>
> Sure; saw your mail before reading this, so please disregard that
> confirmation message.
>
>> git co -b lua origin/lua
>> git co -b stable-2.0 origin/stable-2.0
>> git branch lua
>> git rebase stable-2.0
>>
>> Is that right?
>
> Yes, except perhaps "git checkout lua" instead of "git branch lua", no?
>
>> TODO:
>>
>> - Missing standard library functions: math.modf, table.sort, module
>
> I think Mark's recent division work should help with modf. I don't
> recall what's needed for the rest.
>
>> - Missing getfenv/setfenv. You can tell Lua to look up global
>> variables in different environments.
>> Frankly this is going to be really annoying to implement and I'd
>> rather leave it off until someone complains about it being missing, if
>> that's cool.
>
> OK.
>
>> - Variable arguments, multiple returns.
>
> This is the big one.
>
>> FIXME:
>>
>> - Use prompt and abort instead of throw and catch.
>
> Yes this will be good too.
>
>> - And/or expressions evaluate expressions multiple times.
>
> Whoops!
>
>> - The keyword "break" does not work correctly.
>
> Yes; to fix.
>
>> Andy, I think you wrote "FIXME: use module binders instead" in
>> compile-tree-il.scm, what does that mean?
>
> For global refs, the current code does a lookup every time a function is
> called, where instead it should allow the variable to be cached the
> first time it is looked up. The way to hook into the process of caching
> a variable for lookup is module binders. They aren't documented
> though. Search for "binder" in ice-9/boot-9.scm and in modules.c.
>
> Cheers,
>
> Andy
> --
> http://wingolog.org/
Alright, cool. Just to be clear the end goal is to include this in
Guile eventually, right?