关于面向代理的编程范式的三个标准:支持用于定义代理的心理状态的逻辑系统编程代理的解释编程语言…
是, 贾森 完全解释。它是BDI代理平台。它还支持动态(即时)编程。您可以在运行时添加和组织计划,还可以保存代理心理状态并在整个系统运行时加载新内容。
实际上,编译语言和解释语言之间存在着连续性。编译或解释是该语言的属性 履行 (编程语言是一种 规格 ,那是一个像 R5RS ;它是 不 一个软件)
我强烈建议阅读Quiennec's Lisp In Small Pieces 这本书,详细解释了这一点(另见 这个 )。我也建议阅读斯科特的 编程语言语用学 书。
顺便说一句,明斯基的 心灵社会 书和皮特拉特 人造生命:意识机器的良知 书也应该引起你的兴趣。和 J.Pitrat的博客 也很重要。
许多“编译”语言都有“解释”部分。例如,在C中,大多数 printf 实现是“解释”控制格式字符串(这是在 printf 即使规范允许某种形式的“编译”,C标准库的功能也是如此。 (有时,GCC或Clang可能足够聪明......)
printf
是否有未编译的解释型编程语言?
另请阅读 部分评估 和Futamara预测
研究Common Lisp并查看其内部 SBCL 实现,每次REPL交互编译成机器代码。再看看 LuaJit 。
也要注意 JIT编译 图书馆如 libgccjit , GNU闪电 , asmjit , 要么 LLVM 。