摘要: 好文章! "nikic" 介绍了如何向PHP添加新的语法特性, "原文" 写的非常精彩,具体是添加 语法功能,使最终实现: "in" { RETURN_TOKEN(T_IN); } 为了让Zend引擎能识别 这个记号,在 中加入: %token T_IN "in (T_IN)" 重新生成 系列源文件 阅读全文
posted @ 2016-03-02 23:38 Srggggg 阅读(526) 评论(0) 推荐(0) 编辑
摘要: 了解了PHP7的一些特性,搭建PHP7源码编译环境,并运行官网这些新特性的代码。 在64位平台支持64位integer 在64位平台支持64位integer,长度为2^64 1 字符串。 "更详细查看" 抽象语法树 抽象语法树是语法分析之后产物,忽略了语法细节,是解释前端和后端的中间媒介。新增抽象语 阅读全文
posted @ 2016-03-02 23:30 Srggggg 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 跳表的原理就是利用随机性建立索引,加速搜索,并且简化代码实现难度。具体的跳表原理不再赘述,主要是看了levelDB有一些实现细节的东西,凸显自己写的实现不足之处。 去除冗余的key template struct SkipList::Node { explicit Node(const Key& k 阅读全文
posted @ 2016-03-02 23:22 Srggggg 阅读(623) 评论(0) 推荐(0) 编辑
摘要: 记录为iOS9上的APP支持Universal links遇到的一些问题。 在Web服务器上传apple app site association文件 必须支持HTTPS获取配置文件 文件名后不加 后缀 必须在 根目录 下,例如官网地址为 ,那么必须通过 访问到该文件 为列表,列表元素中的 是数组, 阅读全文
posted @ 2016-03-02 23:08 Srggggg 阅读(2829) 评论(0) 推荐(1) 编辑
摘要: ###goroutine之间的同步goroutine是golang中在语言级别实现的轻量级线程,仅仅利用**go**就能立刻起一个新线程。多线程会引入线程之间的同步问题,经典的同步问题如生产者-消费者问题,在c,java级别需要使用锁、信号量进行共享资源的互斥使用和多线程之间的时序控制,而在gola... 阅读全文
posted @ 2014-09-04 00:14 Srggggg 阅读(1676) 评论(0) 推荐(0) 编辑
摘要: ###求值从何始?开始思考求值的实际意义是在自己要实现一个解释器的时候,那个时候很头疼,一直在思考求值的自然含义,怎样求值,求值会遇到的问题。甚至思考值本身的意义是什么? 这可能是个很令人不屑一想的问题,试想在使用编程语言的时候,大多数时候是在思考算法,实现业务逻辑,架构设计,思考这个语言本身的问... 阅读全文
posted @ 2014-05-11 18:30 Srggggg 阅读(701) 评论(0) 推荐(1) 编辑
摘要: 编程语言更迭至今,几乎没有人没有用过一门不用垃圾回收的语言,一方面因为C之类的语言内存管理较为困难,更重要的是因为语言越高级,越注重实际的业务逻辑,而关于内存管理的代码频繁夹杂在业务中,并不那么自然。### 没有垃圾回收的编程体验 #include #include struct node { ... 阅读全文
posted @ 2014-05-03 11:08 Srggggg 阅读(462) 评论(0) 推荐(0) 编辑