3 ms·
What disgusts me is all the "C is faster" talk. Common Lisp was used with bare metal on a particular type of machine. In fact, the Movitz OS still deals with ba
by omouse 17y ago
What disgusts me is all the "C is faster" talk. Common Lisp was used with bare metal on a particular type of machine. In fact, the Movitz OS still deals with bare metal but on x86 and it's so so strange to see a bunch of hex mixed with Lisp code.
- mahmud 17y agoCommon Lisp is sometimes frighteningly more bare-metal than C. I spent all last night moving stuff from kernel-space, into user space, messing with them in Lisp and sending them back up stream to the networking stack. By hand :-) In C, even though you work with low-level memory regions and system primitives, you're not interacting with them. By the time you see side-effects the process has long exited. In Lisp you can have open descriptors floating around in your shell where you can echo and read stuff to them; you can share a working buffer with a unix system call or signal, and see it get filled, changed and emptied! To realize that you can layer higher-level conceptual tools over these primitives, including the entire CLOS metaobject protocol, is something that's utterly gorgeous. See what iolib does to Unix, specially see the multiplexing framework; that's right, first class CLOS classes as wrappers for poll, select, epoll and kselect; your choice. Writing specializing methods for system calls is something no C programmer could ever imagine, much less enjoy ;-)