EiffelStudio Wish List

Revision as of 17:49, 17 November 2006 by Misterieking (Talk | contribs) (General)

Welcome to the Eiffel/EiffelStudio Wish List. This is the place where you, the community, get a chance to tell us what you think is important to include in the future versions of the Eiffel compiler and EiffelStudio IDE.

Please use this list responsibly and try to correctly categorize your wishes. A brief description may help us evaluate your requirements but please be brief.

Our stock pile of genie snared, dusty gold lamps is running low for our next release (EiffelStudio Releases) but we'll be sure to scour the lands for more.

Compiler

General

  • A way to author Enum-like class for typed options or flags. Currently using INTEGER and a bag of analogous constants doesn't make Eiffel "elegant".
  • Addition of a decimal type / REAL_128 for 28 digit precision
  • CHARACTER_16 type
  • 7-bit (US) ASCII_CHARACTER and ASCII_STRING which extends upon an ARRAY [ASCII_CHARACTER] with values of 0-127, removing the need for UTF8 conversion/checking when passing basic char values to C (gtk interfacing for example when connecting to signals)
  • Make MUTEX recursive on non-windows platforms or at least provide a mutex and separate recursive mutex for all platforms.

.NET

  • Consume .NET generics. Not being able to use them is becoming harder.
    We cannot write Atlas (AJAX) based web applications because of it. The Visual Studio SDK, used by EiffelEnvision, is increasing it's use of generics and preventing use from supporting some features. The people who want to use the .NET framework classes instead of the Eiffel ones cannot use generics and have to resort to using the non-generic versions of list, which bulks implementation and leads ambiguity.
  • Emit .NET generics types for Eiffel generic classes.
  • Allow direct access to member of TYPED_POINTER [xxx] item out/ref routine arguments.
  • Allow direct setting of TYPED_POINTER [xxx] item for out/ref routine arguments.
  • Optimized call.do_nothing as a IL pop instruction to removed returned value.

IDE

  • Give the user control over which classes will be compiled over the GUI (say: click on grey class and it becomes yellow and will be compiled always from now on, even though it may not be used at all. This is good for development of classes which are not added over GUI in ES.)
  • While searching or after a double click on a word it would be nice if all words would be highlighted in pastel color style.

Other

  • Provide a WEAK_REFERENCE [G] class to abstract away the implementation details currently provided by IDENTIFIED for implementing weak references.