当前位置:  开发笔记 > 编程语言 > 正文

最有趣的非主流语言?

如何解决《最有趣的非主流语言?》经验,为你挑选了13个好方法。

我对编译器,口译员和语言感兴趣.

你知道的最有趣但却被遗忘或未知的语言是什么?更重要的是,为什么?

我对编译,解释和VM语言感兴趣,但不是像Whitespace或BF这样的深奥语言.
当然,开源是一个优势,因为我打算学习并希望从中学习.



1> Robert Gould..:

我喜欢编译器和虚拟机,我喜欢Lua.

Lua并没有像许多其他脚本语言那样受到支持,但是从像你这样的心态我相信你也会爱上Lua.我的意思是它就像lisp,(据我所知,可以做任何事情),有很多来自ADA的主要功能,还有内置的元编程,功能编程和面向对象编程足够松散,可以制作任何类型您可能想要的域语言.除了VM的代码是简单的C,这意味着你可以轻松地挖掘它甚至在那个级别上欣赏.

(它是开源麻省理工学院许可证)


Lua并不完全符合lisp宏.
当然,那是lua的老帽子.它最初是为了这个特定目的而设计的,后来它成为了一种真正的语言.(是巴西石化公司的数据语言).但是现在它也可以用作以Json/Lisp方式存储数据的好方法.

2> James Fasset..:

我是D编程语言的粉丝.这是维基百科文章,并从官方网站介绍.

来自维基百科文章的一些片段:

D编程语言,也简称为D,是Walter Bright of Digital Mars的面向对象,命令式,多范式系统编程语言.它起源于C++的重新设计,但即使它主要受该语言的影响,它也不是C++的变体.D重新设计了一些C++特性,并受到其他编程语言中使用的概念的影响,例如Java,C#和Eiffel.稳定版本1.0于2007年1月2日发布.实验版本2.0于2007年6月17日发布.

关于功能:

D的设计是从实际的C++用法中汲取的教训,而不是从理论的角度.即使它使用了许多C/C++概念,它也会丢弃一些,因此并不严格向后兼容C/C++源代码.它通过合同,单元测试,真实模块,垃圾收集,第一类数组,关联数组,动态数组,数组切片,嵌套函数,内部类,闭包[2],匿名函数,实现设计,增加了C++的功能.编译时间函数执行,延迟评估并具有重新设计的模板语法.D保留了C++进行低级编码的能力,并增加了对集成内联汇编程序的支持.C++多重继承被具有接口和mixin的Java样式单继承所取代.D的声明,



3> kaybenleroll..:

我想很大程度上取决于你对'非主流'的意思.

lisp会被视为非主流吗?


它可能不会被遗忘,但我认为它是大多数程序员都会听说过的语言之一,但几乎一无所知.

4> Toby Hede..:

我建议看一下Erlang - 它最近得到了一些新闻,所以一些学习资源非常好.如果您使用过OO和/或程序语言,Erlang肯定会以新的和令人兴奋的方式改变您的想法.

Erlang是一种纯函数式语言,具有对并发,分布式和容错程序的全面支持.它有许多有趣的功能,包括变量根本不是真正的变量 - 它们一旦声明就不能改变,事实上它们更好地被理解为一种模式.

关于在Erlang平台(OTP)之上构建以及对其他语言(如Ruby)的机器支持,围绕博客圈进行了一些讨论 - 然后Erlang将成为运行并发应用程序的一种虚拟机,这将是一个非常令人兴奋的可能性.



5> pookleblinky..:

我最近爱上了Ocaml和一般的函数式语言.

例如,Ocaml提供了所有可能世界中最好的.您可以像C一样快速地编译可执行本机机器语言的代码,或者通用的可移植字节代码.你得到一个解释器,将REPL-speed带入开发阶段.您将获得函数式编程的所有功能,以生成完美的正交结构,深度递归和真正的多态性.所有这些都支持面向对象,它在已经提供OOP承诺(封装,模块化,正交函数和多态可回收性)的功能语言的上下文中,意味着被迫实际证明自己的OOP.



6> ConcernedOfT..:

Smalltalk (参见此处的讨论).动态语言的祖父(可能除了Lisp和SNOBOL之外)的排序.很高兴与Java一起工作并且被Java踩踏,现在是Python和Ruby等新语言.


不同意 - Smalltalk是鸭子类型(您甚至可以覆盖#notImplemented以满足错过的方法调用的行为).Ruby非常源自Smalltalk,我也不认为Python具有更强的动态性.

7> Jim C..:

FORTH是一种专为早期CPU的低级代码而设计的语言.其最显着的特征是基于RPN堆栈的数学运算.早期HP计算器使用的数学类型相同.例如,1 + 2 + 3 + 4 =将被写为1,2,3,4,+,+,+


正确的FORTH是1 2 + 3 + 4 +

8> Gregory Higl..:

Haskell和REBOL都是引人入胜的语言,原因各不相同.

Haskell可以真正打开你的眼睛作为开发人员,具有monad,部分应用,模式匹配,代数类型等概念.这对于好奇的程序员来说是一个大杂烩.

REBOL也不吝啬.一开始看起来很简单,但是当你开始深入研究上下文,PARSE方言和Bindology等概念时,你会发现它远不止眼睛.REBOL的优点在于它比使用Haskell更容易上手.

我不能决定哪个更好.



9> Inisheer..:

Boo以.NET框架为目标,是开源的.灵感来自Python.



10> akalenuk..:

尝试colorForth.



11> Peter Miehle..:

PROLOG是一种基于规则的语言,具有回溯功能.您可以生成非常易读的(如prosa)代码.



12> ejgottl..:

我发现约束语言很有趣,但很难知道什么是遗忘或未知.以下是我所知道的一些语言(这当然不是任何类型的详尽列表):

Ciao,YAP,SWI-Prolog和GNU Prolog都是Prolog实现.我认为它们都是开源的.Ciao,gnu prolog,以及其他可能也是Prolog实现中常见的,支持其他约束类型.例如整数编程.

据我所知,莫扎特和水星都是替代逻辑编程语言.

Alice更多地属于ML系列,但支持使用GECODE C++库进行约束编程.

漂移一点主题....

Maude是一个有趣的术语重写语言.

HOL和COQ都是机械化证明系统,常用于语言社区.

Lambda-the-Ultimate是一个讨论和学习更多编程语言的好地方.



13> leppie..:

我不得不说Scheme,尤其是它的R6RS化身.

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有