Macros 在Boo中定义运算符

Macros 在Boo中定义运算符,macros,metaprogramming,boo,nemerle,Macros,Metaprogramming,Boo,Nemerle,我希望将我的一些较轻的元编程从Nemerle迁移到Boo,并试图找出如何定义自定义运算符。例如,我可以在Nemerle中执行以下操作: macro @<-(func, v) { <[ $func($v) ]> } 那么这两者是等价的: foo <- 5; foo(5); 我在Boo中找不到这样做的方法-有什么想法吗?我不确定这是否正是您需要的,但您可以在Boo中创建语法宏。CodeHaus站点上有一些信息,但在最近的一个版本中,语法发生了变化。我不知道有任何关

我希望将我的一些较轻的元编程从Nemerle迁移到Boo,并试图找出如何定义自定义运算符。例如,我可以在Nemerle中执行以下操作:

macro @<-(func, v) {
    <[ $func($v) ]>
}
那么这两者是等价的:

foo <- 5;
foo(5);

我在Boo中找不到这样做的方法-有什么想法吗?

我不确定这是否正是您需要的,但您可以在Boo中创建语法宏。CodeHaus站点上有一些信息,但在最近的一个版本中,语法发生了变化。我不知道有任何关于新语法的教程,但是Boo 0.8.2的源代码版本中有一些示例,其中一些语言结构是作为宏实现的。如果您不想下载完整的源代码,可以查看SVN存储库。assert宏将是一个很好的起点


Stoo

我不确定这是否正是您所需要的,但您可以在Boo中创建语法宏。CodeHaus站点上有一些信息,但在最近的一个版本中,语法发生了变化。我不知道有任何关于新语法的教程,但是Boo 0.8.2的源代码版本中有一些示例,其中一些语言结构是作为宏实现的。如果您不想下载完整的源代码,可以查看SVN存储库。assert宏将是一个很好的起点


Stoo

虽然Boo通过定义适当的静态运算符函数op_addition支持运算符重载,并且还支持语法宏,但此时它不支持创建自定义运算符。

而Boo通过定义适当的静态运算符函数op_addition支持运算符重载,而且还支持语法宏,目前不支持创建自定义运算符。

但是请注意,允许此功能的唯一缺失的可扩展语法是目前正在开发的Boo功能,因此应该很快就可以使用。我的意思是,最终。但是请注意,允许此功能的唯一缺失的可扩展语法是目前正在开发的Boo功能,因此它应该很快就可以使用。我是说,最终。