Changes between Version 24 and Version 25 of Sysel


Ignore:
Timestamp:
2010-05-20T19:46:58Z (14 years ago)
Author:
Jiri Svoboda
Comment:

Add synopses for misc ideas

Legend:

Unmodified
Added
Removed
Modified
  • Sysel

    v24 v25  
    167167=== Miscellaneous ideas ===
    168168
    169 These ideas are considered for inclusion, need elaborating:
     169These ideas are considered for inclusion (but need not be included). They need elaborating.
    170170
    171  * Member pointers
    172  * True inner classes
    173  * Output function arguments
    174  * Built-in associative arrays
     171==== Member pointers ====
     172
     173Delegates identify the object instance and method to be called (but not the arguments). Conversely, member pointers identify the method to be called, but not the arguments and not the object instance (It can be invoked on any object which is instace of a given class). This feature comes from C++.
     174
     175==== True inner classes ====
     176
     177A true inner class is non-static in the sense that any instance of this class implicitly contains a reference to some instance of the outer class. Thus the inner class is constructed in non-static context (in context of an object instance) and the outer object can be referenced via a keyword.
     178
     179==== Output function arguments ====
     180
     181Semantically equivalent to additional return values of a function. A simple way to return multiple values (especially since Sysel does not have tuples).
     182
     183==== Built-in associative arrays ====
     184
     185Maps and sets are so commonly used and so immensely useful that it might be worth incorporating into the langauge core. This could bring greater ease of use and optimization opportunities.