|
|
|
|
|
by zelphirkalt
1374 days ago
|
|
The article however, does not show anything comparable to lispy metaprogramming. I do not see a single new keyword being defined. I do not see anything changing the order of evaluation. Only to give 2 examples. Recently I implemented a new kind of "define" in a Scheme, which allows for specifying contracts for a function. I don't think such a thing is possible using the tools shown in the article. As such, the things shown in the article are not really that meta, but rather parts of the Python language already. It is not like it is adding anything to Python, which was not there. It is just usage of some concepts Python already has. This is conceptually different from transforming source code to other source code, which then creates a new concept in the language itself. It is not like I can mold Python into whatever I want, but rather stay in the corset of the language facilities. Which of course is not as nice as lispy languages with good macro system, when it gets to creating DSLs and other conveniences. So overall I am not so blown away by the article. |
|