Cmajor Publisher's description
from Seppo Laakko
Cmajor is an experimental programming language.
Cmajor is an experimental programming language strongly influenced by C++ and C#.
It is semantically closer to C++ than C# and syntactically closer to C# than C++. It is a result
of personal study on compiler construction and modern machine architecture.
What's New in This Release:Fixed a number of bugs in front-end:
· where-clauses did not work in classes that belong to other than System namespace.
· The compiler incorrectly reported cyclic class relationships, when there was none
· Now the compiler topological sorts the classes and type checks first classes that do not depend on other classes, and type checking of member functions other than constructors, destructor and assignment operators are deferred after the class is otherwise type checked. Hopefully this solves dependency problems.
· When a class had a static member function returning an instance of the same class, the parser incorrectly interpreted it as static constructor.
· Type of '*this' was not a reference.
· Overload resolution logic improved.
· Support for libraries improved.
· Fixed empty branch target error when constructing a temporary.
· Fixed empty branch target error in disjunction expressions (||).
· Constructor function epilog were wrong.
· Pointer member access operator (->) pointing to member variable did not generate right code.
· Member access (.) could not be chained: a.b worked, but a.b.c did not.
· switch statement did not accept char type expressions and case statements char constants.
· Expression was not accepted as a value of an enumeration constant.
· BitSet added to System Library.
Now the System library is reorganized into seven namespaces:
· Support for solution files (.cms) added.
· Now -b builds only changed projects, -R forces a rebuild.
· Added conversion member functions (e.g. operator int()).
System Requirements:No special requirements.
Program Release Status: New Release
Program Install Support: Install and Uninstall