Elm 与 ClojureScript 相比如何?

2024-01-06

我已经到了这样的地步:使用 Backbone.js 面向对象的 MVC 模式进行 GUI 编码变得非常复杂,并且正在考虑其他范例。MDV https://github.com/Polymer/TemplateBinding, FRP http://en.wikipedia.org/wiki/Functional_reactive_programming, ECS http://en.wikipedia.org/wiki/Entity_component_system, oh my.

如何Elm http://elm-lang.org/相比于Clojure脚本 https://github.com/clojure/clojurescript/wiki?它们在哪里重叠?

两者都是与编译为 JS 的 JS 非常不同的语言。据我了解,Elm 是一种函数式反应式编程 (FRP) 语言。 ClojureScript 不一定是 FRP,但您可以用它来做 FRP。 Elm 使用 Haskell 进行编译,而 ClojureScript 使用 JVM 进行编译,因此这两者都是 Node 商店的额外要求。

也许归结为Clojure 与 Haskell https://stackoverflow.com/questions/11607020/haskell-scala-clojure-what-to-choose-for-high-performance-pattern-matching-an.


两者都迫使您使用比纯 JS 更具声明性/函数式的编程风格。 ClojureScript 更像是 JS 的替代品,而 Elm 更像是整个 Web 开发堆栈 (HTML/CSS/JS) 的替代品。

其他差异:

  • Elm 语法更像 Haskell
  • ClojureScript 更接近传统的 Lisp 语法
  • Elm 针对时变值(Elm 中的“信号”)进行了高度优化
  • ClojureScript 更加成熟,你可以找到一些不错的开发工具(Eclipse 插件、LightTable 等)
  • Elm 是静态类型,ClojureScript 是动态类型

希望这可以帮助。我仍在学习这两种语言,所以我可能错过了一些东西。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Elm 与 ClojureScript 相比如何? 的相关文章

  • 使用 C++ 类的架构 x86_64 的未定义符号

    我已阅读有关此主题的其他问题 但仍不知道如何解决我的问题 预先感谢您的帮助 我的错误是 体系结构 x86 64 的未定义符号 Record Record std 1 vector std 1 allocator gt std 1 alloc

随机推荐

  • Android:如何知道 MediaPlayer 是否已暂停?

    MediaPlayer isPlaying 不允许知道是否MediaPlayer已停止或暂停 如何知道是暂停了还是没有停止 Thanks 执行此操作的一种方法是检查媒体播放器是否未播放 暂停 并检查它是否位于起始位置 1 以外的位置 Med
  • 在线条末端绘制标签

    我有以下数据 temp dat完整数据请参见尾注 Year State Capex 1 2003 VIC 5 356415 2 2004 VIC 5 765232 3 2005 VIC 5 247276 4 2006 VIC 5 57988
  • 在 SQL 查询中显示串联值

    我想将我的第一个 sql 查询与下面显示的 id pr 值的表类型连接起来 ID PR 值会重复 我想显示 ident st 列中与相同 id pr 和 rodz st 值用逗号分隔符连接的所有值 例如 显示 rodz st DZE 和 i
  • 在 MATLAB 中交换两个元素的性能

    纯粹作为实验 我在 MATLAB 中编写排序函数 然后通过 MATLAB 分析器运行这些函数 我发现最令人困惑的方面是与交换元素有关 我发现交换矩阵中两个元素的 官方 方式 self Data i1 i2 self Data i2 i1 运
  • 对于 Electron 来说,结合 Node.js 和 Chromium 上下文意味着什么?

    In 一篇博文 http maxogden com electron fundamentals html作者提到 Electron 将 Node 和 Chromium 组合成一个 单一上下文 这意味着我们不必使用 Browserify 来转
  • SqlBulkCopy 和实体框架

    我当前的项目由 3 个标准层组成 数据 业务和表示 我想使用数据实体来满足我的所有数据访问需求 该应用程序的部分功能是需要将平面文件中的所有数据复制到数据库中 文件不是很大 所以我可以使用 SqlBulkCopy 我发现了几篇关于 NET
  • android 使用 .der 公钥验证文件签名

    我正在尝试验证文件的签名 我按照以下说明生成证书 generate a private key with size of 2048 bits openssl genrsa out private key pem 2048 derive a
  • 我如何通过 sql server 2008 中的 XP_CMDSHELL 通过网络访问文件/文件夹?

    我正在尝试使用 EXEC MASTER XP CMDSHELL 访问文件夹 目录 它适用于本地文件 文件夹 但它无法通过网络访问该文件夹 EXEC MASTER XP CMDSHELL c Images Works fine EXEC MA
  • 如何使用 9 切片在 WPF 中叠加两个图像?

    我将展示一些 脏 代码 我不完全理解这些代码 因为我是 C 新手 根据我的理解 任何要绘制的控件都会被分成9个矩形 然后通过设置来单独绘制每个矩形Fill矩形的属性 我将隐藏每个矩形的代码 以保持代码的可管理大小 但是 我希望您明白该函数试
  • Google Cloud Datastore JSON API 的 datasetId 是什么

    正如中提到的this https stackoverflow com questions 25097451 how do i find my datasetid for making google datastore queries ans
  • 以编程方式构建 msbuild 15 项目

    我正在尝试构建一个使用 VS2017 创建的简单 C 7 类库项目 框架程序集的 MSBuild 已经过时了 所以我引用Microsoft Build Microsoft Build Engine and Microsoft Build F
  • 当按下回车键时如何转到下一个文本框?

    大家好 我正在学习 Javascript 我想问你们 当我按下键盘上的 Enter 按钮输入文本后 如何才能转到下一个文本框 谢谢 您可以使用 keyup 跟踪用户何时完成字符输入并e keyCode获取按下了哪个键 如果是 13 意味着进
  • 如何提高这段代码的性能呢?

    我正在尝试学习一些 Julia 在阅读了几个小时的手册后 我编写了以下代码 ie 200 ez zeros ie 1 hy zeros ie fdtd1d steps for n in 1 steps for i in 2 ie ez i
  • Doxygen:是否可以控制依赖图的方向?

    Up until today I d been using an ancient version 1 4 7 of doxygen dot and it typically drew graphs with a vertical orien
  • 比较 Msbuild 中的日期时间戳

    我正在尝试比较 msbuild 中的两个日期时间戳 我做了以下事情
  • Visual C++ __forceinline 奇怪的行为

    我试图强制 Visual C 编译器内联特定函数 我知道inline or forceinline只是一个建议 根据MSDN https msdn microsoft com en us library bw1hbe6y aspx 如果编译
  • 如何正确使用MouseMotionListener来按下JButtons?

    我制作了一个小型康威生命游戏程序 我已经完成了大约 80 我用过一个网格JButtons作为细胞 现在我有一个ButtonListener在每个按钮上 因此您必须通过单击各个按钮来逐一绘制您想要的图案 我希望能够快速单击并拖动鼠标并选择按钮
  • request.is_ajax() == 点击后退按钮时为 True?

    我有一个 Django 应用程序 它根据页面请求是否为 Ajax 返回不同的响应 当我查看页面 导航到其他地方 然后单击后退按钮时 请求将被呈现为就像request is ajax 是真的 因此 JSON 输出显示在浏览器中 而不是生成的
  • python 获取 json 键作为完整路径

    我想解析一个 JSON 文件并获取包含访问密钥所需的所有路径的完整列表 如果我们使用keys方法 我们会得到单个键的列表 但不会得到访问数据所需的分层键的完整列表 所以如果给定数据这样 data glossary title example
  • Elm 与 ClojureScript 相比如何?

    我已经到了这样的地步 使用 Backbone js 面向对象的 MVC 模式进行 GUI 编码变得非常复杂 并且正在考虑其他范例 MDV https github com Polymer TemplateBinding FRP http e