Dear Maude Abusers, A new alpha release can be accessed at SRI-CSL in: ~eker/public_html/Maude/Alpha80b/ or downloaded from: http://www.csl.sri.com/~eker/Maude/Alpha80b/ Alpha release site authentication: User Name: maudeabuser Password: bughunter This version claims to be Maude 2.0 at startup - this is because unless any show stoppers are reported before I leave for Spain it is what we will release at RTA 2003. Bug fixes: =========== (1) A bug where the bug reporting address was not always printed when Maude crashed. This was caused by the line wrapper being in a bad state - it is now bypassed with a system call. Bug reported by Ambarish. (2) The special hook mechanism no longer crashes if there is a missing sort; but bad hooks is still a good way to corrupt memory. Bug reported by Christiano Braga. Changes: ========= The most important change is that this version is released under the GNU GPL - see the source tree for details - so you may redistribute it. The other major change is that the persistent AC/ACU rewriting now supports conditional rewriting for certain patterns - though this is more of a proof of concept than comprehensive implementation. There are several minor changes: op extending_. : ModuleExpression -> Import [ctor] . is added to fmod META-MODULE. For associative and iterated operators (assoc & iter attributes) the operational semantics of mbs/cmbs is tidied up. It is now an error to have both non-kind declaractions and mbs/cmbs for the same associative or iterated operator but non-kind declaractions can be converted to mbs as long as there is a kind declaractions. So instead of fmod ASSOC-MB1 is sort Foo . op f : Foo Foo -> Foo [assoc comm] . op e : -> [Foo] . ops a b c d : -> Foo . mb f(a, e) : Foo . endfm red f(a, b, e) . red f(a, b, e, a) . red f(e, b, e, a) . red f(a, b, e, e, a) . red f(a, a, b, e, e, a) . write fmod ASSOC-MB2 is sort Foo . op f : [Foo] [Foo] -> [Foo] [assoc comm] . op e : -> [Foo] . ops a b c d : -> Foo . mb f(X:Foo, Y:Foo) : Foo . mb f(a, e) : Foo . endfm red f(a, b, e) . red f(a, b, e, a) . red f(e, b, e, a) . red f(a, b, e, e, a) . red f(a, a, b, e, e, a) . and instead of fmod ITER-MB1 is sort Foo . op f : Foo -> Foo [iter] . op e : -> [Foo] . mb f(e) : Foo . endfm red f(e) . red f(f(e)) . red f(f(f(e))) . write fmod ITER-MB2 is sort Foo . op f : [Foo] -> [Foo] [iter] . op e : -> [Foo] . mb f(X:Foo) : Foo . mb f(e) : Foo . endfm red f(e) . red f(f(e)) . red f(f(f(e))) . For this build I have removed the integrated compiler and MOS oracles - though the code is still in the source tree. These features are not officially part of the release and will not be documented in the manual. I have also removed the Full Maude hack from prelude.maude - the 2.0 release of Full Maude should not need it. Steven