写点什么

Colm 语言简介

  • 2011-05-30
  • 本文字数:849 字

    阅读完需:约 3 分钟

编程语言最近(再次)成为研究的主要题目,并且,这次人们仔细地关注它们的语义基础:

程序就是带有语义的结构化对象。结构让我们可以对程序做转换。而语义则为我们提供了比较程序以及推断转换有效性的方法。语义包括程序的外延和内涵行为。

程序转换(Program Transformation)也得益于这种新的研究浪潮,并且已经有公司成功发布了商业化的产品

程序转换是把一种程序转换为另一种的操作。而术语“程序转换”也被用于描述实现程序转换的算法。程序中被转换的语言和编写得到的程序所用的语言分别被叫做源语言和目标语言。

Adrian Thurston最近发布了 Colm(计算机语言处理)的第一个版本,这种语言被设计用来对计算机语言进行分析和转换。Adrian 是在皇后大学(ON,Canada)读博士期间开发了 Colm。他解释说:

一种转换语言会拥有基于正规语言的类型系统。它不会定义类或是数据结构,而是会定义语法。根据语法会自动构造解析器,而这个解析器会用于两种目的: 解析输入语言,并解析执行分析的程序中的结构模式。在这种设定中,基于语法的解析非常重要,因为它确保输入和结构化模式都从同样的类型系列解析为树状结构,从而让我们可以进行比较。

Colm 的主要贡献在于解析方法。

Colm 的解析引擎是广义上的,但是它也考虑到了对二进制全局数据结构的构建,那种结构可以在解析过程中查询。在其它广义的方法中,对全局数据的构建需要慎重的考虑,因为在解析方法中会存在固有的并发操作。这是一种非常巧妙的方法,经常可以在总体上避免问题的发生,并把问题延迟到对解析森林在解析之后的后续处理中。

使用 Colm,我们可以在对输入的第一次遍历过程中就获得正确的解析树,并确保某些回溯操作是可接受的。Colm 让我们不需要推断对全局数据的并发更新,也不需要获取很多可能的解析树,只是把错误的抛弃即可。

元编程(也叫做面向元模型的编程)取得了很大进展,这多亏有了对语言工作台和像Colm 这样强大的转换技术的开发。你可能会使用一种吗? 你已经使用一种了吗?你选择的是哪种呢?

查看英文原文: Introducing the Colm Programming Language

2011-05-30 09:073105
用户头像

发布了 340 篇内容, 共 130.3 次阅读, 收获喜欢 13 次。

关注

评论

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

🚀 CI+GPT双引擎驱动,🤖 开启AI代码评审新纪元

京东科技开发者

堡垒机的自动化运维,快速安全提升运维效率

行云管家

数据安全 堡垒机 自动化运维

实时分析用户反馈:淘宝商品评论API助力电商创新

技术冰糖葫芦

API boy API 接口 API 测试

如何将您的 API 管理从 Swagger 迁移到 Apifox:详细步骤

Apifox

Apifox 接口文档 API swagger API 文档

用这个方法给苹果电脑清理app垃圾,让电脑快如闪电

阿拉灯神丁

CleanMyMac Mac 系统 苹果软件 杀毒软件

开源 KDP v1.1.0 版本正式发布,新增数据集成开发应用场景

智领云科技

开源 云原生 大数据平台

IPQ5018 vs IPQ9574|Revolutionizing Healthcare with Wi-Fi: Discover Wallys' Cutting-Edge Solutions for Medical Technology

wallyslilly

ipq5018 ipq9574

暗水印——变换域DCT水印算法(一种通用性强,能有抵御攻击的手段)

京东科技开发者

数据觉醒时代,以“存力”激活数据资产潜能

优刻得云计算

大数据 数据要素流通

企业号 6 月 PK 榜,火热开启!

InfoQ写作社区官方

热门活动 企业号2024年6月PK榜

NFTScan 获 Google Cloud 战略支持!

NFT Research

Google Cloud NFT\ NFTScan

互联互通新进展-联通支付与微信实现商户收款码互联互通!

最新动态

Baidu Comate帮开发者“代码搬砖”,2天搞定原先3周工作量

百度Geek说

企业号 6 月 PK 榜 智能代码助手

区块链浏览器开发

区块链开发团队DappNetWork

制造业企业智能化、数字化转型的几点建议

万界星空科技

数字化转型 数字化 制造业 mes 万界星空科技

前端开发框架发展概览

天翼云开发者社区

Vue 前端

发挥财务规划隐藏的超能力,实现企业业务与财务的协作

智达方通

企业管理 全面预算管理 财务管理 财务规划

工信部《工业和信息化领域数据安全风险评估实施细则(试行)》实行,行云管家数据产品助力企业数据安全

行云管家

信息安全 数据安全 数据安全管理

探索大模型技术及其前沿应用——TextIn文档解析技术

Yan-英杰

大模型 文档解析 文档解析技术

Web3 游戏周报(5.26 - 6.01)

Footprint Analytics

链游

深入剖析时序Prophet模型:工作原理与源码解析|得物技术

得物技术

时序数据库 源码剖析 大模型 企业号2024年6月PK榜 ptophet

拿到Offer了才知道,这家公司年终奖只有几百块~

王中阳Go

golang 面试 面经

什么是LLM大模型训练,详解Transformer结构模型

华为云开发者联盟

人工智能 华为云 PyTorch Transformer 华为云开发者联盟

淘宝商品详情API接口:轻松获取商品SKU信息,优化库存管理

技术冰糖葫芦

API boy API 接口 API 测试

Colm语言简介_架构_Jean-Jacques Dubray_InfoQ精选文章