News for hackers. Stuff that matters.
Re:Learn C, Then Learn Computer Science by UNIXgod on Sunday February 09, 2014 @02:32PM (#7206743)
Lean C when you need to grok how memory works in computing. Learn Scheme to grok the science of computing. Learn BSD when you want to understand operating systems and the network stack. Grok engineering when you write a scheme->c translator running on BSD.
Re:Learn C, Then Learn Computer Science by hobbyist on Sunday February 09, 2014 @05:48PM (#7207734)
Could you elaborate more or give some references on the second and third part? I am done with the first. I seriously need some profound knowledge on second and third, which a lot of people like you talk about. I need to put a plan to get there too. Scheme to C looks fun though :-) . Where should I start first with?
Re:Learn C, Then Learn Computer Science by gamegoblin on Sunday February 09, 2014 @11:16PM (#7209086)
If you want to implement Scheme in C, I'd take a look at Scheme From Scratch (http://michaux.ca/articles/scheme-from-scratch-bootstrap-v0_...)

It's pretty excellent for learning how to implement a simple language in C.

Re:Learn C, Then Learn Computer Science by pjmlp on Monday February 10, 2014 @03:17AM (#7209752)
Do yourself a service and write the Scheme compiler in Scheme itself, doing direct assembly code generation.

http://scheme2006.cs.uchicago.edu/11-ghuloum.pdf

Also a nice way to learn about bootstraping compilers.

Generating code code for another OS without Scheme support is just a matter of having your compiler cross-compile to the other OS. Then use the fresh backed compiler to re-compile your compiler in the new OS.

Re:Learn C, Then Learn Computer Science by banachtarski on Sunday February 09, 2014 @02:51PM (#7206856)
This feels highly prescriptive.
Re:Learn C, Then Learn Computer Science by anaphor on Sunday February 09, 2014 @02:59PM (#7206905)
It's mostly true though, especially about BSD. The BSD TCP/IP stack code is used for teaching about network stack implementations, and Scheme is extremely useful for exploring theoretical ideas.