C++
roundsheep
这个作者很懒,什么都没留下…
展开
-
VS2012的变态优化,双循环变单循环
VS2010也是一样原创 2014-06-05 11:14:33 · 1692 阅读 · 0 评论 -
超越lua的神语言
神语言(god)是基于lua和RPP的新一代编程语言为什么需要它?1.很多人不喜欢lua的语法,god的语法更像C2.god支持元编程、闭包、协程3.凡是lua支持的特性god也支持,lua不支持的宏god也支持,因此god比lua强大4.god可以使用lua库,甚至允许god和lua混合编程5.god是最快的脚本语言之一,性能与C接近,因为god基于luaJIT6.原创 2014-10-06 14:48:39 · 3404 阅读 · 1 评论 -
计算理论的重大突破,无限深度递归
目前无论是Lisp还是Javascript(C++就更不用说了),递归深度都远远低于可用内存大小,而且栈一旦分配就无法挪动(有指针似乎无解),这个问题的根源在于call指令会把下一指令的地址入栈。我经过几年的思考终于发现,可以把C++的内存模型完全放在堆上,也就是说进行call之前先new出调用函数所需要的空间,而把返回地址作为参数传递进去。这样就从根源上解决了此问题,那什么尾递归就是个渣,完全没原创 2014-09-29 11:33:48 · 2086 阅读 · 1 评论 -
数组为什么这么有用?
Lisp只用原子和表就构建了整个世界,其实数组是表的超集(略作思考就能发现,无需证明)。JS的关联数组是红黑树,关联数组并不是C数组的超集,因为C数组可以当成一片连续内存使用。原创 2014-09-29 12:03:37 · 1430 阅读 · 0 评论 -
符号变换引擎(Symbol Transform Engine - STE)
在写编译器的过程中,我意识到编译其实是一种符号变换,比如C语言编译成机器码,其实是C源码文件中的符号变换成EXE的16进制符号,这和中文翻译成英语的语言翻译器没什么区别。 每个程序员都有自己喜欢的编程语言和编码风格,所以世界上就出现了大量的编程语言,各种编程语言之间相互通信并不那么简单,C语言是个例外,所以C语言适合做接口。 那么能不能写一个通用的引擎充当各种语言的中间翻译层呢原创 2014-10-09 12:39:44 · 1513 阅读 · 0 评论