A couple of examples out of my tired head (solely from a user perspective) :-)
Embedding domain specific language (ex.: state machine):
stateful Person:
state Calm(initial=True):
def react(event):
self.chill_pill.take()
ignore(event)
state Furious:
def react(event):
self.say("Macros are the evil :)")
react(event) # xD
p = Person()
p.become(Furious)
p.react(42)
---
Embedding domain specific language (ex.: markup language):
# no, i haven't thought about whether the presented syntax as such is
unambiguous
# enough to make sense
def hello_world():
<html>:
<head>:
<title>: "Tralalalala"
<body>:
for g in uiods:
<h1>: uido2str(g)
---
Embedding domain-specific language (ex.: badly-designed database table):
deftable Player:
id: primary_key(integer) # does this feel backward?
handle: string
fans: m2n_assoc(Fan)
---
Control constructs:
forever:
print "tralalala"
unless you.are(LUCKY):
print "awwww"
I'm not sure whether this the Python you want it to become, so in a
certain sense I feel kind of counterproductive now (sublanguage design
is hard at 11 PM, which might actually prove someone's point that the
language designer shouldn't allow people to do such things. I'm sure
other people are more mature or at least less tired than me, though,
so I beg to differ :-),
Michael
On 4/25/05, Guido van Rossum
It seems that what you call macros is really an unlimited preprocessor. I'm even less interested in that topic than in macros, and I haven't seen anything here to change my mind.
-- --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/michael.walter%40gmail.com