2008-10-11 7 views
1

가벼운 Metaprogramming을 Nemerle에서 Boo로 옮기고 싶습니다. 사용자 정의 연산자를 정의하는 방법을 찾으려고합니다.Boo에서 연산자 정의하기

macro @<-(func, v) { 
    <[ $func($v) ]> 
} 

그런 다음이 두 동일합니다 : - 어떤 아이디어

foo <- 5; 
foo(5); 

내가 우우에서이 일을하는 방법을 찾을 수 없습니다 예를 들어, 내가 Nemerle에서 다음을 수행 할 수 있습니까?

답변

5

어흥 적절한 정적 연산자 기능 (op_addition)를 정의하여 연산자 오버로딩을 지원하며 통사 매크로를 지원하지만,이 때 사용자 사업자 생성을 지원하지 않는다.

+0

그러나 "확장 가능 구문"(이 기능을 허용하는 유일한 누락 부분)은 현재 개발중인 Boo 기능이므로 곧 제공 될 예정입니다. 내 말은 결국. – Avish

0

정확히 필요한지 확실하지 않지만 Boo에서 구문 매크로를 만들 수 있습니다. CodeHaus 사이트에 대한 정보는 http://boo.codehaus.org/Syntactic+Macros이지만 최근 릴리스 중 하나에서 구문이 변경되었습니다. 새로운 구문에 대한 자습서는 모르지만 Boo 0.8.2의 소스 릴리스에는 몇 가지 예가 있습니다 (일부 언어 구조는 매크로로 구현 됨). 전체 소스를 다운로드하지 않으려는 경우 SVN 저장소 뷰를 사용할 수 있습니다 (https://svn.codehaus.org/boo/boo/trunk/src/Boo.Lang.Extensions/Macros/). assert 매크로는 시작하기에 좋은 곳입니다.

HTH

Stoo