forked from LibertyEiffel/Liberty
-
Notifications
You must be signed in to change notification settings - Fork 0
Liberty language specification
cadrian edited this page Feb 16, 2013
·
5 revisions
Liberty is an heir of SmartEiffel. Its syntax is (or rather, will be) a superset of SmartEiffel’s with the following additions:
- require then
- generic creation
(Paolo 2009-09-16) Is it perhaps something like
“class FOO[X] ….. feature process is local x: X do create x end ….”?
TODO: provide examples and rationale behind it, pro and cons.
- generic inheritance
(Paolo 2009-09-16) > AFAIK this is “class FOO[X] inherit X”.
TODO: provide examples and rationale behind it, pro and cons.
- type conversion
- non-Void
- inline agents are real closures
- simplified (but sound) SCOOP
The syntax of the language is defined in EIFFEL_GRAMMAR. Its textual representation will use the YEPP syntax1.
- Features
- Inheritance: conforming or not
- Clients and exports
- Creating objects
- Comparing and Duplicating objects
- Attaching values to entities
1 YEPP is currently available from the Enterprise SmartEiffel but will be included in Liberty.