Hello,

There are a couple of syntax features which I did not demonstrate but I'd like 
to mention them here.

In this word:

        : elt ( :array :integer -- :object ) swap nth ;

The inputs and outputs are unnamed. You can name them for documentation 
purposes:

        : elt ( a:array i:integer -- obj:object ) swap nth ;

But even if you don't name them, they'll have the names "array", "integer", 
etc in the documentation. So in help articles you can refer to "the array" 
or "the integer".

This raises the question of multiple signature elements with the same type:

        : append ( :array :array -- :array ) ... ;

In the help, the names will be autogenerated: array-a, array-b, array-c. So in 
help articles you can refer to "array-a", etc.

On the other hand, you can name a signature element without specifying a 
class:

        : suffix ( :sequence obj -- :sequence ) ... ;

When you don't specify a class, a class of 'object' is implied.

As is sadly typical, there will probably be many aesthetic complaints and no 
technical suggestions. This syntax design is the best I've come across so 
far. I'd love to be surprised by an even better design.

Ed

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to