Dear Maude Abusers, A new alpha release can be downloaded from http://www.csl.sri.com/~eker/Maude/Alpha63a/ Currently only linux is supported. This fixes numerous bugs is the last alpha release caused by the new treatment of conditions, variables and left->right sharing of common subexpressions. The fact that _only_ Mark-Oliver reported these bugs leads me to suspect that noone else tried the last alpha release. Here is a summary of changes (other than bug fixes) from the last alpha release: (1) Various things are renamed as agreed in previous discussions (see prelude.maude). (2) The leastSort function now takes membership axioms into account (I agreed this change of semantics with Jose yesterday). (3) Instead of returning error* for badly formed arguments, the descent functions first try any user equations, and failing that return an unreduced function call at the kind level; for example: select META-LEVEL . red metaReduce( fmod 'FOO is protecting 'MACHINE-INT . sorts 'Foo . none op 'a : nil -> 'Bar [none] . none none endfm, '_+_['1.MachineInt,'12.NzMachineInt]) . (4) metaParse now takes an extra argument of sort Type? which gives the component to which the result should parse; the constant anyType allows any component - the old behavior. In the case that metaParse fails it now returns noParse(n) if there was no parse where n in the index of the first bad token (counting from 0), or the number of tokens in the case of unexpected end of input; or ambiguity(r1, r2) if there were multiple parses, where r1 and r2 are the result pairs correspond to two distinct parses. Examples: red metaParse( fmod 'FOO is protecting 'MACHINE-INT . sorts 'Foo . none op '1 : nil -> 'Foo [none] . none none endfm, '1 '+ '12, anyType) . *** OK red metaParse( fmod 'FOO is protecting 'MACHINE-INT . sorts 'Foo . none op '1 : nil -> 'Foo [none] . none none endfm, '1 '+ '+ '12, anyType) . *** bad token red metaParse( fmod 'FOO is protecting 'MACHINE-INT . sorts 'Foo . none op '1 : nil -> 'Foo [none] . none none endfm, '1 '+ '2 '+, anyType) . *** unexpected end of input red metaParse( fmod 'FOO is protecting 'MACHINE-INT . sorts 'Foo . none op '1 : nil -> 'Foo [none] . none none endfm, '1, anyType) . *** ambiguity red metaParse( fmod 'FOO is protecting 'MACHINE-INT . sorts 'Foo . none op '1 : nil -> 'Foo [none] . none none endfm, '1, 'Foo) . *** OK red metaParse( fmod 'FOO is protecting 'MACHINE-INT . sorts 'Foo . none op '1 : nil -> 'Foo [none] . none none endfm, '1, '`[MachineInt`]) . *** OK Please try this version and remember to report bugs! Steven