如何将 Ruby 编译为 Javascript? [关闭]

2024-04-23

我正在研究一段逻辑,我想在服务器和浏览器中表达它。类似于验证表单,其中基于已输入的内容,元素之间必须存在某些逻辑关系。

所以...如果我可以编写一次逻辑并以某种方式最终同时使用 Ruby 和 Javascript,那么我可以只编写一次逻辑,而不必担心确保用不同语言编写的两段代码具有相同的功能行为。

显然,我不需要在 Ruby 中重现所有内容,一种简化可能是移植一个通用库,例如函数式 JavaScript http://osteele.com/sources/javascript/functional/到鲁比。

有人有 RubyJS 的经验吗?谁能给我指出一个使用 RubyJS 的现有项目吗? 提前致谢...


据我所知,Opal http://opalrb.com/是目前最好的 Ruby 到 JS 转换器/编译器。Here http://opalrb.com/try/#code:class%20Person%0A%20%20attr_accessor%20%3Afirst%2C%20%3Alast%2C%20%3Agender%0A%20%20def%20initialize(first_name%2C%20last_name%2C%20g)%0A%20%20%20%20%40first%20%3D%20first_name%0A%20%20%20%20%40last%20%3D%20last_name%0A%20%20%20%20raise%20%22Nope%22%20if%20(g%20!%3D%20%3Am%20%26%26%20g%20!%3D%20%3Af)%0A%20%20%20%20%40gender%20%3D%20g%0A%20%20end%0A%20%20def%20parent_type%0A%20%20%20%20if%20gender%20%3D%3D%20%3Am%0A%20%20%20%20%20%20%22father%22%0A%20%20%20%20elsif%20gender%20%3D%3D%20%3Af%0A%20%20%20%20%20%20%22mother%22%0A%20%20%20%20end%0A%20%20end%0A%20%20def%20full_name%0A%20%20%20%20%22%23%7Bfirst%7D%20%23%7Blast%7D%22%0A%20%20end%0Aend%0A%0Ame%20%3D%20Person.new(%22Bob%22%2C%20%22Smith%22%2C%20%3Am)%0Ap1%20%3D%20Person.new(%22John%22%2C%20%22Smith%22%2C%20%3Am)%0Ap2%20%3D%20Person.new(%22Sue%22%2C%20%22Smith%22%2C%20%3Af)%0A%0Aputs%20%22My%20name%20is%20%23%7Bme.full_name%7D!%22%0A%0Aputs%20%22My%20%23%7Bp1.parent_type%7D%20is%20%23%7Bp1.first%7D!%22%0Aputs%20%22My%20%23%7Bp2.parent_type%7D%20is%20%23%7Bp2.first%7D!%22你可以看到它的实际效果。

它并不完美,但它在大多数情况下都可以工作,并且与旧项目(例如RubyJS https://github.com/superchris/rubyjs,蛋白石仍在积极开发中。

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

如何将 Ruby 编译为 Javascript? [关闭] 的相关文章

随机推荐

  • Numpy排列浮点不一致

    我有一个相当简单的 numpy 任务 创建一个长数组 每个元素递增 0 001 当然 np arange就是答案 我将自己限制为默认精度 float64 对结果的一个简单检查是数组的每 1000 个元素应该具有相同的小数部分 我通过绘图检查
  • 如何优化这个 CUDA 内核

    我已经分析了我的模型 似乎该内核约占我总运行时间的 2 3 我一直在寻找优化它的建议 代码如下 global void calcFlux double concs double fluxes double dt int idx blockI
  • 如何在 Linux (Red Hat/CentOS) 上更新到特定 R 版本,并保留以前的版本?

    也许更准确的标题是 如何在 Linux Red Hat CentOS 上从就地 EPEL R 安装切换到并行 特定于版本 R 安装 一个 可能是典型的 在 Linux 上升级 R 的故事 History 在过去的某个时刻 我使用由 RHEL
  • IE 在模态中失去对输入字段的焦点

    我有一个相当复杂的网络应用程序 我已将其压缩为以下两个 HTML 页面 但问题仍然存在 问题 在 IE 8 和 9 中 厚盒模式 iframe 的输入字段在一秒 或更短时间 后失去焦点 它仅在模态中发生 如果您自行加载页面 焦点不会丢失 我
  • 如何为 JavaScript 生成的文本框附加 onclick 事件?

    我有一个表行 其中包含一个文本框 它有一个显示 JavaScript 日历的 onclick 我正在使用文本框向表中添加行 但我不知道如何将 onclick 事件附加到 JavaScript 生成的文本框
  • MyFaces 中的内存泄漏

    编辑 您可以在下面的评论中找到的解决方案假设更改 JSF 实现从 MyFaces 到 太阳的莫贾拉 Hi 我在 MyFaces 2 0 0 上遇到了非常烦人的问题 更准确地说 我也在 2 0 1 和 2 0 2 上检查过它 问题仍然存在 我
  • 如何使用 RDFLib 解析大数据集?

    我正在尝试使用 RDFLib 3 0 解析几个大图 显然它处理第一个图并在第二个图上死掉 MemoryError 看起来 MySQL 不再支持作为存储 您能建议一种以某种方式解析这些图的方法吗 Traceback most recent c
  • 在 Mac OS X 上使用 Python 生成新的非阻塞进程

    我找到了一些文章甚至堆栈 overflow针对这个主题的问题 但我仍然做不到 我想要做的是从 python 打开一个 firefox 实例 那么python应用程序应该继续关注自己的事情并忽略firefox进程 我能够使用以下方法在 Win
  • 如何在R中使用grep匹配表达式的开头和结尾

    我试图用 grep 命令匹配表达式的开头和结尾 但我无法做到这一点 例如 考虑以下表达式 filenames lt c S2abc 6h S2abc 4h S2abc 0h S4abc 6h S2xyz 6h 我想找到所有以 S2 开头并以
  • 如果特定文件发生更改,如何自动收到警告?

    我有一个 php 项目 当我从另一个存储库中提取并且composer lock 文件发生更改时 我应该运行composer phar install dev git 如何自动警告我 询问我是否要运行这个命令 我想某种挂钩可以解决这个问题 但
  • 通过将参数传递给 url 在谷歌地图上绘制圆圈

    我想在给定的谷歌地图网址上画一个圆圈作为叠加层 这是没有使用谷歌地图 API 的情况 因此 我想知道是否可以通过仅将某些参数传递给地图网址来实现 我正在使用的网址是 https maps google com maps saddr M5J
  • JAX-RS:是否有用于根元素、列表的一部分、Web 服务中的参数的 json 序列化器

    目前我正在设计一个 RESTful API 并使用 JAX RS 作为后端 许多响应具有以下简单形式 someList item1 item2 itemn 重要的是数组的字段名称 客户端需要它 EmberJS 数据 我尝试使用标准 Resp
  • 如何将 N 个本地最顶层提交转换为 MQ 补丁?

    我想将我的最后一次提交安排为 MQ 补丁 所有提交都是本地的 从不推送到服务器 但并非所有本地提交都会被转换 假设我进行了 10 次提交 从未推送 现在我希望将最后 5 次提交转换为补丁 我该怎么做 简洁版本 hg qimport r 5
  • Android:从触摸事件获取原始位图数据

    Is there a possibility to get an array bitmap with the raw data of the touched spots on an Android touch display See ill
  • Flutter 从 Future 方法返回 bool 类型

    这个问题与this https stackoverflow com questions 52477468 flutter futurebool vs bool type但解释对我的用例并没有多大帮助 我有一个 Future 类型的方法 它返
  • java中的动态方法调度

    class A int a 10 public void show System out println Show A a class B extends A public int b 20 public void show System
  • SQL Server 使用参数导致结果缓慢

    我有一个选择一些数据的查询 我在其中传递了一些参数 DECLARE FromAccDocNo INT 1 ToAccDocNo INT 999999999 FromDate CHAR 10 1900 01 01 ToDate CHAR 10
  • 如何设置像“YYYYMM”这样的 Postgresql 默认值日期戳?

    作为标题 如何将表的列设置为当前年份和月份的默认值 格式为 YYYYMM 例如今天的 200905 请记住 日期的格式与存储无关 如果您认为日期很重要stored在这种格式中 您需要定义自定义数据类型或将其存储为字符串 然后你可以使用组合e
  • 将 csv 列放入数组中

    我有一个带有列标题的 csv 描述 库存 mfgid 以及我不需要的其他一些标题 我需要从数组中的列标题 stock 和 mfgid 获取数据 我正在使用 fgetcsv 但它将整行放入数组中的独占键中 在 stackoverflow 上找
  • 如何将 Ruby 编译为 Javascript? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在研究一段逻辑 我想在服务器和浏览器中表达它 类似于验证表单 其中基于已输入的内容 元素之间必须存在某些逻辑关系 所以 如果我可以编写