AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

Cling 旨在提供一款高性能的 C++ REPL

  • 2015-05-25
  • 本文字数:631 字

    阅读完需:约 2 分钟

Cling 是一款交互式 C++ 解释器,以 LLVM 和 Clang 为基础构建,其目标是通过超越编码 - 编译 - 运行 - 调试这个惯常的 C++ 工作流程提供生产力的飞跃。

Cling 提供了一个读取 - 求值 - 输出循环(REPL),类似常见的 Unix shell,并支持 Emacs 绑定。使用 Cling 可以测试 C++ 代码片段,而不需要创建文件、包含头文件等等。使用 REPL 的主要好处是可以在极短的时间内测试一个想法,而不需要等待构建系统编译代码。REPL 在学习一门语言时也非常有用,因为它让试用语言特性变得更简单。

ROOT 是 Cern 的数据分析框架,Cling 即是由该框架背后的团队开发完成,作为现有的命令行 C/C++ 解释器 CINT 的一个替代方案。目前,在粒子物理学领域中,许多实验中都用到了ROOT,包括大型“强子对撞器(Large Hadron Collider)”。

Cling 可以解析 Clang 所能解析的一切内容,并且还支持一些 CINT 特有的 C++ 扩展。ROOT 开发团队列举了Cling 提供的主要好处,其中包括使用生产级解析器、JIT 允许不使用封装器直接进行库调用、使用独立的解析器和执行引擎。

Cling 在 GitHub 上开源。用户既可以使用每日构建的二进制包进行安装,也可以从源代码构建。官方的一体化构建脚本支持基于Unix 的系统,而Windows 上的手动构建过程可以借助CMake 实现。此外,Gallagher Pryor介绍了针对ARM 平台构建Cling 的步骤,这比针对x86 平台进行构建要复杂得多,因为开发团队没有在他们的构建脚本中直接提供这种支持选项。

查看英文原文: Cling Aims to Provide a High-performance C++ REPL

2015-05-25 10:304307
用户头像

发布了 1008 篇内容, 共 412.2 次阅读, 收获喜欢 346 次。

关注

评论

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

LeetCode题解:1237. 找出给定方程的正整数解,二分查找,详细注释

Lee Chen

JavaScript 算法 LeetCode 二分查找

开源SPL助力JAVA处理公共数据文件(txt/csv/json/xml/xsl)

石臻臻的杂货铺

Java 开源

HashMap每次扩容时,为什么都必须是2的N次方?

做梦都在改BUG

2023年中国直播电商发展洞察

易观分析

零售 直播 电商

冰河指南AI技术社区基于ChatGPT正式启动运营

冰河

人工智能 程序员 AI 架构师 ChatGPT

架构实战营模块9作业

张建闯

架构实战营

6 理解业务概念和业务组件

涛哥 数字产品和业务架构

企业架构 业务架构

别再找借口了!找不到工作就好好学一下这份16W字Java面试合集

做梦都在改BUG

Java java面试 Java八股文 Java面试题 Java面试八股文

「 Java基础-对象 」一篇文章讲清楚Java开发中如何更优雅的创建对象

小刘学编程

Java Builder 序列化 对象创建 new

StudioOne6免费试用版下载及版本功能介绍

茶色酒

StudioOne6 StudioOne

Pandoc API 上手指南

面向工资Coding

chatGPT:探讨如何实现自动化测试场景

夏兮。

自动化测试 selenium ChatGPT

SpringBoot 容器刷新前回调ApplicationContextInitializer

做梦都在改BUG

Java spring Spring Boot

云原生的基建:我理解的可观测性和OpenTelemetry

agnostic

可观测性 OpenTelemetry

【立哥】【每日一个小知识】企业家和管理者有什么区别?

Lee Chen

CleanMyMac2023电脑版免费下载教程

茶色酒

CleanMyMac X2023

阿里内部消息中间件合集:MQ+Kafka+体系图+笔记

做梦都在改BUG

Java kafka MQ 消息队列 消息中间件

盘点和总结秒杀服务的功能设计及注意事项技术体系

做梦都在改BUG

Java 秒杀系统

CorelDRAW Graphics Suite2023最新版本号

茶色酒

CorelDRAW 2022 CorelDraw2023

户外交通信息led显示屏有以下特点才正规

Dylan

安装 LED显示屏 户外LED显示屏

嵌入式ARM设计编程(五) 实现信号的FIR滤波操作

timerring

arm

LeetCode题解:1237. 找出给定方程的正整数解,枚举,详细注释

Lee Chen

算法 LeetCode

模块七作业

Ryan

架构

Ubuntu18.04编译ZLMediakit支持webrtc

Geek_pwdeic

WebRTC

Java高手速成 | Java web 实训之投票系统

TiAmo

Java Java web

CleanMyMac2023测试版功能介绍

茶色酒

CleanMyMac X CleanMyMac X2023

聊聊如何利用redis实现多级缓存同步

做梦都在改BUG

Java redis 缓存 多级缓存

面试官:浅谈一下Redis分布式锁存在的问题

做梦都在改BUG

Java

Guitar Pro8吉他软件最新版安装下载教程

茶色酒

Guitar Pro8

LeetCode题解:1237. 找出给定方程的正整数解,双指针,详细注释

Lee Chen

LeetCode 算法、

架构训练营第10期模块7作业

Geek_4db2d5

Cling旨在提供一款高性能的C++ REPL_C++_Sergio De Simone_InfoQ精选文章