[Omake] SVN Commit: OMake Build System [0.9.8.x] (Rev. 10589)

Jason Hickey jyh at cs.caltech.edu
Wed May 2 10:45:17 PDT 2007


Here is the source-to-source translation.  This is for explanatory  
purposes, the implementation is a bit more efficient.

    [[X.Y.f(args)]]
==
    Z = $(X.Y)
    Z. +=
        f(args)
    X.Y = $Z

Where Z is fresh, and the path definition has the usual form.

    [[X.Y = e]]
==
    X. +=
        Y = e

The path definitions are related thing I have to commit.

Jason

On May 2, 2007, at 9:06 AM, Aleksey Nogin wrote:

> On 01.05.2007 20:18, Jason J. Hickey wrote:
>
>> Backported the export hoisting.  This is something that never worked,
>> but should have.
>>    Z. =
>>        x = 1
>>        f() =
>>            x = 2
>>            export
>>    Z.f()
>>    echo $(Z.x)
>>    # Prints "2"
>> This works with arbitrary levels of nesting.
> I am not sure what the semantics of this is meant to be. Are we  
> saying that, at least semantically, the value of $Z is simply a  
> namespace? Also not sure, how any of the object scoping stuff can  
> be expressed via the "export as a continuation" semantics...
>
> Aleksey
> _______________________________________________
> OMake-Devel mailing list
> OMake-Devel at metaprl.org
> https://lists.metaprl.org/mailman/listinfo/omake-devel

--
Jason Hickey                  http://www.cs.caltech.edu/~jyh
Caltech Computer Science      Tel: 626-395-6568 FAX: 626-792-4257





More information about the OMake-Devel mailing list