Code path:
https://github.com/bluesilence/Lisp/tree/master/clojure/projects/room-escape
As I have been a fan of room-escape games, there have always been a desire to make my own story of a roo...
分类:
Web程序 时间:
2014-10-05 17:44:38
阅读次数:
269
Code Path:
https://github.com/bluesilence/Lisp/blob/master/clojure/projects/room-escape/src/room_escape/script.clj
Extract Story to TXT
In order to move the story from .clj into .txt, I lever...
分类:
Web程序 时间:
2014-10-05 17:36:38
阅读次数:
214
Using Marmalade: ```lisp (require ‘package) (add-to-list ‘package-archives ‘("marmalade" . "http://marmalade-repo.org/packages/")) (package-initialize) ``` Using MELPA: ```lisp (require ‘package) (...
分类:
其他好文 时间:
2014-10-04 07:21:46
阅读次数:
229
Lisp只用原子和表就构建了整个世界,其实表和数组是等价的(不完全)。JS的关联数组是红黑树,关联数组并不是C数组的超集,因为C数组可以当成一片连续内存使用。也许有用的不是数组,而是运算符[],C++只用重载[]就实现了数组。[]只是一个函数调用而已,一种函数调用的简写形式。这种简写或者说语法糖非常重要,因为它让代码的可读性更好。[]是一个运算符重载,即a[1]会变换为标准的函数调用operato...
分类:
其他好文 时间:
2014-09-29 14:19:40
阅读次数:
175
目前无论是Lisp还是Javascript(C++就更不用说了),递归深度都远远低于可用内存大小,而且栈一旦分配就无法挪动(有指针似乎无解),这个问题的根源在于call指令会把下一指令的地址入栈。我经过几年的思考终于发现,可以把C++的内存模型完全放在堆上,也就是说进行call之前先new出调用函数所需要的空间,而把返回地址作为参数传递进去。这样就从根源上解决了此问题,那什么尾递归就是个渣,完全没...
分类:
其他好文 时间:
2014-09-29 13:14:50
阅读次数:
196
更新如下:
1.全新JIT引擎,极致的编译和运行速度。
2.精简Lisp内核,无限的动态扩展能力。
3.完全开源,真正的开源不需要协议。
4.集成IDE,编辑、编译、运行一体化,支持代码自动完成。
5.兼容50%的C++语法,70%的C语言,编译器本身使用C++编写,但其90%的源码都可以自我编译。
源码下载地址:
http://pan.baidu.com/s/1bn...
分类:
编程语言 时间:
2014-09-26 13:57:08
阅读次数:
297
学校嵌入式实验室开始招人了, 我也想了很久, 自己该走什么方向, 嵌入式? 服务器? 网站? 安卓?仔细想想, 这些东西我连一个基础都不会. 我会了什么, C/C++语法, linux基本命令 这些能做什么.我整天都好像没有方向的学习. 重新审视了下自己, 基础不牢固. 至少计算机组成, 操作系统,...
分类:
其他好文 时间:
2014-09-26 10:15:38
阅读次数:
145
以前读《黑客与画家》,其中对Lisp语言的赞美和推崇,让我燃起学习Lisp语言的强烈冲动,但很快发现在实际工作中应用的场景很少,出于功利心最终放弃了。直到上周未在家里读完了《大教堂与集市》,此书再次建议学习Lisp。我不能再视若无睹了。打算放下功利心,将Lisp视为营养丰富的土壤,从中汲取宝贵的思想...
分类:
其他好文 时间:
2014-09-24 15:46:57
阅读次数:
148
1、在Lisp中,数据和程序都是以同样的方式表示;它们都是由空格分隔 的、由括号括起来的单词、数字或者其他列表的列表。2、列表前面的单引号:表示不要对这个列表做任何操作,而仅仅是按其原样。如果一个列表前没有引号,则第一个符号表示计算机要执行的命令,用来对列表的其余部分进行操作。3、对一个符号表达式求...
分类:
其他好文 时间:
2014-09-23 18:47:15
阅读次数:
181
强大的编程语言Scala 是一门非常强大的语言,它允许用户使用命令和函数范式进行编写代码,因此,编程时你可以使用常用的命令式语句,就像我们使用 C、Java、PHP 以及很多其他语言一样,而且,你也可以使用类似 Lisp 语言中函数式语句,还有,你可以混合使用这两种风格的语句,就像 Ruby 或 G...
分类:
其他好文 时间:
2014-09-22 14:07:22
阅读次数:
453