关于脚本语言的同质化、代码互译,以及运行时共享的一些想法
ref: program-in-chinese/overview#75
语法设计
注:这里的语法是过渡阶段的专用语法,又称过渡PL(GDPL)。
主要参照: Mathematica,K,TypeScript,erlang,Rust
- Symbolic[main: Mathematica/WolframAlpha 80% - APL/J/K/Kdb+/Q 20%
- C-like: Julia+Python3.5 40% - Haxe/TypeScript 60%
- Symbolic/Logic/FP: prolog/erlang/Elixir 70% - Rust 30%
- Java-style: .Net Core/C# 35% - JVM/Kotlin 35% - Else25%:Perl6/正则 15%,Forth 10%
平台规范:
备注:只有Python和erlang需要考虑支持Windows XP[NT5.2],Node/Rust/.Net不需要考虑兼容。
调度机制
注:这里的运行时不是S6RT最终运行时,也是过渡阶段的衍生物。
简称平面运行时(PRT=pale/plain runtimte)
Core:[Python Erlang .Net Core ]+Relay:[Rust Node JVM] - call-> s6rt
<-> Base[ J{Kdb+/q}, Rust, TypeScript/Node, erlang/BEAM, .Net Core, JVM/Kotlin ]
+Ext[Perl Lua Julia PHP C++/Qt Forth]
语法设计
注:这里的语法是过渡阶段的专用语法,又称过渡PL(GDPL)。
主要参照: Mathematica,K,TypeScript,erlang,Rust
平台规范:
备注:只有Python和erlang需要考虑支持Windows XP[NT5.2],Node/Rust/.Net不需要考虑兼容。
调度机制
注:这里的运行时不是S6RT最终运行时,也是过渡阶段的衍生物。
简称平面运行时(PRT=pale/plain runtimte)
Core:[Python Erlang .Net Core ]+Relay:[Rust Node JVM] - call-> s6rt
<-> Base[ J{Kdb+/q}, Rust, TypeScript/Node, erlang/BEAM, .Net Core, JVM/Kotlin ]
+Ext[Perl Lua Julia PHP C++/Qt Forth]