動態類型的編程語言:Mochi
Mochi是一個動態類型的編程語言,用于函數式編程和actor風格的編程。
它的解析器采用Python3編寫。這個解析器將一個采用Mochi編寫的程序轉換成Python3的AST / bytecode。
特性
- 類似于Python的語法
- Tail recursion optimization (self tail recursion only), and no loop syntax
- Re-assignment are not allowed in function definition.
- Basic collection type is a persistent data structure. (using Pyrsistent)
- Pattern matching / Data types, like algebraic data types
- Pipeline operator
- Syntax sugar of anonymous function definition
- Actor, like the actor of Erlang(using Eventlet)
- Macro, like the traditional macro of Lisp
- Builtin functions includes functions exported by itertools module, recipes, functools module and operator module </ul>
示例
Factorialdef factorial(n, m): if n == 1: m else: factorial(n - 1, n * m)
factorial(10000, 1)
=> 28462596809170545189064132121198688...
Or
def factorial: n: factorial(n, 1) 0, acc: acc n, acc: factorial(n - 1, acc * n)
factorial(10000)
=> 28462596809170545189064132121198688...</pre>
</strong>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!