首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
编译原理
订阅
嘿嘿_哈哈
更多收藏集
微信扫码分享
微信
新浪微博
QQ
8篇文章 · 0订阅
🚀 实现一个简单的JS解释器
这次来尝试使用JS解析执行JS吧。虽然看上去没什么用但是能够对代码的执行更加清晰也不免是一件好事。 真要说的话可能在一些"小程序"之类的场景有用处,另外则是能够将这个思路套用到其他地方,比如某种情况下自定义一种语法然后使用JS执行。 不要需要注意的是解释器和编译器在很多地方是相…
JavaScript 实现超小型语法编译器
本篇文章是笔者精读 the-super-tiny-compiler 的源代码后的总结,笔者特别推荐大家去读,否则看此篇文章容易一头雾水。 首先,建立对 ast 抽象语法树的初步了解,大家可以在 astexplorer 这个网站上输入一段 javascript 代码,在右侧面板中…
「 giao-js 」用js写一个js解释器
这是分析和理解句子的第一阶段。 词法分析是由词法分析器完成的,词法分析器会扫描(scanning)代码,提取词法单元。 词法分析器将代码分解成 Token 后,会将 Token 传递给解析器进行解析,我们来看下解析阶段是如何工作的。 Javascript 在语法中是一个主语名词…
Kotlin写一个解释器(2)---语法分析
语法 之前的文章中我们写了一个简单的词法分析器,具体见文章(Kotlin写一个解释器(1)---词法分析),有了词,那么如何将这些词组合成正确的句子呢?这里就是语法分析要做的了,首先说什么是语法,简单
编译原理实战三:语法分析之 怎么消除左递归、怎么确保正确的优先级和结合性JS版?
在编译原理:语法分析实战纯手工实现一个公式计算器中已经讲解了如何初步实现一个简单的公式计算器,并直观地获得了写语法分析程序的体验,对语法分析有了已经的认识。 本篇文章主要是解决上篇文章中关于怎么消除左递归,怎么确保正确的优先级和结合性等问题 不过在课程开始之前,先来简单地温习一…
编译原理实战二:语法分析之 纯手工实现一个公式计算器JS版
通过本篇文章的学习你可以掌握语法分析的原理和递归下降算法(Recursive Descent Parsing),并初步了解上下文无关文法(Context-free Grammar,CFG)。 本篇内容借鉴自极客时间编译原理课程,有兴趣的可以去购买课程啊,本篇主要是希望更多的人可…
编译原理实战一:如何用JS实现一个词法分析器?
词法分析的工作是将一个长长的字符串识别出一个个的单词,这一个个单词就是 Token。而且词法分析的工作是一边读取一边识别字符串的,不是把字符串都读到内存再识别 其实,我们实现词法分析器的过程,就是写出正则表达式,画出有限自动机的图形,然后根据图形直观地写出解析代码的过程。 我们…
编译原理二:编译的基础知识
词法规则:规定了字母表中那些字符串是单词符号,单词符号一般包括:关键字、标示符、常量、运算符、界限符。我们用正规式和有限自动机理论来描述词法结构 和进行词法分析 语法规则:规定了如何从单词符号来形成语法单位。现在多数程序语言使用上下文无关文法来描述语法规则。 语义对于一个语言来…