[e-lang] A thought experiment: Minimal-E
Kevin Reid
kpreid at mac.com
Sun Jul 2 19:47:36 EDT 2006
AssignExpr
a := b
def r__1 := b; &a.setValue(r__1); r__1
CallExpr is in Minimal-E.
CatchExpr
try { a } catch b { c }
__Mcatch(fn { a }, fn b { c })
CdrPattern
[a] + b
via (__Mcdr(1)) [a, b]
DefineExpr, EMatcher, EMethod, EScript are in Minimal-E.
EscapeExpr
escape a { b } catch c { d }
__Mescape("a", fn a { b }, fn c { d })
FinalPattern
a
via (__Mfinal) &a
FinallyExpr
try { a } finally { b }
__Mfinally(fn { a }, fn { b })
HideExpr
{ a }
fn { a }()
IfExpr
if (a) { b } else { c }
__Mif({[a, fn { b }]}, fn { c })
IgnorePattern
_
__1
ListPattern is in Minimal-E.
LiteralExpr
1.0
__MlitInt."1.0"()
"abc"
__MlitString.abc()
'a'
__MlitChar.a()
MetaContextExpr, MetaStateExpr are in Minimal-E if they are in Kernel-E.
NounExpr
a
(&a).getValue()
ObjectExpr is in Minimal-E.
SeqExpr
a; b
__Mseq(a, b)
SlotExpr, SlotPattern are in Minimal-E.
VarPattern
var x
via (__MvarSlot) &x
ViaPattern is in Minimal-E.
--
Kevin Reid <http://homepage.mac.com/kpreid/>
More information about the e-lang
mailing list