又在 WIKI 上溜达了一下 https://en.wikipedia.org/wiki/List_of_JVM_languages,有一些新的发现:

ColdFusion Markup Language (CFML), 和设想的 https://www.cnblogs.com/inshua/p/17434305.html 相似

Ballerina,开始有点震惊,有一部分和我的构想相似,但是看了看细节,凑合吧,让人惊叹的是完成度很高。例如

这个语言甚至支持对 RESTful 请求的 Literal,很有意思。

为什么说凑合呢?例如它号称支持消息队列,怎么支持的呢?

// https://central.ballerina.io/ballerinax/kafka
kafka:ConsumerConfiguration consumerConfiguration = {
groupId: "group-id",
topics: ["kafka-topic-1"],
pollingInterval: 1,
autoCommit: false
}; listener kafka:Listener kafkaListener = new (kafka:DEFAULT_URL, consumerConfiguration); service on kafkaListener {
remote function onConsumerRecord(kafka:Caller caller, kafka:ConsumerRecord[] records) {
// processes the records
...
// commits the offsets manually
kafka:Error? commitResult = caller->commit(); if commitResult is kafka:Error {
log:printError("Error occurred while committing the offsets for the consumer ", 'error = commitResult);
}
}
}

对 rabbitmq 的也类似,https://central.ballerina.io/ballerinax/rabbitmq 。并没有纳入语言本身进行思考。

另外,没想到 Benshell 的实现和我的 VBAInterpreter 非常相似。https://github.com/beanshell/beanshell/blob/master/src/main/java/bsh/BSHBlock.java#L93C48-L93C48

class BSHBlock extends SimpleNode {
.... ....
public Object eval( CallStack callstack, Interpreter interpreter,
Boolean overrideNamespace ) throws EvalError { if ( isSynchronized ) {
// First node is the expression on which to sync
Node exp = jjtGetChild(0);
Object syncValue = exp.eval(callstack, interpreter);
synchronized( syncValue ) { // Do the actual synchronization
return evalBlock(
callstack, interpreter, overrideNamespace, null/*filter*/);
}
}
return evalBlock(
callstack, interpreter, overrideNamespace, null/*filter*/);
}

JVM 语言的探索发现的更多相关文章

  1. [转载] 详述三种现代JVM语言--Groovy,Scala和Clojure

    转载自http://www.tuicool.com/articles/jYzuAv和http://www.importnew.com/1537.html 在我与Martin Fowler曾经合作呈现的 ...

  2. 04.从0实现一个JVM语言系列之语义分析器-Semantic

    从0实现JVM语言之语义分析-Semantic 源码github, 如果这个系列文章对您有帮助, 希望获得您的一个star 本节相关语义分析package地址 致亲爱的读者: 个人的文字组织和写文章的 ...

  3. 03.从0实现一个JVM语言系列之语法分析器-Parser-03月01日更新

    从0实现JVM语言之语法分析器-Parser 相较于之前有较大更新, 老朋友们可以复盘或者针对bug留言, 我会看到之后答复您! 源码github仓库, 如果这个系列文章对你有帮助, 希望获得你的一个 ...

  4. 02.从0实现一个JVM语言之词法分析器-Lexer-03月02日更新

    从0实现JVM语言之词法分析器-Lexer 本次有较大幅度更新, 老读者如果对前面的一些bug, 错误有疑问可以复盘或者留言. 源码github仓库, 如果这个系列文章对你有帮助, 希望获得你的一个s ...

  5. 05.从0实现一个JVM语言之目标平台代码生成-CodeGenerator

    从0实现JVM语言之目标平台代码生成-CodeGenerator 源码github仓库, 如果这个系列文章对你有帮助, 希望获得你的一个star 本节相关代码生成package地址 阶段性的告别 非常 ...

  6. 比较偏门的JVM语言Quercus - PHP on JVM

    其实,我不确定Quercus是否可以被认定为一门JVM语言:其次Quercus这个东东分开源版与商业版,开源版只能解释执行.而商业版能编译成Java字节码. 但我知道国内,阿里巴巴很早就在使用它,当然 ...

  7. 01.从0实现一个JVM语言之架构总览

    00.一个JVM语言的诞生过程 文章集合以及项目展望 源码github地址 这一篇将是架构总览, 将自顶向下地叙述自制编译器的要素; 文章目录 01.从0实现一个JVM语言之架构总览 架构总览目前完成 ...

  8. 00.从0实现一个JVM语言系列

    00.一个JVM语言的诞生 由于方才才获悉博客园文章默认不放在首页的, 原创文章主要通过随笔显示, 所以将文章迁移到随笔; 这篇帖子将后续更新, 欢迎关注! 这段时间要忙着春招实习, 所以项目更新会慢 ...

  9. 2018-01-19 Xtext试用: 5步实现一个(中文)JVM语言

    续上文Xtext试用: 快速实现简单领域专用语言(DSL). 基于官方教程: Five simple steps to your JVM language 达成如下语言: 它被Quan6JvmMode ...

  10. zabbix 布署实践【4 服务器自动探索发现,并且自动关联模版】

    使用管理员登录zabbix后,在配置---自动发现--创建发现规则 如下:我们的需求是监听办公网内openstack的所有虚拟机,在其VM创建后,自动加到zabbix监控中来,并自动关联监控模版 可以 ...

随机推荐

  1. springboot的启动类必须和controller在同一层级

    springboot的启动类必须和controller在同一层级

  2. 图像形态学操作(cv2库实现)

    #coding:utf-8 import SimpleITK as sitk import numpy as np import cv2 # 膨胀 def dilateion(image): kern ...

  3. 某小说解锁VIP

    在User类中定位到这个方法,尝试直接返回true 可以发现apk显示了vip的到期时间,测试一下vip是否有效 显然这个vip是没起作用的,还有地方在控制这个vip的方法.在jadx中查看交叉引用 ...

  4. YoloDotNet v2.1:实时物体检测的利器

    项目介绍 YoloDotNet v2.1 是一个基于 C# 和 .NET 8 的实时物体检测框架,专为图像和视频中的物体检测而设计.它集成了 Yolov8 ~ Yolov11 模型,通过 ML.NET ...

  5. filter 加 indexOf 方法去重数组

    let arr = [1, 2, 3, 4, 3, 2, 3, 4, 6, 7, 6] let unique = (arr) => { console.log(arr) return arr.f ...

  6. Oracle中查看隐含参数的sql

    select a.ksppinm "Parameter", a.ksppdesc "Description", b.ksppstvl "Session ...

  7. 云原生爱好者周刊:野心很大的云原生数据库 SurrealDB

    开源项目推荐 SurrealDB SurrealDB 是一个开源的端到端云原生数据库,同时支持 Table.Document 和 Graph 等多种数据模型,对外提供 SurrealQL.GraphQ ...

  8. Vue 中 v-html 无法被 style scoped 渲染的问题

    假设有这么一个 vue 组件: <template> <div v-html="docPreview"/> </template> <st ...

  9. Python-提高-1

    阅读目录 1.GIL(全局解释器锁) 2.深拷贝.浅拷贝 3.私有化 4.import导入模块 5.再议 封装.继承.多态 一.GIL(全局解释器锁) GIL面试题如下 描述Python GIL的概念 ...

  10. CodeQL学习笔记(1)-QL语法(逻辑连接词、量词、聚合词、谓词和类)

    最近在学习CodeQL,对于CodeQL就不介绍了,目前网上一搜一大把.本系列是学习CodeQL的个人学习笔记,根据个人知识库笔记修改整理而来的,分享出来共同学习.个人觉得QL的语法比较反人类,至少与 ...