创建一门简单的解释性编程语言并实现它的解释器

背景

最近刷到大佬的教程,跟着学一下

效果

开始时

输入姓名和年龄后

代码

自创编程语言SimpleScript: 自创一门简易脚本支持中文编程 (gitee.com)

解析

1.词法分析

将程序的每个字符串精准划分出来,形成多个单词Token

2.语法分析

将各段Token再次划分出来,形成多条语句Statement

3.语义解析

对每条语句进行解释执行,形成如上效果

结语

语法的部分比较简单,仅作参考。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/507.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android 查看ANR和Crash日志(adb bugreport)

今天测试那儿出了个ANR,我自己手机没问题,很烦,定位不了位置。 于是还是得用ADB连接来看一下,之前用,但是老是会忘记,今天总结一下。 ADB命令查看应用包名_adb查看包名命令_&岁月不待人&的博客-C…

TeeChart for.NET Crack

TeeChart for.NET Crack TeeChart for.NET为各种图表需求提供了图表控件,包括金融、科学和统计等重要的垂直领域。它可以处理您的数据,在各种平台上无缝创建信息丰富、引人入胜的图表,包括Windows窗体、WPF、带有HTML5/Javascript渲染的ASP.N…

【C++】string类模拟

文章目录 成员变量和查看接口迭代器(读和读写)operator[](读和读写)c_str()size() 构造函数用字符串构造用对象构造(两种方法)析构 赋值运算符重载扩容和调整reserve()resize()clear() 增删查改push_back()…

产业大模型刚开卷,京东跑进“最后半公里”

点击关注 文|姚 悦 编|王一粟 “京东一直在探索哪些产品、技术、场景可以真正把大模型用起来,在我们内部的场景中反复验证后,才决定在7月份对外发布,现在我们在零售、健康、物流、金融等业务场景里已经积累了一些经…

记一次阿里云被挖矿处理记录

摘要 莫名其妙的服务器就被攻击了,又被薅了羊毛,当做免费的挖矿劳动力了。 一、起因 上班(摸鱼)好好的,突然收到一条阿里云的推送短信,不看不知道,两台服务器被拉去作为苦力,挖矿去…

迭代读取文件

使用 torch.utils.data.dataset.Dataset 收集数据信息,创建数据集。 使用 import torch.utils.data.dataloader 创建一个可以批量迭代的数据载入器,并通过 for 循环批量读取所有文件的数据。 import torch.utils.data.dataset as dataset import torch…

光伏并网逆变器低电压穿越MATLAB仿真模型

使用MATLAB 2017b搭建 光伏逆变器低电压穿越仿真模型,boost加NPC拓扑结构,基于MATLAB/Simulink建模仿真。具备中点平衡SVPWM控制,正负序分离控制,pll,可进行低电压穿越仿真。 控制结构完整,波形完美&…

java学习路程之篇二、知识点、配置JAVA_HOME、跨平台、JVM、JRE、JDK

文章目录 1、Java背景介绍2、Java跨平台性3、JDK的下载和安装4、第一个Java程序5、HelloWorld案例详解6、JVM、JRE和JDK7、配置JAVA_HOME 1、Java背景介绍 2、Java跨平台性 3、JDK的下载和安装 4、第一个Java程序 5、HelloWorld案例详解 6、JVM、JRE和JDK 7、配置JAVA_HOME

MySQL(2)

建表 mysql> create table work(-> ‘部门号’ int(11) not null,-> ‘职工号’ int(11) not null,-> ‘工作时间’ date not null,-> ‘工资’ float(8,2) not null,-> ‘政治面貌’ varchar(10) not null default 群众,-> ‘姓名’ varchar(20) not nu…

ELK 企业级日志分析系统

目录 一:ELK 介绍 1、ELK 简介 2、filebeat 结合 logstash 好处 3、为什么要使用 ELK 4、完整日志系统基本特征 5、ELK 的工作原理 二:ELK Elasticsearch 集群部署 1、环境准备 2、部署 Elasticsearch 软件 (1)安装elasti…

在线考试系统

在线考试系统 简介 该系统由C#开发语言开发,数据库是sql server2016,前端用到的前端技术有Bootstrap,js,css等前端技术,同时用到的.Net Core MVC的技术框架。另外本系统也支持mysql,暂未调试。 该系统是…

计算机存储设备

缓存为啥比内存快 内存使用 DRAM 来存储数据的、也就是动态随机存储器。内部使用 MOS 和一个电容来存储。 需要不停地给它刷新、保持它的状态、要是不刷新、数据就丢掉了、所以叫动态 、DRAM 缓存使用 SRAM 来存储数据、使用多个晶体管(比如6个)就是为了存储1比特 内存编码…

Element-UI el-table属性row-class-name用法

文章目录 前言官方示例自定义条件样式设置背景颜色样式stripe属性 设置背景颜色样式设置字体颜色总结 前言 可以通过指定 Table 组件的 row-class-name 属性来为 Table 中的某一行添加 class&#xff0c;表明该行处于某种状态。 官方示例 代码如下&#xff1a; <el-table…

直播美颜SDK与智能美妆:技术融合的未来

对于许多直播主和观众来说&#xff0c;如何在直播中呈现最佳的外貌成为了一个重要问题。为了解决这个问题&#xff0c;直播美颜SDK与智能美妆技术的融合应运而生&#xff0c;为用户带来了前所未有的美妆体验。 简单来讲&#xff0c;直播美颜SDK可以理解为计算机视觉技术和人工…

重磅预告丨Fortinet Demo Day系列实战攻防演练来袭!

随着网络安全形势的日趋严峻&#xff0c;越来越多的企业遭受了勒索、欺诈等危害。在高昂的赎金、生产损失&#xff0c;以及名誉损害的恐惧中&#xff0c;企业已经谈“黑”色变。黑客是如何悄无声息的“越过”重重高墙、道道壁垒进入到生产环境、办公空间&#xff0c;并在内网疯…

hydra详解(仅供学习参考)

一、概述。 Hydra是一款非常强大的渗透工具&#xff0c;由著名的黑客组织THC开发的一款开源工具。 二、使用方法。 hybra基础语法&#xff1a; hydra 参数 IP 服务 参数&#xff1a; -l login 小写&#xff0c;指定用户名进行破解 -L file 大写&#xff0c;指定用户的用户名…

loki技巧 - 结构化log日志文本

将非结构化的log日志信息结构化为JSON格式&#xff0c;以方便在Grafana界面侧的浏览和查询。 0. 目录 1. 需求背景和描述2. 实现&#xff08;Promtail侧&#xff09;3. 注意事项4. 后记5. 参考 1. 需求背景和描述 最近几个月&#xff0c;部门内部开始尝试统一日志收集、查询统…

Zotero翻译插件“zotero pdf translate”——使用时出现广告的问题的解决办法

一、背景&#xff1a; 在Zotero上安装了“zotero-pdf-translate”插件来辅助翻译。今天忽然发现&#xff0c;在使用CNKI翻译引擎的时候&#xff0c;末尾被加上了广告&#xff1a; (查看名企职位领高薪offer&#xff01;--->智联招聘https***dict.cnki.net/ad.html) 如下&…

Netty网络编程

参考文档 https://zhuanlan.zhihu.com/p/550956053 https://zhuanlan.zhihu.com/p/514448867 BIO 读取数据有两个阶段 等待数据就绪&#xff0c;数据到达内核缓冲区读取数据(系统调用)&#xff0c;从内核缓冲区&#xff0c;拷贝至用户缓冲区 BIO两个阶段都会阻塞 BIO编程时&…

分布式数据库HBase,它到底是怎么组成的?

原文链接&#xff1a;http://www.ibearzmblog.com/#/technology/info?id3f432a2451f5f9cb9a14d6e756036b67 前言 大数据的核心问题无非就是存储和计算这两个。Hadoop中的HDFS解决了数据存储的问题&#xff0c;而HBase就是在HDFS上构建&#xff0c;因此Hbase既能解决大数据存…