2024-05-23 22:05:39 发布
网友
如果Python有一个类似Lisp/Scheme的宏工具(类似于MetaPython),您将如何使用它?
如果您是一个Lisp/Scheme程序员,您使用宏的目的是什么(除了在Python中有清晰的语法并行的东西,比如while循环)?
这是一个有点晚的答案,但是MacroPy是我的一个新项目,将宏引入Python。我们有一个相当详细的演示列表,所有这些都是需要宏来实现的用例,例如提供了一种非常简洁的声明类的方法:
@case class Point(x, y) p = Point(1, 2) print p.x # 1 print p # Point(1, 2)
MacroPy已用于实现以下功能:
请查看链接页面以了解更多信息;我想我可以自信地说,我们演示的用例远远超过了迄今为止任何人在此线程上建议的任何用例=D
我相信宏与Python的文化背道而驰。Lisp中的宏允许big ball of mud方法;您可以重新定义语言,使其更适合您的问题域。相反,Pythonic代码使用Python最自然的内置特性来解决问题,而不是用另一种语言更自然的方式来解决问题。
宏本质上是不连音的。
lisp宏的一些示例:
这是一个有点晚的答案,但是MacroPy是我的一个新项目,将宏引入Python。我们有一个相当详细的演示列表,所有这些都是需要宏来实现的用例,例如提供了一种非常简洁的声明类的方法:
MacroPy已用于实现以下功能:
请查看链接页面以了解更多信息;我想我可以自信地说,我们演示的用例远远超过了迄今为止任何人在此线程上建议的任何用例=D
我相信宏与Python的文化背道而驰。Lisp中的宏允许big ball of mud方法;您可以重新定义语言,使其更适合您的问题域。相反,Pythonic代码使用Python最自然的内置特性来解决问题,而不是用另一种语言更自然的方式来解决问题。
宏本质上是不连音的。
lisp宏的一些示例:
相关问题 更多 >
编程相关推荐