- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 rust, c/c++, python, php, go
面向内存编程:C面向编译器编程: C++面向第三方库编程: python面向mysql编程: PHP我其实很喜欢七天理解多种范式这本书, 上面写着,学习汇编语言可以让你更好的领悟到函数式的精髓. 每个人多某一种语言的看法是根据过往经验来判断的, 但问题是某个语言的精髓是什么? 某个语言的核心是什么?一家之言姑且听之.C语言星星之火可以燎原, 刚开始学的时候感觉良好, 到了指针就完...
2020-03-16 21:05:54 324
原创 leetcode二叉树探索
前序遍历中序遍历后序遍历层次遍历今天刷了该标签的题, 自己速度还是慢, 总结一下经验分享给大家.该标签所有的题都围绕着四个遍历.特别是用递归遍历二叉树,一定要牢牢掌握.套路如下 def visit(node){ //前序 visit(node.left) //中序 visit(node.right) ...
2020-03-05 21:48:28 180
原创 用rust写一个玩具解释器12(eval&object)
好像没啥可写的, 好吧是我太菜了:(eval函数中绝大部分都在eval套娃.那么套娃递归的终结符在哪里呢?是最基本的true,false,数字,字符串...GC: 自己太菜了,不会以后肯定会写的, 奥里给!object该语言不是面向对象而是基于对象其实就是结构体&枚举,如何添加数组对象假设现在我们不支持数组, 那如何添加数组呢?首先明确数组如何创建,赋值,取...
2020-03-04 13:23:24 298
原创 用rust写一个玩具解释器11(eval)
今天终于进入到了eval的环节:)我们的玩具解释器也快进入尾声了.我们现在已经有了ast了, 如何获取到值呢?下一步是编译还是直接计算呢?直接计算吧.如何计算呢?我们采取遍历树的方式, 即在树上行走的eval, 还是采用递归的.一般听到递归就会谈虎色变, 但是递归却是用有穷来描述无穷的法宝.程序中递归一定要有一个终止操作, 要不然就是死归了.而且最终一定要到终止操作上.首先看我们...
2020-03-01 17:22:41 409
原创 用rust写一个玩具解释器10(parser)
介绍完中缀和前缀表达式那么今天就把parser的代码全部贴出来可跳过use crate::ast::ast::ASTNode;use crate::ast::ast;use crate::mylexer::lexer;use crate::token::token;use std::collections::HashMap;pub enum Pri { LOWEST, ...
2020-03-01 13:02:13 327
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人