Programming, Math and Physics
https://mpov.timmorgan.org/i-built-a-ruby-parser/
Book: craftinginterpreters.com/
http://venge.net/graydon/talks/CompilerTalk-2019.pdf?utm_source=thenewstack&utm_medium=website&utm_campaign=platform
https://news.ycombinator.com/item?id=32780472
Recursive descent parsing library for Python based on functional combinators https://github.com/vlasovskikh/funcparserlib
https://lobste.rs/s/x0b8wo/practical_parsing_with_flex_bison
https://begriffs.com/posts/2021-11-28-practical-parsing.html bison flex
lark . http://blog.erezsh.com/5-lark-features-you-probably-didnt-know-about/
https://tomassetti.me/parsing-in-python/ python
https://craftinginterpreters.com/introduction.html Java and C
https://interpreterbook.com/ go
https://www.toptal.com/scala/writing-an-interpreter Scala
https://news.ycombinator.com/item?id=21092698 crafting interpreters
https://habr.com/ru/company/sberdevices/blog/597553/
https://medium.com/@vladimirkozhaev/antlr-an-informal-introduction-609f885a38f7
https://news.ycombinator.com/item?id=25386756
https://github.com/ashutoshbsathe/yacv
https://news.ycombinator.com/item?id=25498364
https://www.sourcetrail.com/
https://codemap.app/
https://analysis-tools.dev/
https://news.ycombinator.com/item?id=24221708
https://rotemtam.com/2020/08/13/python-ast/. Python
https://github.com/krlvi/jar-graph. Java
http://createyourproglang.com/
https://habr.com/ru/post/497402/ make your own language in Python
https://youtu.be/flVqPLkIK-E How to Create Your Own Programming Language -Part 1- Paradigm, Roadmap and Tools
https://cuelang.org/ Validate, define, and use dynamic and text-based data
https://koka-lang.github.io/koka/doc/kokaspec.html
picat-lang.org https://news.ycombinator.com/item?id=24608997
https://codingnest.com/modern-sat-solvers-fast-neat-underused-part-1-of-n/
https://habr.com/ru/company/mailru/blog/513290/
https://hacks.mozilla.org/2017/02/a-crash-course-in-just-in-time-jit-compilers/
https://carolchen.me/blog/jits-intro/ J
https://learnbyexample.github.io/gnu-bre-ere-cheatsheet/
https://blog.robertelder.org/regular-expression-visualizer/
https://lihautan.com/json-parser-with-javascript/ https://news.ycombinator.com/item?id=21772336 JavaScript
https://blog.gopheracademy.com/advent-2014/parsers-lexers/
https://chelseatroy.com/2019/11/11/building-a-parser/
https://siddhesh.in/posts/gcc-under-the-hood.html gcc under the hood https://deniskyashif.com/translation-using-syntactic-rules/ https://habr.com/ru/post/469213/ Parser combinator RUST https://habr.com/ru/post/462781/
https://www.booleanworld.com/building-recursive-descent-parsers-definitive-guide/ Recursive decendt parsers
https://news.ycombinator.com/item?id=23187239 Compiling classes
https://zserge.com/posts/cucu-part1/ small compiler
https://tomassetti.me/why-you-should-not-use-flex-yacc-and-bison/
https://news.ycombinator.com/item?id=22491536
https://www.sanity.io/blog/why-we-wrote-yet-another-parser-compiler
https://habr.com/ru/post/489534/
https://devlog.hexops.com/2021/zig-parser-combinators-and-why-theyre-awesome
http://dmitrysoshnikov.com/courses/parsing-algorithms/
https://news.ycombinator.com/item?id=24898210
https://tiarkrompf.github.io/notes/?/just-write-the-parser/
https://news.ycombinator.com/item?id=24837898
https://github.com/gnebehay/parser A Handwritten Math Parser in 100 lines of Python
https://news.ycombinator.com/item?id=24502293
https://stackoverflow.com/questions/5975741/what-is-the-difference-between-ll-and-lr-parsing
https://tratt.net/laurie/blog/entries/which_parsing_approach.html
https://matklad.github.io/2018/06/06/modern-parser-generator.html
https://rust-analyzer.github.io/blog/2020/09/16/challeging-LR-parsing.html
https://news.ycombinator.com/item?id=24480504
https://www.robertjacobson.dev/designing-a-pratt-parser-generator Pratt
https://www.drdobbs.com/cpp/building-your-own-c-interpreter/184408184
Better, Fewer, Syntax Errors for LR Parsers:
https://soft-dev.org/pubs/html/diekmann_tratt__dont_panic/
SQL to C via Scala:
https://www.cs.purdue.edu/homes/rompf/papers/rompf-icfp15.pdf
https://opensourc.es/blog/basics-multiple-dispatch/. Multiple Dispatch
https://www.backblaze.com/blog/whats-the-diff-programs-processes-and-threads/
There are the two types of memory available to a process or a thread, the stack and the heap.
It is important to distinguish between these two types of process memory because each thread will have its own stack,
but all the threads in a process will share the heap.
Threads are sometimes called lightweight processes because they have their own stack but can access shared data.
Because threads share the same address space as the process and other threads within the process,
the operational cost of communication between the threads is low, which is an advantage.
The disadvantage is that a problem with one thread in a process will certainly affect other threads and the viability of the process itself.
https://ollef.github.io/blog/posts/query-based-compilers.html
https://ncona.com/2020/06/create-diagrams-with-code-using-graphviz/ Graphviz
https://news.ycombinator.com/item?id=23475225
Developing lang in C https://www.youtube.com/playlist?list=PLvdK1vRmp8wMzH4w_8sQ30NKU3Bt4Cc-M&feature=share
Build JavaScript compiler in C: https://hacks.mozilla.org/2020/06/compiler-compiler-working-on-a-javascript-engine/
https://habr.com/ru/post/471860/
https://www.youtube.com/watch?v=QppWTvh7_sI Guido PEG talk
https://medium.com/@gvanrossum_83706/peg-parsers-7ed72462f97c PEG from Guido
https://medium.com/@gvanrossum_83706/building-a-peg-parser-d4869b5958fb PEG part 2
The Packrat Parsing and Parsing Expression Grammars Page https://bford.info/packrat/
https://news.ycombinator.com/item?id=30395775
https://www3.nd.edu/~dthain/compilerbook/ . Compiler Book
«https://tech.yandex.ru/tomita/doc/dg/concept/about-docpage/> . Tomita parser
https://www.youtube.com/watch?v=1axJDmK_pnE . Parser Combinators https://youtu.be/1axJDmK_pnE
https://engineering.desmos.com/articles/pratt-parser/ . Pratt parser
https://tomassetti.me/parsing-in-python/ Parsing in Python