diff --git a/ideas/asm.md b/ideas/asm.md index 00eb447..0da13fb 100644 --- a/ideas/asm.md +++ b/ideas/asm.md @@ -2,7 +2,7 @@ ## Step One: Engage Motor Neurons -Ok, ok, this has nothing to do with sporks. Assembly is a whole lot cooler than we give it credit for, -knowing it can be a major lifesaver. Ever wondered what the hell the was actually in your executable? -Ever had a program that didn't quite work, and you struggled to figure out why? +Ok, ok, this has nothing to do with sporks. Assembly is a whole lot cooler than we give it credit for, +knowing it can be a major lifesaver. Ever wondered what the hell the was actually in your executable? +Ever had a program that didn't quite work, and you struggled to figure out why? Ever wanted to squeeze a little more code onto your user's thimble-sized SSD? Assembly is here for you. diff --git a/ideas/languages.md b/ideas/languages.md new file mode 100644 index 0000000..c91e05c --- /dev/null +++ b/ideas/languages.md @@ -0,0 +1,25 @@ +# Languages: Why You Should Have a LISP + +## Software Autonomy and You + +If you really want to start from zero, how do you begin? At the very bottom of the stack, +computers speak machine code, often translated from assembly. The easiest way to get rolling +is with a lovely family of languages, often referred to as "concatenatives" or "stack languages". + +## Interesting content path +low-level programming walk through basic language/computer theory +- Explain a few simple assembly instructions + - typed operations vs typed data + - code as data as code +- Write a simple FORTH using stated assembly instructions + - memory management strategies + - stacks + - binary formats (ELF/PE32+/MachO) +- Write a LISP using that FORTH + - garbage collection + - metaprogramming +- Prolog, SAT Solvers, SMT Solvers +- Automata + - Game of Life + - parsing +- Solve world hunger