写点什么

Mark Mahieu 创建 CICE 闭包原型

  • 2008-01-24
  • 本文字数:656 字

    阅读完需:约 2 分钟

最近几年,关于 Java 的热门话题之一就是为 Java 语言添加完整的闭包支持。但是由于闭包可能引入的复杂性,在没有试验过不同提议原型实现的情况下,是很难评估闭包的全部影响的。

现在,加入 Neal Gafter 的 BGGA 提议的原型后,Mark Mahieu 已经开始合并由 Bob Lee、Doug Lea、和 Josh Bloch 合写的 CICE/ARM 提议的原型实现简易实例创建表达式(CICE)只提供了一个更紧凑的语法,通过一个抽象方法来实例化某个内部类的实例,比如Runnable、Callable 或者Comparator 等。自动资源管理(ARM)块支持闭包的一个主要用例:在一个块内使用资源的作用域,比如当你退出这个块的语句范围时,你会自动调用资源的close 方法。

Mahieu 的最初实现只限于作用域。而对于 CICE,单是表达式就实现了公有局部变量(public locla variables)和隐式 final 局部变量;但没有实现公有局部(public locals)和类型推论。ARM 块实现只支持 ARM 块的 do(){}格式,并且依赖 java.io.Closeable 作为一个初始点。正如 Mahieu 所提示到的和 ARM 规范文档的本身所述,由于存在许多类型——比如 java.sql.Connection、Statement 和 ResultSet 等原因,使用 Closeable 是存在问题的,它们会抛出其他的未受查异常,所以不能用来实现。

这个原型已经帮助生成了提议中的一些细节,它是 ARM 实现的一个更新的 build ,它改变了 do(){}格式的缺省语义来处理受查异常。

随着 Stephen Colebourne 对于 FCM 原型工作的展开,我们将会在明年看到这些提议的哪些方面能起作用,而哪些不能起作用。

查看英文原文: Mark Mahieu Creates CICE Closure Prototype

2008-01-24 07:361089
用户头像

发布了 127 篇内容, 共 48.8 次阅读, 收获喜欢 5 次。

关注

评论

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

模块八作业

Clarke

行云创新亮相“OSCAR开源产业大会”:云调试加速应用创新

行云创新

声网推出首个完整实时合唱解决方案 即将上线“咪哒”全国线下K歌房

声网

人工智能 音频体验

汽车行业的进化秘诀,竟在这座智慧出行乐园中……

脑极体

CSS交互动画指南之transition

devpoint

CSS css3 transform 引航计划 9月日更

别把云原生想复杂了

dinstone

微服务 云原生 云平台

Opus从入门到精通(三)手撸一个Opus编码程序

轻口味

音视频 9月日更 Andriod

DDD实战分享-消息中心

麦麦

微服务 gRPC DDD 领域驱动设计DDD

JavaScript进阶(三)模块化

Augus

JavaScript 9月日更

即时通讯系统架构设计-如何设计一款WhatsApp

OpenIM

耗时大半个月收整全套「Java架构进阶pdf」没白费,Github上点赞破十万!

Java 程序员 面试 计算机 金九银十

Node 编码规范 -努力做得更好

Geek_25b8d1

node.js Node 规范

Java“锁”事

中原银行

Java 中原银行

什么是数据粒度

奔向架构师

数据仓库 9月日更

北鲲云探索医药研发,云计算再添新应用场景

北鲲云

代码的艺术

百度开发者中心

最佳实践 方法论 代码

数据结构与算法:缓存置换算法

正向成长

LRU 置换算法

Neuron v1.3.2 正式发布:新 logo、新界面、新可能

EMQ映云科技

边缘计算 网关 边缘流式数据 边云协同 emq

阿里初面被两道编程题给干掉?,再次内推终上岸(已拿电子offer)

今晚早点睡

Java Alibaba

译文:为什么超链接是蓝色的?(一)

姬翔

JVM 内存模型学习笔记(二)

风翱

JVM 9月日更

面试官:MySQL的幻读是怎么被解决的?

Java MySQL 编程 架构 后端

做安全操作系统,这位技术老兵是认真的!

熵核科技

安全操作系统

探索:北鲲云超算平台能否应用于中医药行业

北鲲云

惊掉下巴!这本Alibaba百万年薪必备—高性能架构路线震撼出世!

Java 编程 程序员 架构 计算机

阿里巴巴最新最全800道Java后端面试大全(值得收藏)

Java 程序员 编程语言 java面试 java架构

边缘使用 K8s 门槛太高?OpenYurt 这个功能帮你快速搭建集群!

阿里巴巴云原生

阿里云 云原生 边缘计算

【直播预告】阿里云服务网格 ASM 产品易用性改善实践与思考

阿里巴巴云原生

阿里云 云原生

博睿数据 短信服务监测解决方案专场直播

博睿数据

Android 上的 Kotlin 协程

Changing Lin

9月日更

Mark Mahieu创建CICE闭包原型_Java_Charles Humble_InfoQ精选文章