如何开发一门编程语言
一、构思
首先,你要考虑这是动态语言还是静态语言,然后去想它面向什么,如Web开发,面向对象的程序设计等。还有它的语法,下面列出了面向对象的程序设计语言所需要的语句:
语句 | 用途 |
---|---|
if (表达式1):执行语句1;else:执行语句2 | 判断如果表达式1,则执行语句1,否则,执行语句2 |
cout | 输出 |
cin | 输入 |
int (变量名);char(变量名); | 声明变量 |
+ - * / | 计算 |
(函数类型) (函数名){执行内容} | 定义函数 |
return | 返回值 |
while | 循环 |
break | 退出循环 |
continue | 重新循环 |
class (对象名) | 创建类 |
#include <头文件名> | 导入文件 |
二、写代码
现在,你差不多明白了如何写代码,开始吧!
如何开发一门编程语言相关推荐
- 用 C 语言开发一门编程语言 — 字符串与文件加载
目录 文章目录 目录 前文列表 字符串 读取字符串 注释 文件加载函数 命令行参数 打印函数 报错函数 源代码 前文列表 <用 C 语言开发一门编程语言 - 交互式解析器> <用 C ...
- 用 C 语言开发一门编程语言 — 条件分支
目录 文章目录 目录 前文列表 条件分支 排序函数 等于函数 if 函数 递归函数 源代码 前文列表 <用 C 语言开发一门编程语言 - 交互式解析器> <用 C 语言开发一门编程语 ...
- 用 C 语言开发一门编程语言 — 基于 Lambda 表达式的函数设计
目录 文章目录 目录 前文列表 函数 Lambda 表达式 函数设计 函数的存储 实现 Lambda 函数 函数的运行环境 函数调用 可变长的函数参数 源代码 前文列表 <用 C 语言开发一门编 ...
- 用 C 语言开发一门编程语言 — 变量元素设计
目录 文章目录 目录 前文列表 变量 变量语法规则 变量的读取和存储 将变量加入 Lisp Value 体系 变量的计算 变量的定义与赋值 异常处理优化 源代码 前文列表 <用 C 语言开发一门 ...
- 用 C 语言开发一门编程语言 — Q-表达式
目录 文章目录 目录 前文列表 Q-表达式 读取并存储输入 实现 Q-Expression 语法解析器 读取 Q-Expression 实现 Q-Expression 的函数 Head & T ...
- 用 C 语言开发一门编程语言 — S-表达式
目录 文章目录 目录 前文列表 使用 S-表达式进行重构 读取并存储输入 实现 S-Expression 语法解析器 实现 S-Expression 存储器 实现 lval 变量的构造函数 实现 lv ...
- 用 C 语言开发一门编程语言 — 异常处理
目录 文章目录 目录 前文列表 异常捕获 定义 Lisp Value 函数 前文列表 <用 C 语言开发一门编程语言 - 交互式解析器l> <用 C 语言开发一门编程语言 - 跨平台 ...
- 用 C 语言开发一门编程语言 — 抽象语法树
目录 文章目录 目录 前文列表 抽象语法树的结构 使用递归来遍历树结构 实现求值计算 抽象语法树与行为树 前文列表 <用 C 语言开发一门编程语言 - 交互式解析器l> <用 C 语 ...
- 用 C 语言开发一门编程语言 — 语法解析器
目录 文章目录 目录 前文列表 编程语言的本质 词法分析 语法分析 使用 MPC 解析器组合库 安装 快速入门 实现波兰表达式的语法解析 波兰表达式 正则表达式 代码实现 前文列表 <用 C 语 ...
- 用 C 语言开发一门编程语言 — 跨平台的可移植性
目录 文章目录 目录 前文列表 实现跨平台的可移植性 使用预处理器指令 前文列表 <用 C 语言开发一门编程语言 - 交互式解析器l> 实现跨平台的可移植性 理想情况下,我希望我的代码可以 ...
最新文章
- Jquery zTree实例
- python3 image模块_python3之成像库pillow
- ptpd和ptp4l 软件核心算法
- Keras多GPU训练指南
- [NOIp 2013]货车运输
- Console-算法[]-数组求最大值和最小值(只能遍历一次)
- 如何洞察行业中的应用场景?(下篇)
- 微信分享时,描述内容怎么换行
- oracle 之 安装后pl/sql登录报ora-12154
- python源码文件以什么格式结尾结尾_查看python源码,发现里面的函数都以pass结尾,那么意义何在?...
- linux系统层次结构_Linux文件系统层次结构问题和解答
- 加密的病历单(信息学奥赛一本通-T1137)
- 【Java每日一题】20170302
- linux 迁移mysql目录_linux默认mysql迁移目录
- SpringBoot之Interceptor拦截器注入使用
- 灭屏取消过温减流功能
- iOS当期时间和日期选择器
- C# 如何检测UDP是否被占用_如何悄悄检测微信好友是否被删除?
- 成都以前的计算机学校图片,成都计算机中职图片介绍
- yarn的安装及使用教程