写点什么

用 Groovy 创建领域特定语言

  • 2008-02-27
  • 本文字数:677 字

    阅读完需:约 2 分钟

今天(2 月 21 日)是 Groovy/Grails Experience 大会(也就是大家所熟知的 2GX)的第一天,会议在 Virginia 的 Reston 举行。该会议会持续 3 天,包括了四十个 90 分钟的专题、小组讨论以及代码研习会。今天的首个专题之一是 Venkat Subramaniam 的“DSL In Groovy”。领域特定语言的话题过去曾经出现在 InfoQ 上,包括 Martin Fowler 的领域特定语言介绍和Ian Roughley 的关于用JRuby 构建领域特定语言的文章。

Venkat 的专题提供了关于什么是 DSL、它们的特征、DSL 类型(内部 / 外部)以及 Groovy 用来创建和使用它们的特性等相关信息。Venkat 首先集中于使用一些 Groovy 的一些内置特性创建内部 DSL(internal DSL)

除了这三个特性外,Venkat 论述了 Groovy 对开发者没有约束以及其促进 DSL 的附加特性,包括:

在决定当创建 DSL 时使用哪种方法时,Venkat 解释了使用 Categories 或 ExpandoMetaClass 的主要区别, > - Categories 允许你在战术上增强一个类

  • ExpandMetaClass 在本质上更深远、全面
  • 你可能不想从全局影响一个类
  • Categories 提供了受控的灵活性

领域特定语言正持续受到关注,而且可以用 Groovy 内置特性创建和使用。

查看英文原文: Creating Domain Specific Languages with Groovy

2008-02-27 19:441434
用户头像

发布了 150 篇内容, 共 51.2 次阅读, 收获喜欢 10 次。

关注

评论

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

在 Go 中如何让结构体不可比较?

秃头小帅oi

人工智能赋能经管学科创新发展,和鲸助力同济大学打造教研训一体化实践

ModelWhale

人工智能 交叉学科 同济大学 经济与管理 同济大学MBA

996/007:背后的真相

老张

职场成长 996 007 认知 加班文化

JDBC类型解析

JDBC count(1) jdbc类型处理

一文了解 AIOps 的含义、特点与功用

Anliven

AIOPS 智能运维 智能运维AIOps

汽车乘客热舒适度大挑战,如何利用仿真技术提高汽车环境舒适度

Altair RapidMiner

人工智能 汽车 仿真 智能制造 altair

通过观测云 eBPF Tracing 实现无埋点的全链路追踪

观测云

ebpf

Python调用墨迹天气API实践指南

幂简集成

API 天气api

嵌入式笔记 day1

万里无云万里天

嵌入式

京东商品信息高效抓取:利用API实现数据获取的实战指南

代码忍者

API 测试 API 策略

如何利用 StarRocks 实时分析数据湖中的数据?

镜舟科技

StarRocks 湖仓一体 大数据 开源

mac远程工具推荐:Microsoft Remote Desktop for Mac 特别版

你的猪会飞吗

Mac软件 mac软件下载 mac破解

一种PyInstaller中优雅的控制包大小的方法

不在线第一只蜗牛

Java JavaScript 数据库

从零开始带你玩转 AI 变现公开课

霍格沃兹测试开发学社

京东商品信息快速获取:API返回值实战教程

技术冰糖葫芦

API Explorer API 测试 API 策略 pinduoduo API

玩转软件定义存储 | 全方位体验天翼云存储资源盘活系统HBlock

xybDIY

#天翼云 #HBlock #轻量存储 #轻量级存储集群控制器 #存储

阿里PAI-ChatLearn:大规模 Alignment高效训练框架正式开源

阿里云大数据AI技术

人工智能 开源 LLM Alignment PAI-ChatLearn

用Groovy创建领域特定语言_Java_Craig Wickesser_InfoQ精选文章