Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

The Blub Paradox

Name: Anonymous 2016-02-16 12:28

If Lisp is more expressive than C, why Lisp can be compiled into C and C cannot be compiled into Lisp?

Name: Anonymous 2016-02-17 21:40

It's only more difficult because C depends on the underlying machine representation and Lisp does not.

Lisp is hardware-agnostic. You can compile it to C, to Java, to Brainfuck, to Matlab, to more Lisp, whatever. It's easy to do because Lisp doesn't care exactly how you implement it: as long as the builtins are consistent with the internal memory model (which you, the implementer, define), everything is fine.

C assumes a von Neumann architecture with contiguous memory, registers, and a bunch of other shit that (luckily!) most hardware has already. In order to compile C to anything other than assembly or binary, you basically have to write your own virtual machine. Guess what: that is really tedious!

There, IHBTT. You happy?

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List