网站首页
IC库存
IC展台
电子资讯
技术资料
PDF文档
我的博客
IC72论坛
ic72 logo
搜索关键字: 所有资讯 行业动态 市场趋势 政策法规 新品发布 技术资讯 价格快报 展会资讯
  • 达普IC芯片交易网 > 新闻中心 > 技术资讯 > 正文
  • RSS
  • JVM上较Lisp更先进的函数式编程语言Clojure
    http://www.ic72.com 发布时间:2010/9/7 11:12:31

        对于Clojure 开发者来说,开发工具首选是使用NetBeans IDE的Enclojure插 件,Enclojure 提供了支撑Clojure 开发的一组类库,包含独立的REPL(Read/Evaluate/Print/Loop)支持,同时支持REPL 和远程JVM 建立连接。Enclojure 提供的编辑器支持具备语法高亮显示、函数声明定位,S-表达式导航,Lisp 风格缩排,代码结构化导航,内置项目模板,断点设置和单步调试,并能够对代码错误给出超链接提示。此外Eclipse 也提供了专门的Clojure 语言开发插件CounterClockwise,在源代码编辑,代码调试,REPL 支持方面也有独到之处,适合于习惯于Eclipse 的开发者使用。

        诞生于2007年的Clojure是JVM平台上的Lisp实现,Lisp 以强大的功能和表达性而著称,但应用范围存在着固定的局限,于是发起人Rich Hickey设计Clojure的初衷便是希望得到一门能够服务于高并发应用场景,较Lisp更为先进的函数式编程语言。

        Clojure 保持了函数式语言的主要特点,同时避免了不稳定状态、递归和高阶函数。Clojure在语法上非常简单,其设计优势在于,让开发者绝大部分工作专注在真正 解决问题上,而非耗费在如何模块化设计和如何进行解耦层面上。与Lisp语言相似,Clojure也是基于S-表达式设计。S-表达式给出了表达半结构化数据的约定,以其在Lisp 语言中的广泛应用而为人熟知。S-表达式在Lisp 中既用作代码,也用作数据,其最通用的特性是使用S- 表达式作为括号化的前缀表示。

        与JRuby 、Jython 、Scala等依托于JVM 运行的语言相同,Clojure 是运行在Java虚拟机平台上的Lisp 方言,能够直接调用Java 类库,借助JVM 平台广泛的适用性,为Clojure语言的应用拓展了空间。此外,Clojure 可以说是社区智慧的结晶,在Rich Hickey等核心开发者之外,Clojure 语言的补丁、文档、测试和不少新功能的开发思路都是来自于开源社区参与者的贡献。

        Clojure 之所以受到广泛关注,最主要的原因来自于其并发特点,如支持软件事务存储(Software Transactional Memory,STM )等特性。在实际应用方面,站点FlightCaster为用户提供了航班延误的预告信息,同时也为iPhone和Blackberry提供了终端应用。FlightCaster的Web前台用Rails 实现并部署在Heroku上, 后台数据分析和处理程序则由Clojure实现,同时在后台使用了Hadoop、Cascading、Cloudera等工具。在 FlightCaster 站点中,数据预处理并转换成适当视图用以分析的操作,以及所有统计推断和机器学习代码都使用Clojure 实现。FlightCaster站点将Clojure数据结构用作通信和存储的中间表示,Clojure 代码分析得到的航班预告模型,以Json中间格式来表示,然后推送到Rails 前端,以Json格式读取数据并展示给用户。

     


    www.ic72.com 达普IC芯片交易网
  • 行业动态
  • 市场趋势
  • 政策法规
  • 新品发布
  • Baidu

    IC快速检索:abcdefghijklmnopqrstuvwxyz0123456789
    COPYRIGHT:(1998-2010) IC72 达普IC芯片交易网
    客户服务:service@IC72.com 库存上载:IC72@IC72.com
    (北京)联系方式: 在线QQ咨询:点击这里给我发消息 联系电话:010-82614113 传真:010-82614123
    京ICP备06008810号-21 京公网安备 11010802032910 号 企业资质