Skip to content

fjfzeagle/zExpression

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

  zExpression 句法编译器+解释器

  技术体系解释:
  在编译原理的技术体系中,凡是处理文本化的代码前,都需要做一次预处理,其中我们常说的语法,语法糖,都是一种预处理程序
  词法:词法是对文本关键字,数字,符号,进行分类整理,最后形成词法树,并且严格遵循顺序化处理原则
  申明:在预处理代码中,申明部分,叫做申明树,申明树又依赖于词法顺序预处理,因为对词法预处理是一种简化手段
  句法:在经过了申明预处理以后,是对代码表达式的单行逻辑操作进行处理,这一步叫句法,取为zExpression句法编译器是我从曾经撰写的编译器中特意剥离出来的解决方案,它可以独立出来分发和使用,可以实用数字化预处理,图形图像,科学计算等等领域,也可以作为学习提高自己的手段

  核心思路
  实现zExpression采用的是对等复杂化原则,面向解决编译器问题而编写,复杂度相比于常规程序会高许多,因为解决了最终问题,代码在命名和堆结构上也看不出漏洞,所以它是成熟句法解释器方案

  zExpression特点
  完整的单步原子化操作
  完整的符号优先级后处理
  能预处理字面错误,并反馈错误发生在哪
  能识别浮点和整数的自然数写法
  在编译以后,能形成原子化op代码,可以通过stream高速载入并运行,不限制cpu类型,可以兼容手机程序


  更新日志
  首发代码创建 于2004年 创建人qq600585
  最后更新于2014年 可以兼容fpc编译器和最新的delphi xe,包括ios,osx,android,linux,win32

  有问题请来信
  by600585 qq邮箱

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Pascal 100.0%