The Lobster Programming Language
a year ago
- #programming
- #game-development
- #open-source
- Lobster是一种通用编程语言,专注于游戏开发和图形应用程序。
- 它结合了静态类型和编译时内存管理,具有轻量级、简洁的语法。
- 特性包括流程敏感的类型推断、编译时引用计数和轻量级代码块。
- 支持向量运算、统一重载、不可变结构体,以及无GIL的内存模型以实现多线程。
- 语法采用Python风格的缩进方式,并带有C语言的风味。
- 实现选项包括用于直接执行的JIT或编译为C++以提高速度。
- 引用计数结合循环检测和生命周期分析,最小化开销。
- 包含图形调试器、动态代码加载功能,性能优于Python和Lua。
- 可跨平台运行于Windows、Linux、Mac OS X、iOS、Android和WebAssembly。
- 提供高级OpenGL接口、3D图元、GLSL着色器、FreeType文本渲染和统一输入系统。
- 附带A*寻路算法和游戏GUI库。
- 示例代码展示了简洁语法、代码块、类型推断和动态派发。
- 支持带继承的自定义数据类型、不可变结构体和向量运算。
- 图形示例展示使用OpenGL递归渲染谢尔宾斯基三角形。
- 采用Apache v2开源协议,文档和社区资源位于GitHub、Discord、Gitter和Facebook。