首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

再探 Parser 和 Parser Combinator

在几年前的文章《Policy Engine 的前世今生》里,我谈到了自己探索如何生成高效的表达式求值的工具的整个过程。我先是使用 JISON(javascript 的 Flex/Bison)做了一个解析器(parser),后来又用 Elixir 自己的宏编程进行了优化,让单个表达式的验证从 200+ us 提升到 20+ us。最近无意间看到了 Guido van Rossum 大神的文章 [1],讲他探索 PEG 解析器的历程(Python 3.9 已经实现了新的 PEG parser [2])。于是,这个周末,我花了一个晚上,尝试了用 Rust 下的 PEG 解析器 — pest 重新实现了 policy 表达式解析器部分,为了更好地对比 pest 和 Rust 下的另外一个神器 nom 的效果,我也同时实现了 nom 下的 policy 表达式解析器。

01
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    R语言之列线图的绘制应用

    线图(AlignmentDiagram),又称诺莫图(Nomogram图),它是建立在多因素回归分析的基础上,将多个预测指标进行整合,然后采用带有刻度的线段,按照一定的比例绘制在同一平面上,从而用以表达预测模型中各个变量之间的相互关系。其优势在于可以直接利用图形推算出某变量的取值,如患者的指标得分或生存概率等。它在医学领域中的应用由来已久,常见的有百分位列线图和概率列线图等。百分位列线图是确定个体某指标的测量值在总体中的百分位数;概率列线图是确定某个体特定事件的发生概率,该特定事件可以是疾病的发生、复发以及预后(如死亡)等,往往由多因素二分类回归或COX比例风险模型求得。列线图是回归方程结果的可视化,常用于逻辑回归或COX回归的结果展示,依据回归的结果,按照特定的比例画出多个线段,通过做图能够便捷地推算出某个体的发病风险或生存概率。

    04

    【Rust日报】2021-08-23 UltraOS获第一届全国大学生操作系统比赛一等奖

    2021第一届全国大学生操作系统比赛的比赛结果公布了,哈工大(深圳)的李程浩,宫浩辰,任翔宇获得了内核实现赛道的一等奖,指导教师为夏文老师和江仲鸣老师。他们用Rust语言设计实现了基于RISC-V64的多核操作系统UltraOS,支持qemu和k210平台运行,在比赛过程的多个评比阶段排名第一。项目网址 https://gitlab.eduxiji.net/ultrateam/ultraos https://github.com/xiyurain/UltraOS 项目使用GPL3.0协议,欢迎开发者使用该项目进行学习。项目使用了洛佳等开发者的RustSBI 2021.03.26版本,以及吴一凡等开发者的rCoreTutorial-v3 2021.03.26版本(清华大学计算机系2021 OS课实验指导教程)。这也说明了,基于开源社区的模式,采用Rust开发操作系统等系统软件是Rust语言的一种发展趋势。

    02
    领券