HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

JRuby 综述:Google App Engine 支持、BiteScript 及新的编译器

  • 2009-04-14
  • 本文字数:856 字

    阅读完需:约 3 分钟

几周前 JRuby 1.2 发布了( InfoQ 对 JRuby 1.2RC1 的报道总览了其变化)。借助于该发布,JRuby 团队现在又开始了新的项目。

现在 Ola Bini 正忙于 JRuby 和 Ioke 的测试工作,它们将用在 Google 新发布的 Google App Engine 的 Java 支持上(请查看 InfoQ 对 Java on GAE 的报道)。Ola 还谈到了 GAE 上的 JRuby 和 Rails 的需求以及建立 JRuby on Rails 应用的方式:

你需要使用最新版的 JRuby。对于 JRuby 来说,自从 1.2 版发布后大多数变化都加到了主干上,因此请先检出最新的代码然后再进行构建。最新版的 Rails 也没什么问题。

因为 GAE 并不支持 RDBMS,所以无须使用 JDBC。 Ola 给出了 Bumble,这是对 Google DataStore 的一个包装器

JRuby 仅仅是 GAE 所支持的众多 JVM 语言中的一个,其他还有 Clojure 及 Rhino(Google维护了支持语言的一个列表)。Ola 还列出了GAE 的一些限制,这些限制会导致JVM 语言出现问题,同时关于反射、线程、字节码验证等方面的一些示例也进行了更新。

与此同时,Tom Enebo 创建了 JRuby-Parser ,它从 JRuby 中抽取出了 JRuby 解析器,凭借这一点,IDE 或其他工具可以使用解析器而无需依赖整个 JRuby。

Charles Nutter 开始着手编写全新的 Ruby 编译器,其目标是将 Ruby 类型编译成 Java 类

* 使用我的字节码 DSL “BiteScript”,就像 Duby 一样 * 使用类的“运行时”定义来生成对应的 Java 版本

第二点很重要。相对于使用离线编译器来检测文件并生成代码,该编译器实际上使用了运行时的类来创建对应的 Java 版本。这意味着我们可以使用通常的元编程工具,这样无论何时,只要编译器得到类,它就能查看到其中的所有方法。

Charles 还发布了一个有用的工具 BiteScript (用于创建字节码的内部 DSL),该工具使用 JRuby 生成字节码。JVM 字节码会映射到 Ruby 方法上,由后者生成字节码;用于创建类和方法的那些 Ruby 方法构成了 API 并采取紧凑的方式来生成 class 文件。

请查看 Charles 关于 BiteScript 发布的声明来了解更多信息。

查看英文原文: JRuby Roundup: Google App Engine Support, BiteScript, New Compiler

2009-04-14 01:061403
用户头像

发布了 88 篇内容, 共 262.4 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

云环境中的灾备规划与分析

穿过生命散发芬芳

灾备 三周年连更

Prometheus实战-从0构建高可用监控平台(一)

小毛驴的烂笔头

Prometheus

数字北京城,航行在联通2000M的“大运河”

脑极体

联通

华为云CDN,助力企业数字化转型

YG科技

云计算

2022-04-24:用go语言重写ffmpeg的muxing.c示例。

福大大架构师每日一题

Go 音视频 ffmpeg

小程序容器技术保障车载业务生态中的应用安全

FinFish

小程序容器 小程序技术 车载业务 车载生态 车载应用

Nautilus Chain :基于模块化架构的Layer3正在走向成熟

西柚子

测试需求平台9-Table组件应用产品列表优化

MegaQi

测试平台开发 三周年连更

关于 SaaS 软件销售领域中的 Renewal 和 linearity

汪子熙

SaaS Cloud Studio 三周年连更

华为云CDN加速为中小企业数字化效力

YG科技

为什么企业们更偏好使用华为云CDN?

YG科技

Python中的哈希表

Echo_Wish

Python 数据结构 哈希表

ADB模拟按手机上的“菜单”键

IT蜗壳-Tango

三周年连更

华为云D-Plan解决方案助力汽车零部件质检智能化

轶天下事

一个神奇的小工具,让URL地址都变成了"ooooooooo"

南城FE

JavaScript 前端 url

Cookie与缓存的指导性规则

阿泽🧸

HTTP 三周年连更

2023 年最全面的 DevOps 工具列表,你用过几个?

Java架构历程

DevOps 三周年连更

DockerSwarm实践及原理

乌龟哥哥

三周年连更

华为云WAF设置要塞,筑起企业网络安全万里长城

轶天下事

Retrofit 在 JSON 反序列化的时候提示 UnrecognizedPropertyException 异常

HoneyMoose

跨平台应用开发进阶(五十六):应用渲染异常问题分析及解决

No Silver Bullet

跨平台应用开发 三周年连更 问题分析及解决 渲染异常

华为云CDN:让网络延时,成为过去时!

YG科技

自动回收内存:Go语言的GC垃圾回收机制详解

Jack

Android补间动画

梦笔生花

三周年连更 帧动画 补间动画

华为云弹性公网IP服务,实惠又便捷!

轶天下事

《俞军产品方法论》

石云升

读书笔记 三周年连更

C# 之 字符串前加@(逐字字符串标识符)

陈言必行

C# 三周年连更

Python项目实战│ Python实现线程池工作模式

TiAmo

Python 线程池 三周年连更 工作模式

文心一言 VS chatgpt (12)-- 算法导论3.1 6~7题

福大大架构师每日一题

ChatGPT 文心一言

一种新的流:为 Java 加入生成器(Generator)特性

阿里巴巴云原生

Java 阿里云 云原生

最常用的从A到Z的Linux命令,真的很好记,三分钟刷完!

wljslmz

Linux 三周年连更

JRuby综述:Google App Engine支持、BiteScript及新的编译器_Java_Werner Schuster_InfoQ精选文章