Lisp 家族迎来新成员,函数式语言 Lux 是什么?

简介:

代码世界即将加入一门新成员:Lux。你没看错,它不是洗发水,而是古老的 Lisp 家族中新诞生的函数式语言。

目前 Lux 还在研发之中,最新版本是 0.5.0。它可被用来编写一系列在 JVM (Java 虚拟机)上运行的程序。但它的语义并不是与 JVM 绑定的,因此,Lux 应该被理解为是一门通用语言,被设计用来尽可能多平台地进行程序表示。但同时,它要能够深入每一个特定平台,实现后者的丰富功能。

 

Lisp 家族迎来新成员,函数式语言 Lux 是什么?

 

作为新语言,它有何特别之处?

Lux 是纯粹的函数式编程语言,它采用了严格计算(eager-evaluation)而非惰性计算,来提高逻辑简洁性,而适当牺牲性能和程序行为。这门语言受到 Haskell、Clojure 和 ML 的启发。其中,Clojure,这门同样基于 Lisp、面向 JVM 的主流语言,是 Lux 的首要启发来源。但和 Clojure 不同的是,Lux 采用了静态类型(statically typed)以提高性能并减少漏洞。

 

Lisp 家族迎来新成员,函数式语言 Lux 是什么?

 

Lux 允许开发者通过编程创造新类型,这会提供动态类型语言(dynamically typed )所具有的灵活性。函数式语言 Haskell 有类型类(type classes),而雷锋网(公众号:雷锋网)获知, Lux 的约束性不会这么强——想要绕过任何约束可在语言中原生实现,而不需要黑入类型系统。

Lisp 开发于 1958 年,是最早的用于人工智能的编程语言。现在用的人虽然少了,但多门基于 Lisp 的变种、或者说子孙语言,仍然占有重要地位。这些基于 Lisp 的语言,使得开发者进行元编程(metaprogramming)成为了可能——改变语言本身的行为,或者编写能写代码的代码。Lux 通过与 Lisp 类似的宏(macros)来实现这一点,但这同时把 Lux 的编译器暴露为语言中的一件物体。通过这种方式,Lux 可以定制能被用户重写的模型匹配系统( pattern-matching systems )。

 

Lisp 家族迎来新成员,函数式语言 Lux 是什么?

 

雷锋网获知,尽管提供了与 Java 的交互操作,Lux 会专注于函数式编程。

Lux 的开发者团队表示:

Lux 既简洁又复杂。它的设计允许你只用一个小的子集,就能创建出高效的程序。但 Lux 的目标是为我们提供有一系列强大工具的武器库,来满足开发者在各类项目中的不同需求。

他们还表示,虽然函数式语言是学界人士做研究的最爱,但 Lux 为软件开发人员的日常工作而设计。

对 Lux 感兴趣的程序猿们,可通过 GitBooks 获得它的详细介绍。顺便提醒一下,这有一本书那么厚。


本文转自d1net(转载)

相关文章
|
1月前
|
算法 程序员 编译器
C++与C语言的差异:编程语言之间的奥秘探索
C++与C语言的差异:编程语言之间的奥秘探索
50 0
|
1月前
|
存储 编译器 程序员
汽车电子行业的 C 语言编程标准
汽车电子行业的 C 语言编程标准
56 0
汽车电子行业的 C 语言编程标准
|
5月前
|
算法 程序员 API
C 语言和 C++ 有什么区别?老程序员居然这样理解,不怕你不懂
C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)
53 0
|
2月前
|
开发者 Python
Python中的元编程:扩展语言的力量
【2月更文挑战第5天】本文将探讨Python中的元编程,介绍了元编程的概念和意义,并详细讨论了Python中常用的元编程技术,如装饰器、元类和动态类型。通过元编程,我们可以在不改变语言核心的情况下,扩展Python的功能和灵活性,为开发者提供更强大的工具和框架。
|
Rust 安全 JavaScript
Rust通用编程概念
Rust通用编程概念
|
Swift
swift语言之函数的基本构架
swift语言之函数的基本构架
107 0
swift语言之函数的基本构架
|
存储 SQL JavaScript
他们发明了一门编程语言,名字叫:摇滚明星 Rockstar
  Rockstar 是一门图灵完备的动态编程语言。设计这门语言的目的是能够像写歌词一样开发计算机程序。它的歌词风格主要受 20 世纪 80 年代重摇滚和电力民谣的影响。   为什么会有 Rockstar?   如果我们让 Rockstar 成为一门真正的(虽然毫无意义)编程语言,招聘人员就不会在招聘时对“摇滚开发者”颇有微词。   另外,它很有趣,一门基于歌词编译的编程语言很值得我们一试。   我们还可以用它做贴纸,谁不想在自己的笔记本电脑上贴上“认证 Rockstar 开发者”这样的贴纸呢?   Rockstar 语言规范   注释   我们不建议在 Rockstar 程序中
354 0
|
SQL 前端开发 JavaScript
2021最受欢迎的编程语言排行:苹果编程语言Objective-C被Swift取代
苹果公司的Objective-C最终退出了Tiobe跟踪的流行编程语言的前20名,但是「恐龙」语言却获得了意想不到的推动,Swift语言取代Objective-C的时代要来了。
286 0
2021最受欢迎的编程语言排行:苹果编程语言Objective-C被Swift取代
|
JavaScript 前端开发 Java
D 语言之父谈 D 语言的诞生
将Walter Bright带往写一门语言、现在排在前20名的道路是从好奇开始的——也有侮辱。
303 0
D 语言之父谈 D 语言的诞生
|
NoSQL Java Scala
Swift和Scala语法上的诸多相似之处
国外开发者最近发现,WWDC2014上苹果发布的新语言Swift,和古老的Scala语言在语法上存在众多的相似之处。
197 0
Swift和Scala语法上的诸多相似之处