国产编程语言R++ V1.5发布
R++ v1.5内核改动较大,下面是一些主要变化:
1.使用PJIT(Pseudocode Just-In-Time),编译速度大幅提高,但运行效率远远不如C++,不过R++将在下一版本支持RJIT(Real Just-In-Time),理论上RJIT的运行速度和C++完全相同,而编译速度却比C++快得多。
2.强大的元编程支持,元函数可以直接访问实函数的变量
3.完整的反射和自省机制,解释器和R++代码几乎融为一体
4.字符串常量统一使用utf8(如果需要在控制台输出中文请参考rpp.pdf修改控制台的编码)
5.完整的模板函数支持,模板函数不仅可以作为类的成员,还可以动态生成
6.可变参数支持
7.内部列表多改为红黑树,动态调用效率大幅提高
8.方便的调用外部DLL接口(R++所有数据类型和C/C++二进制兼容)
9.暂不支持跨平台和生成机器码,如果需要这些功能请暂时使用v1.1
|
特性 |
R++ |
C++ |
Java |
Lisp |
|
模板 |
√ |
√ |
× |
× |
|
宏 |
√ |
不太安全 |
× |
√√ |
|
运算符自定义 |
√ |
仅重载 |
× |
仅前缀 |
|
语法简洁 |
简洁 |
不太简洁 |
较简洁 |
极简洁 |
|
内联汇编 |
√ |
√ |
× |
× |
|
指针 |
√ |
√ |
× |
× |
|
元编程(非模板) |
√ |
× |
× |
√ |
|
动态编译 |
√ |
× |
√ |
√ |
|
模块(包) |
v1.1支持 |
× |
√ |
√ |
|
内置并行通讯 |
× |
× |
× |
× |
|
依赖解释器 |
双运行模式 |
不依赖 |
依赖 |
依赖 |
|
国产 |
√ |
× |
× |
× |
以上列举了几种语言的关键特性,可以看到R++的确像C++和Lisp的综合体,不过目前R++无论是运行速度还是成熟度,都无法和这些主流语言竞争。
下载地址:
http://pan.baidu.com/share/link?shareid=2588214458&uk=3120889058
国产编程语言R++ V1.5发布的更多相关文章
- 热烈庆祝国产编程语言R++1.8研发成功
R++是专为懒人设计的国产编程语言.支持无操作系统裸奔.编译成机器码.android.cocos2dx绑定.中文编程.闭包.惰性求值.JSON.Lisp的S表达式.内联汇编.伪代码.模板.宏.多重继承 ...
- 亿能测试白盒安全测试模板V1.0发布
亿能测试白盒安全测试模板V1.0发布http://automationqa.com/forum.php?mod=viewthread&tid=2911&fromuid=21
- RDIFramework.NET平台代码生成器V1.0发布(提供下载)
RDIFramework.NET平台代码生成器V1.0发布(提供下载) RDIFramework.NET(.NET快速开发整合框架)框架做为信息化系统快速开发.整合的框架,其目的一至是给用户和开发 ...
- 启明星手机版安卓android会议室预定系统 V1.0发布
启明星手机版会议室预定系统 V1.0发布 在手机里输入 http://www.dotnetcms.org/e4.apk 或者扫描二维码下载 用户打开系统,可以实时查看所有会议室状态 点击会议室名称,可 ...
- Kubernetes v1.16 发布 | 云原生生态周报 Vol. 20
作者:心贵.进超.元毅.心水.衷源.洗兵 业界要闻 Kubernetes v1.16 发布 在这次发布中值得关注的一些特性和 Feature: CRD 正式进入 GA 阶段: Admission We ...
- Delphi MlSkin V1.1 发布啦! 它能让你的程序拥有像QQ一样多彩炫丽的外观!
http://bbs.csdn.net/topics/390740239 本帖最后由 u014161811 于 2014-03-24 09:46:40 编辑 QQ皮肤透明TEdit透明TMemo图片按 ...
- Rust v1.39发布 - 这个编程语言真不一般!
https://zhuanlan.zhihu.com/p/90612241 今天(2019-11-07)Rust终于发布了期待已久的v1.39版本,增加了重量级的async/await关键字支持.Ru ...
- ComponentOne Studio for Enterprise 2015 v1 全新发布
ComponentOne Studio 即将发布2015年的第一个版本.2015 v1版本聚焦于优化性能.提升数据可视化能力.加强数据管理以及更人性的输入方式及报表解决方案. 免费下载试用 WinFo ...
- 物联网操作系统Hello China移植mile stone之一:移植基础版本V1.76发布
Hello China V1.76版发布,这是向ARM系列CPU移植的基础版本.相对V1.75版,该版本主要做了如下的一些调整: 1. 通过宏定义的方式对内核实现了模块化,开发者可以通过开启或关闭预 ...
随机推荐
- CSS Hack代码与浏览兼容总结
关于CSS Hack的东西能少尽量少吧.发现这篇文章我写得太复杂了,所以重新精简了一下,把代码粘贴到jsfiddle上,方面修改代码和维护. 1, IE条件注释法,微软官方推荐的hack方式. 只在I ...
- 【grunt整合版】学会使用grunt打包前端代码
grunt 是一套前端自动化工具,一个基于nodeJs的命令行工具,一般用于:① 压缩文件② 合并文件③ 简单语法检查 对于其他用法,我还不太清楚,我们这里简单介绍下grunt的压缩.合并文件,初学, ...
- C#学习日志 day10 -------------- problem statement
Revision History Date Issue Description Author 15/May/2015 1.0 Finish most of the designed function. ...
- Windows2008RT搭建VPN服务器
总结一下2008系统搭建VPN的步骤和过程,自己有个人网站和服务要通过互联网发布出来.服务器放在自己家里,宽带是民用的.也就产生了服务发布的一些问题.用无法映射出真实的公网IP,或是一些其他内部的问题 ...
- 【Howie玩docker】-windows下玩docker
Windows下安装toolbox一直没成功,于是投机取巧,用虚拟机手工打造玩docker的方法. 步骤: 安装虚拟机,安装centos 在win下建立共享文件夹,假如是 f:/share 在cent ...
- 简单实现计算Edit Distance算法
最近因为工作需要,学习了NLP的相关知识,简单动手实现了一下计算Edit Distance的算法,就是计算一个字符串要变成另一个字符串需要的代价,这其中采用Levenshtein方式,即规定一个插入和 ...
- jQuery easyUI Pagination控件自定义div分页(不用datagrid)
一般后台管理页面分页是通过datagrid加Pagination分页,但是如果前台页面没有用表格,例如博客的文章列表从上到下一般是到div分页, 这时如果还要用Pagination,则可以这样: 页面 ...
- css引入讲解及media
引用Css的几种方式: 一.@import <style type="text/css" media="screen"> @import url(& ...
- asp.net软件测试学习
ormaping类是,将数据操作封装起来的一种数据操作方法,在测试的时候,如果说,insert之后对obj对象赋值赋值,每个属性应该对应自己的objDataRow["REGISTERID&q ...
- HTML之学习笔记(六)添加链接
html添加链接所用的标签为<a>标签 语法: 定义:从当前页面,跳转到指定页面或文件的一个标签 <a href="URL">热点文字 ...