On Mon, Jun 30, 2014 at 7:21 AM, Nick Wellnhofer <[email protected]> wrote:
> I don't see much use in releasing Lucy 0.4 with an opaque version of
> Clownfish. There aren't any major new features in the 0.4 release so Lucy
> users can stick with 0.3 as well. I'm more concerned with not delaying the
> Clownfish release any longer.

It doesn't bother me in the slightest to make a release with no significant
visible features.

In fact, I suggest that we start releasing on a fixed cadence at one-month
intervals as we roll out Clownfish.

> Regarding the four issues you mentioned:
>
>> *   Replace `::` with `.` as a namespacing separator.
>> *   Prevent subclassing of most Clownfish core classes.
>> *   Review names of core classes: VTable -> Class, VArray -> Array.
>
> These should be more or less trivial.

They're all more tricky than they appear at first glance, though.

I figure the first task I'll take up will be be making more Clownfish core
classes final.

> If you think it's important to get this sorted before we release Clownfish,
> then, by all means, take your time. I'd be happy to help with any tasks that
> can be parallelized.

You had voiced support for going from VTable to Class:

    http://s.apache.org/yNW

    By the way, I'm really in favor of renaming Clownfish::VTable to
    Clownfish::Class.

So if you get to that before I do, great.  Otherwise, I understand that I'm
the one blocking and it's my responsibility to make stuff happen.

Possible concerns:

*   Some host languages provide a getClass() method, which we'll want to avoid
    clashing with.  So when we rename Obj#Get_VTable(), we'll need to name it
    something like Get_CFClass().
*   We can't name a struct member `class`[1].  We might go with either
    `cfclass` or `klass` (both of which I'd prefer over `cls` or `clazz`).
*   My personal preference would be to have no `nickname` for Class, rather
    than the unpronounceable `Cls`: Class_Get_Name(), Class_Make_Obj(), etc.

Marvin Humphrey

[1] 
http://stackoverflow.com/questions/12533326/clang-c-compiler-class-keyword-reserved

Reply via email to