On 2012-12-04 22:59, Namespace wrote:
Last pull today. Romulus is ready to use/test. A website and
documentation coming soon and then I need some help to write it in
english. But first I hope that some of you could test it.

Here a brief overview:
  - not null references. Syntax: Object& obj
  - final variables. mutable access, but not rebindable. Syntax: final
Object obj
  - readonly variables, even called "lazy const". constant variable, not
rebindable but value must not assign by declaration. Syntax: readonly
int i;
  - Elvis operator. Short ternary operator.
Syntax:
Object o;
// ...
o = o ?: new Object();

  - Not null safe invocation. Syntax: a?.b?.c will be converted to:
if (a && a.b) a.b.c. (works only with identifiers).

- Scoped arrays. scoped and static/stack array with the ability, that
their size could be a runtime value. You can resize them, but if you do
and if the capacity is fully used, it is reallocated on the heap. After
leaving scope the memory is automatically destroyed, even if you have
reallocated memory on the heap.
Syntax:
scope byte[4] arr1;
int i = 4;
scope byte[i] arr2;

Looks good.

--
/Jacob Carlborg

Reply via email to