Difference between revisions of "Environment Roadmap"
(Updated roadmap) |
(Refine what we mean by functional progamming) |
||
(55 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:EiffelStudio]] | [[Category:EiffelStudio]] | ||
+ | A [[Language_road_map|separate page]] gives the detailed roadmap for implementation of the '''full ISO/ECMA Eiffel standard'''. | ||
+ | |||
Roadmap information for EiffelStudio releases: | 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 [[Configuration_Discovery|Discovering Configuration Files]]) | * Ability to download libraries/applications from a website directly from EiffelStudio (see [[Configuration_Discovery|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=== | ===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 | |
− | + | ||
− | + | ||
− | * | + | |
− | + | ||
− | + | ||
− | ==6.0 ( | + | ===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=== | ||
+ | * <del>Added support for new loop construct to iterate over various containers</del> | ||
+ | |||
+ | ==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=== | ||
+ | * <del>Making all libraries void safe</del> | ||
+ | * <del>Added new library for internationalization, diff and encoding</del> | ||
+ | * <del>EiffelNet with IPv6 support</del> | ||
+ | |||
+ | ===Testing=== | ||
+ | * <del>Improved testing facilities</del> | ||
+ | |||
+ | ==EiffelStudio 6.3 (4th quarter 2008)== | ||
+ | ===Testing=== | ||
+ | * <del>Improved testing tool based on the CDD experiment</del> | ||
+ | * <del>Automatic testing of classes</del> | ||
+ | |||
+ | ===Compiler=== | ||
+ | * <del>Proper semantics of feature replication and non-conforming inheritance.</del> | ||
+ | * <del>First implementation of void-safety.</del> | ||
+ | |||
+ | ==EiffelStudio 6.2 (2nd quarter 2008)== | ||
+ | ===UI=== | ||
+ | * <del>Contract Editor.</del> | ||
+ | * <del>More intellisense in the editor (snippet, ...)</del> | ||
+ | |||
+ | ===Compiler=== | ||
+ | * <del>More on attached types and CAPs</del> | ||
+ | * <del>Exception as object</del> | ||
+ | |||
+ | ===Documentation=== | ||
+ | * <del>Allow reference to external documentation from Eiffel code (external can be: wiki, PDF, Word documents, ...).</del> | ||
+ | |||
+ | ==EiffelStudio 6.1 (4th quarter 2007)== | ||
+ | ===UI=== | ||
+ | * <del>New Errors and Warnings tool</del> | ||
+ | |||
+ | ===Compiler=== | ||
+ | * <del>Attached mechanism</del> | ||
+ | * <del>Non-conforming inheritance</del> | ||
+ | * <del>Object test syntax support</del> | ||
+ | * <del>Report more than one error at a time</del> | ||
+ | * <del>Added support for MinGW on Windows</del> | ||
+ | |||
+ | ===Debugger=== | ||
+ | * <del>Execution replay</del> | ||
+ | * <del>Various improvements</del> | ||
+ | |||
+ | ==EiffelStudio 6.0 (2nd quarter 2007)== | ||
===UI=== | ===UI=== | ||
* <del>Improved docking facilities in EiffelStudio to fully control the layout of EiffelStudio</del> | * <del>Improved docking facilities in EiffelStudio to fully control the layout of EiffelStudio</del> | ||
− | * Configurable pick-and-drop: user can choose between a contextual menu or pick-and-drop within the EiffelStudio environment | + | * <del>Configurable pick-and-drop: user can choose between a contextual menu or pick-and-drop within the EiffelStudio environment</del> |
* <del>Internationalization support</del> | * <del>Internationalization support</del> | ||
− | * | + | * <del>Customizable shortcuts</del> |
===Compiler=== | ===Compiler=== | ||
− | |||
* <del>Warning/error for changed environment variables used in a project configuration file</del> | * <del>Warning/error for changed environment variables used in a project configuration file</del> | ||
* <del>"Hidden" clusters in libraries, clusters that are not accessible if the library is used (like libraries in libraries are not accessible).</del> | * <del>"Hidden" clusters in libraries, clusters that are not accessible if the library is used (like libraries in libraries are not accessible).</del> | ||
Line 34: | Line 185: | ||
===Internal=== | ===Internal=== | ||
− | |||
* <del>Clean up delivery, names of tools, directory layout.</del> | * <del>Clean up delivery, names of tools, directory layout.</del> | ||
* <del>Get rid of *.wb files and store this in the user settings.</del> | * <del>Get rid of *.wb files and store this in the user settings.</del> | ||
− | ==5.7== | + | ==EiffelStudio 5.7 (4th quarter 2006)== |
− | * This is the first open source version of EiffelStudio. Look at the [ | + | * This is the first open source version of EiffelStudio. Look at the [[EiffelStudio_5.7_Releases | release notes of 5.7]] for more information. |
Latest revision as of 13:03, 23 January 2014
A separate page gives the detailed roadmap for implementation of the full ISO/ECMA Eiffel standard.
Roadmap information for EiffelStudio releases:
Contents
- 1 EiffelStudio long term goals
- 2 EiffelStudio 14.05 (May 2014)
- 3 EiffelStudio 13.11 (November 2013)
- 4 EiffelStudio 7.3 (May/June 2013)
- 5 EiffelStudio 7.2 (5 February 2013)
- 6 EiffelStudio 7.1 (15 May 2012)
- 7 EiffelStudio 7.0 (15 November 2011)
- 8 EiffelStudio 6.8 (15 May 2011)
- 9 EiffelStudio 6.7 (15 November 2010)
- 10 EiffelStudio 6.6 (15 May 2010)
- 11 EiffelStudio 6.5 (4th quarter 2009)
- 12 EiffelStudio 6.4 (2nd quarter 2009)
- 13 EiffelStudio 6.3 (4th quarter 2008)
- 14 EiffelStudio 6.2 (2nd quarter 2008)
- 15 EiffelStudio 6.1 (4th quarter 2007)
- 16 EiffelStudio 6.0 (2nd quarter 2007)
- 17 EiffelStudio 5.7 (4th quarter 2006)
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.