我正在寻找具有以下功能的语言:
- SWIG 兼容的或类似的。与 C++ 的兼容性应该很容易:
C, C++, AllegroCL, C# - Mono, C# - MS .NET, CFFI, CHICKEN, CLISP, D, Go , Guile, Java, Lua, MzScheme/Racket, Ocaml, Octave, Perl, PHP, Python, R, Ruby, Tcl/Tk
- 静态类型:没有像 Lua 中的myObject.CompletelyNewFieldWithUnknownSideEffects = GuessWhat() 。没有像 php 中的isinstance() 。没有像 Python 中的newVariableOfUnknownType = foo() 。最好也是强类型( "Hello"+"0" 而不是 "Hello"+0 ):
C、C++、C#、D、Go、Java、Ocaml、PHP、Ruby?其他 ?
- 可以在运行时编译(和 exec("gcc plugin.cpp")! 不算!)成任何 asm/中间语言。
C:libCLang,Ch;C++:中文;任何脚本语言;其他 ?
- 可以(离线或运行时)编译成 x86 .dll/.so 或 .cpp
C:gcc、libClang等;C++;C#; D; Python; 去; OCaml; Lua:LuaJIT;红宝石:可笑
- 最好带调试器:)
TL;博士
我想要一种静态类型的、可嵌入的脚本语言,可以为 perf 编译。
想法?注释 ?任何形式的输入?谢谢 !
编辑到目前为止的有效命题:
- Java:http: //download.oracle.com/javase/6/docs/api/java/lang/Compiler.html
- C#: http: //support.microsoft.com/kb/304655/en-us
- C++,由 Ch 解释,用普通编译器编译,希望与 GCC/VC 兼容
- 球拍: http: //pre.racket-lang.org/docs/html/inside/overview.html#%28part._embedding%29
所以希望比我最初想象的要多得多:)谢谢大家!我会继续调查,并在我对这个主题有更多经验时接受答案。