liberty-eiffel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: The future of Liberty Eiffel


From: Eric Bezault
Subject: Re: The future of Liberty Eiffel
Date: Mon, 29 Nov 2021 21:03:51 +0100
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1

On 29/11/2021 18:49, Laurie Moye wrote:
Would it be possible to declare a policy of strict backward compatibility? The syntax should never be changed for non-essential reasons. If it becomes absolutely essential to change the syntax to allow new features, legacy options should be added to allow the old syntax and disallow the new features so that old code will always be able to run without any changes.

EiffelStudio (and hence Gobo Eiffel which tries to be compatible
with EiffelStudio) is not any better at preserving the syntax
between releases. But it has two solutions at the user's disposal:

1) Classes and clusters are organized into libraries. Each library
   has a configuration file (called ECF file) with compilation
   options for the classes of this library. Thanks to that, a project
   can use a library using an old syntax, another library using
   an even older syntax, and a third library using the new syntax.
   Even the entire project, not just libraries, can use an old syntax.

2) There is a tool to automatically convert classes in such library
   from an old syntax to the new syntax.

Unfortunately there are still some breaking changes that cannot be
handled with ECF files. But ECF files offer more possibilities than
loadpath.se. The configuration files in Gobo used to be Xace files.
They offered less possibilities than ECF files, so I dropped support
for Xace files in favor of ECF files a few years ago and I don't
regret this move. This is probably something which should be considered
as well in Library Eiffel.

--
Eric Bezault
mailto:ericb@gobosoft.com
http://www.gobosoft.com



reply via email to

[Prev in Thread] Current Thread [Next in Thread]