# rpp **Repository Path**: roundsheep/rpp ## Basic Information - **Project Name**: rpp - **Description**: 结合了C++和Lisp的新型国产开源编程语言 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 1 - **Created**: 2014-10-04 - **Last Updated**: 2024-11-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README  RPP是专为懒人设计的国产开源编程语言,支持无操作系统裸奔、编译成机器码、JIT、android、cocos2dx绑定、中文编程、闭包、惰性求值、JSON、Lisp的S表达式、内联汇编、伪代码、模板、宏、多重继承、元编程、反射、自省、指针、引用。 为什么需要它? 1.目前DIY操作系统一般使用gcc+nasm,RPP是编译型语言,抽象能力强过C,可直接内联汇编,不需要面对讨厌的AT&T汇编,绝对是您DIY操作系统的利器(支持GRUB从U盘或硬盘引导)。 2.RPP没有GC,所以理论运行速度和C++一样,可以作为lua的替代者候选(目前运行速度与luaJIT相当接近)。 3.RPP既可以编译运行又可以解释运行,既可以用静态类型又可以用动态类型。语法层支持C++、JS、Lisp、python、asm混合编程,一种语言,五种语法。 4.RPP自由度极高,完全开源,您可以随意DIY运算符的优先级,增加新运算符,增加修改“内置类型”,甚至于int、double这些基础类型都是由用户自定义的,一切由您做主。 5.它的语法相当简洁,支持N种省略语法,最大程度减少您的击键次数。 6.RPP支持多种花括号风格,无论是python的无花括号风格还是K&D风格,或者是花括号单独占一行,随你喜欢。 7.它是C++的山寨版,如果您习惯了C++的语法,又需要一种类似C++的脚本语言,似乎选择RPP是一个明智的决定。 8.既然它是C++的山寨版,所以RPP几乎不需要学习成本,很多C++和C的代码经少量修改都可以移植过来,甚至能够写出同时兼容RPP和C++的代码。(目前兼容50%的C++语法,70%的C语法) 9.又因为它是C++的山寨版,RPP所有数据类型和C++二进制兼容,无论是静态链接还是动态链接,想怎样就怎样。 10.RPP源代码文件可以使用任意后缀,在RPP的世界里,一切都是代码。 11.支持中文编程是必须的。 RPP支持多种运行方式,方法如下:(各种运行方式支持的特性请参考RPP_1.87.pdf) JIT: 1.cd到bin目录 2.命令行敲入 rjit example\1.h JIT打包发布(生成独立EXE): 1.cd到bin目录 2.命令行敲入 rpack example\1.h 3.成功后会生成example\1.exe,可脱离RPP环境运行 解释运行: 1.cd到bin目录 2.命令行敲入 rpp example\1.h 编译运行(生成EXE): 1.cd到bin目录 2.命令行敲入 build_run example\1.h 编译不运行(生成EXE): 1.cd到bin目录 2.命令行敲入 build example\1.h 执行语法检查(不生成任何文件): 1.cd到bin目录 2.命令行敲入 rcheck example\1.h 裸奔(无操作系统运行): 1.cd到bin\nasm\ 2.敲入 bin cell.h (成功后会生成 cell.bin) 3.修改 menu.lst 将引导文件改为 cell.bin 4.使用 bootice(或其它工具)制作 grub4dos 引导扇区 5.将 cell.bin、menu.lst、grldr 三个文件拷贝至U盘或硬盘根目录 6.推荐先使用虚拟机进行测试 cocos2dx绑定运行(win32): 1.cd到bin目录 2.命令行输入 rcc cocos\flappy.h(需要VS2012运行库和最新的opengl驱动) cocos2dx绑定运行(android): 1.安装cocos\rcc.apk 中文编程: 1.命令行敲入 chcp 65001 (因为RPP使用utf8) 2.然后在命令行标题栏上点击右键,选择"属性"->"字体" 3.将字体修改为True Type字体"Lucida Console" 4.点击确定将属性应用到当前窗口 5.删除bin\rinf\optr.txt 6.将bin\rinf\optr2.txt重命名为optr.txt 7.反注释bin\rsrc\basic.h中的第一行 import "chs.h" 8.cd到bin目录 9.命令行敲入 rpp example\40_1.h 解释运行方式可以关联.h文件:(这样就不用每次敲命令行) 1.右键点击bin\example下任意一个.h文件,选择“属性” 2.点击“更改” 3.点击“浏览” 4.找到bin\rpp.exe并点击“打开” 5.选中“始终使用选择的程序打开这种文件” 6.点击两次“确定” 7.之后可以直接双击后缀为.h的源文件运行RPP程序 IDE编辑代码: 1.运行bin\ide\SciTE.exe 2.点击File->Open 3.选择bin\example\1.h,点击“打开” 4.按F5运行程序(F7打包发布) Windows窗体模式:(WinMain) 1.cd到bin目录 2.命令行敲入 rjit_win example\win.h 3.或者使用IDE打开win.h,按Ctrl+F5运行或者Ctrl+F7打包发布 使用scite可以自动补全代码,但不如Visual Assist的智能补全。 Visual Assist智能补全请看视频演示: http://www.tudou.com/programs/view/40Ez3FuqE10/ 编译RPP源码: 1.确保VS2012安装了update4补丁 2.打开proj\rpp.sln 3.按F7,成功后会生成bin\rpp.exe 低版本VC++编译RPP源码:(VS2005、VS2008、VS2010) 1.新建控制台解决方案 2.添加rpp.cpp、rlib\rclass.cpp、rlib\rsock.cpp三个文件 3.设置项目属性为多字节字符集 4.设置运行库为“多线程MT”(可选) 5.按F7,成功后会生成bin\rpp.exe 自动测试example下所有例子:(如果您修改了编译器源码,请运行这个批处理) 1.双击bin\check_all.bat RPP没有协议,任何人可以随意使用、发布、修改、改名。 QQ交流群:34269848 E-mail:287848066@qq.com