Discussion:
Moto 0.20.0 Release
David Hakim
2003-07-18 03:39:57 UTC
Permalink
Moto 0.20.0 has been released and can be downloaded from
http://www.projectmoto.org/download.moto. This release adds support for
Operator Overloading in Moto! Overloaded operators may be declared in
moto extensions and used inside Moto programs allowing programmers to
write more compact, readable, and most importantly fun code! Perl
programmers may now comfortably write foo["bar"] = "baz", while C++
purists enjoy the pleasure of intersecting sets with the * operator.

Instead of this:

Object o = stab.get("foo");
vector.put(27,"foo");

You can now write this:

Object o = stab["foo"];
vector[27] = "foo";

This release was developed almost entirely by Stefano Corsi! Be sure to
send your thanks and rave reviews to him personally on the moto mailing
lists!

To demonstrate this new feature many newly overloaded operators are
included in the codex util extension.

Function lookup performance has also been dramatically improved leading
to better performance in interpreted mode.

Here are the full release notes :

New Features
Added support for extension authors to overload operators in moto
(Stefano!)
Added set operation functions (and operators) to StringSet and IntSet
Added overloaded operators (+ += ++ - -= -- eq ne lt lte gt gte [])
Added [] and + operators for class String (in place for code in
motoX.c)
Added [] operator for class Vector
Added [] operator for class SymbolTable
Added ++ operator for class Enumeration
NEWS and ChangeLog file updated

Bugs Fixed
Fixed a bug that would cause a parse error when someone tried to
instantiate an empty array in-line
Improved performance of interpreter with new version of
moto_createMotonameForFn
Calling macros that call macros with arguments of the same name will
no longer cause an infinite loop in motopp
Fixed a bug in the codex.http extension that caused length to be used
for text fields to specify the max length attribute (as opposed to the
value passed for maxlength)
Fixed a bug that caused compilation of motoc pages can fail in a
variety of ways due to the use of buf_printf when generating code that
ammounted to more than 4096 characters in one statement

Loading...