请分享您最喜欢的语言链接,以便学习最好的语言 而且,请用几句话来描述这种语言最重要的特征,它与其他语言如Lua不同。
我无法理解为什么重新发明另一个Lua / Python /等。也许我只是错过了一些东西...... 但我喜欢性能+脚本的想法,所以我必须理解它!
答案 0 :(得分:9)
关于Squirrel语言的最佳(也是几乎唯一)资源是它的官方网站和论坛:http://squirrel-lang.org
与其他发展良好的语言相比,Squirrel仍然处于一个非常小的社区的早期阶段,但在某些方面它在其他现代脚本语言中非常有前景:
受Lua的启发,通常使用表格,Lua堆栈等概念,但使用更清晰的语法和C API。
使用辅助垃圾收集器进行引用计数。运行时的设计鼓励用户删除循环引用,而不是完全依赖于垃圾收集(可以是慢速或非确定性的)。用户甚至可以在禁用垃圾收集器的情况下重新编译运行时。
这是一种使用C / C ++语法的语言。这有点味道,但这是我为什么喜欢Squirrel而不是Lua的主要原因。
内置对类的支持,在Lua中你需要做一些魔术来模拟它。
支持C#like属性,因此您可以为您的类和属性提供元数据。我使用此功能将我的脚本对象公开给.net属性网格。
未定义的变量会导致异常,而不是像Lua一样静默创建一个新的空值。
lambda函数,生成器和协同例程等其他功能都内置于这个小而强大的脚本语言中,该语言仅由~6000行C++
代码构成。
总而言之,Squirrel语言适用于与性能关键应用程序(即游戏引擎)中的低级模块接口,它绝对可以作为更好的Lua。像python这样的语言更倾向于通用,日常方便解决问题的语言。
答案 1 :(得分:2)