Kurt StephensNerd Up! | ||||||||||||||||
|
The only way to implement the future is to avoid having to predict it. -- Piumarta
Fighting entropy one day at a time... The Unreasonable Effectiveness of Computing
In 1960, the physicist Eugene Wigner published an article titled The Unreasonable Effectiveness of Mathematics in the Natural Sciences , arguing that the way in which the mathematical structure of a physical theory often points the way to further advances in that theory and even to empirical predictions, is not a coincidence but must reflect some larger and deeper truth about both mathematics and physics. Is computing the deeper “truth” about mathematics and physics and reality in general? Is the true nature of reality computational? — The universe as cellular automation operating on simple rules at very small discrete scales giving rise to emergent properties at larger scales. Ruby DataMapper : dm-more Gem cannot be installed
dm-more depends on merb_datamapper (!?!) version 0.9.3 which does not appear to exist yet: ++ gem install dm-more ERROR: Error installing dm-more: dm-more requires merb_datamapper (= 0.9.3, runtime) Not sure what to do about it. LL source on github, LL Design Talk Slides
The source for LL is available at http://github.com/kstephens/ll/tree/master. Also located there are the slides from my June 2008 talk at the Chicago Lisp Users Group on the design of the LL object-oriented Scheme interpreter: http://github.com/kstephens/ll/tree/master%2Fsrc%2Fll%2Fdoc%2Fll_system_... Paul Graham: Beating the Averages (with Lisp)
This has been around for a while but I think its important enough for me to make another link to it: http://www.paulgraham.com/avg.html Parameterized Word Tagging in Latently-Typed Languages
AbstractI have been interested in optimal low-bit tag schemes on machine words in latently-typed languages. There are different schools of thought on how to handle the trade-offs between Fixnums (integers smaller than word size) and allocated objects. Ian Piumarta’s libid object library is a very simple prototype-based object system with unresolved method delegation. It is used in the Pepsi/Coke COLA system (available at http://vpri.org/fonc_wiki/index.php/Sources) as the basis for all object representations and meta-behaviors. libid assumes that a reference to an object’s method table, or “vtable” resides at the word before the object’s address. Scheme Implementation: tak Benchmarks: Ikarus wins!
Performance of running the following Scheme code:
(define (tak x y z)
(if (not (< y x))
z
(tak (tak (- x 1) y z)
(tak (- y 1) z x)
(tak (- z 1) x y))))
Results: (tak 18 12 6) (tak 30 15 9) (tak 33 15 9) (tak 40 15 9) ikarus 0.25 sec chicken 1.41 sec (precompiled) oaklisp 2.63 sec mzscheme 2.65 sec scheme-r5rs 5.89 sec guile 7.91 sec larceny 10.35 sec LL 12.93 sec Ikarus is burning up; LL needs some heat. :) Postgres and Ruby: Blocking LISTENs for NOTIFY
http://devblog.famundo.com/articles/2006/12/07/improving-postgres-listen... Unfortunately this hack blocks all threads. It should use rb_thread_select(), not select(). |
||||||||||||||||
Recent comments
5 days 17 hours ago
3 weeks 1 day ago
3 weeks 1 day ago
6 weeks 2 days ago
6 weeks 2 days ago
8 weeks 2 days ago
8 weeks 5 days ago
8 weeks 5 days ago
8 weeks 5 days ago
27 weeks 7 hours ago