Limitations
Fuzion Front End
- Limited data flow analysis only, in particular:
- No check for uninitialized variables
- No proper name space handling, i.e.,
- features are visible in all of their outer feature. even if defined in a nested inner scope.
- Several local vars with equal names in different scopes of the same outer feature will cause errors
- Limitations on repeated inheritance, in particular
- no checks that repeatedly inherited features are compatible with respect to their generic parameters
- no checks that conflicts in inheritance are detected and resolved
- no means to keep several instances of repeatedly inherited features (e.g., via Eiffel-style renaming)
- No support to call the original feature from a redefinition (Java's super.f() or Eiffel's repeated inheritance with renaming)
- No support for feature invariants, loop variants and invariants.
- No support for pre- and postconditions of redefined features.
- No support for singleton / once features, need to decide if they are needed and if so, what semantics should they have?
- Support for threads is being worked on.
Fuzion Tool Chain
- fume Fuzion Middle end does not exist yet
- fuom Fuzion Optimizer does not exist yet
Fuzion Back Ends
- C Backend (emits C Code)
- JVM Backend (emits Java bytecode)
- Interpreter (runs on top of the JVM)
Fuzion Standard Library
- Is being worked on.