Add languages starting point

This commit is contained in:
Colin Davidson 2022-05-02 16:52:32 -07:00
parent 252c5a19a0
commit c6f9664950
2 changed files with 28 additions and 3 deletions

25
ideas/languages.md Normal file
View File

@ -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