Environment Roadmap

Revision as of 14:03, 23 January 2014 by Manus (Talk | contribs) (Refine what we mean by functional progamming)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

A separate page gives the detailed roadmap for implementation of the full ISO/ECMA Eiffel standard.

Roadmap information for EiffelStudio releases:

EiffelStudio long term goals

UI

  • Customizable menus and toolbars
  • Revisit the project settings window
  • Progress bar for degree 6, for C compilation and for automatic precompilation
  • Better wizards
  • Keyboard support for code browsing/activation - Esc to go to context reference in editor, F9 to set a breakpoint, etc.
  • More refactoring
  • Smart compiling (The goal is to not have to press the compile button ever).

Compiler

  • Ability to download libraries/applications from a website directly from EiffelStudio (see Discovering Configuration Files)
  • Add new inheritance clause semantics (rename at the end rather than at the beginning).
  • Experimental new catcall mechanism
  • Catcall checker

Debugger

  • Allow editing of variables in debugger
  • Expand execution replay mechanism; add possibility of changing values then replaying
  • Make sure debugger supports new (ISO/ECMA) mechanisms

Library

  • Resource library

Internal

  • Reduce size of C generated in workbench mode

EiffelStudio 14.05 (May 2014)

Compiler

  • Functional programming mechanisms + other language facilities. Type inference using conformance and the supporting facilities in the EiffelStudio UI.
  • Covariance fix: new mechanism to avoid catcall at compile time.
  • Iron: make it easy for anyone to contribute and share the results of their work to EiffelStudio users.

Framework

  • Improvement to the Eiffel Web Framework

Libraries

  • ABEL, the new high level persistence mechanism for Eiffel.

EiffelStudio 13.11 (November 2013)

Compiler

  • Add support for parenthesis alias
  • Simplify syntax for calling agents

Framework

  • Improvement to the Eiffel Web Framework

EiffelStudio 7.3 (May/June 2013)

UI

  • Better code completion window giving comment+contracts on a selected feature.
  • Improved wizards for void-safety and SCOOP inclusion.

Compiler

  • Targeted expression for improved void-safety convenience.
  • Improved void-safety settings to easy void-safety migration by adding an extra level which is just checking for conformance (no initialization).
  • Type intervals to solve CAT calls.

Debugger

  • Tooltip when hovering on an Eiffel expression so that expressions are evaluated and shown to user in a tooltip.

Library

Internal

  • Better SCOOP performance

EiffelStudio 7.2 (5 February 2013)

General

  • Unicode support for path, command line arguments, environment variable throughout the EiffelStudio environment and libraries

Libraries

  • EiffelBase improvements
  • EiffelStore improvements


EiffelStudio 7.1 (15 May 2012)

Compiler

  • SCOOP: Add garbage collection of unused SCOOP processors.

Libraries

  • EiffelVision 2: Make compatible with SCOOP.

EiffelStudio 7.0 (15 November 2011)

Compiler

  • Void safety: "Design mode" will suppress void-safety errors for unreachable code.

Libraries

  • Library and tool to support creating Microsoft "ribbon" interfaces on Windows based EiffelVision 2 applications.

EiffelStudio 6.8 (15 May 2011)

Compiler

  • SCOOP: Usable implementation of SCOOP model for threads

Debugger

  • Make debugger "attachable" to and "detachable" from running applications

EiffelStudio 6.7 (15 November 2010)

Compiler

  • Concurrency: implementation of the basic SCOOP model for threads
  • Unicode support: accepting UTF-8 Eiffel source file

Ports

  • EiffelVision: Macintosh native support for COCOA

EiffelStudio 6.6 (15 May 2010)

UI

  • Various improvements to the diagram tool

Compiler

  • Initial support for QAT and once per object
  • New check instruction

Libraries

  • Default to the void-safe version of the library

EiffelStudio 6.5 (4th quarter 2009)

This version will not bring major new functionality. We aim at fixing all the inconveniences that people may have experienced with our previous releases.

Compiler

  • Added support for new loop construct to iterate over various containers

EiffelStudio 6.4 (2nd quarter 2009)

This version will not bring major new functionality. We aim at fixing all the inconveniences that people may have experienced with our previous releases.

Library

  • Making all libraries void safe
  • Added new library for internationalization, diff and encoding
  • EiffelNet with IPv6 support

Testing

  • Improved testing facilities

EiffelStudio 6.3 (4th quarter 2008)

Testing

  • Improved testing tool based on the CDD experiment
  • Automatic testing of classes

Compiler

  • Proper semantics of feature replication and non-conforming inheritance.
  • First implementation of void-safety.

EiffelStudio 6.2 (2nd quarter 2008)

UI

  • Contract Editor.
  • More intellisense in the editor (snippet, ...)

Compiler

  • More on attached types and CAPs
  • Exception as object

Documentation

  • Allow reference to external documentation from Eiffel code (external can be: wiki, PDF, Word documents, ...).

EiffelStudio 6.1 (4th quarter 2007)

UI

  • New Errors and Warnings tool

Compiler

  • Attached mechanism
  • Non-conforming inheritance
  • Object test syntax support
  • Report more than one error at a time
  • Added support for MinGW on Windows

Debugger

  • Execution replay
  • Various improvements

EiffelStudio 6.0 (2nd quarter 2007)

UI

  • Improved docking facilities in EiffelStudio to fully control the layout of EiffelStudio
  • Configurable pick-and-drop: user can choose between a contextual menu or pick-and-drop within the EiffelStudio environment
  • Internationalization support
  • Customizable shortcuts

Compiler

  • Warning/error for changed environment variables used in a project configuration file
  • "Hidden" clusters in libraries, clusters that are not accessible if the library is used (like libraries in libraries are not accessible).
  • Clean up "inheritance" rules for project settings (e.g. assertion levels of libraries)
  • Addition of binary and octal notation for manifest integers

Internal

  • Clean up delivery, names of tools, directory layout.
  • Get rid of *.wb files and store this in the user settings.

EiffelStudio 5.7 (4th quarter 2006)

  • This is the first open source version of EiffelStudio. Look at the release notes of 5.7 for more information.