【Hacker News搬运】Racket语言
-
Title: Racket Language
Racket语言
Text:
Url: https://racket-lang.org/
Racket 是一个编程语言,它以语言为中心,旨在提供成熟的、实用的、可扩展的、健壮的且经过精心打磨的编程体验。Racket 的特点包括: 1. **语言导向**:Racket 是一种语言导向的编程语言,它允许开发者通过简单的规则来定义新的语法构造,这些构造可以被编译成普通的 Racket 表达式或定义。 2. **宏系统**:Racket 提供了强大的宏系统,允许程序员添加新的语法构造,类似于其他语言中的过程、方法或类。宏系统特别有助于实现代码重用和干燥(DRY)原则。 3. **跨平台 GUI 工具箱**:Racket 提供了跨平台的 GUI 工具箱,以及一个 web 服务器,还有更多的库可以通过简单的命令安装。 4. **大量的包**:Racket 社区提供了数千个额外的包,这些包可以通过一条命令轻松安装,涵盖了从 3D 图形到科学模拟的各种功能。 5. **大宏**:Racket 的大宏系统允许开发者轻松创建协同工作的宏集合,以实现代数模式匹配、事件处理或逻辑约束求解等功能。 6. **DSL 支持**:Racket 允许开发者轻松创建领域特定的语言(DSL),以便用最适合的语言编写每个模块。 7. **IDE 支持**:Racket 附带了自己的 IDE,DrRacket,它具有独特 features,例如,当鼠标悬停在标识符上时,IDE 会显示指向定义的箭头。 8. **任意语法**:Racket 程序员通常喜欢括号,但它也支持那些需要逗号和花括号的语法。因此,构建具有传统表面语法的语言,如 datalog,几乎和构建括号语言一样容易。 9. **生态系统**:Racket 有一个充满活力的生态系统,包括教育、软件、教程、文档、社区和书籍等组成部分。 Racket 的官方文档和网站提供了关于如何开始使用 Racket 的详细信息,以及如何贡献代码和包。此外,Racket 还提供了一些教育项目,如 Racket 夏季学校、Program by Design(原名 TeachScheme!)和 Bootstrap,这些项目旨在将 Racket 编程语言的理念推广给不同年龄段的教育工作者和学生。
Post by: swatson741
Comments: