2024-06-24-Complexity Elision Pyramid
Complexity Elision Pyramid
Legend:
SCN means Solution Centric Notation (like a nano-DSL)
T2t means text-to-text transpilation (convert one text file into another text file - i.e. compilers, macros)
3GL means Third Generation Language - most popular programming languages, like Python, Rust, etc. are 3GLs. 3GLs are used to specify Production Engineering details, like order of operations, structure of data, etc.
IC means Integrated Circuit - hardware “chips” that contain many tiny transistors
...
N.B. Each layer describes a certain aspect of the problem space. Each successive layer builds upon the layer immediately below it in the pyramid like a low-level “assembler”.
I believe that we are in a position to build many SCNs using OhmJS and PEG technologies. SCNs should take about an afternoon, each, to build, therefore, one can build many SCNs for each project, where each SCN is specific to a project instead of being general purpose. In the past it was believed that build a programming language, or, even a DSL, was an arduous task that took many weeks/months/years to build. I believe that we can drastically change our approach to programming and problem solving by knowing that we can easily build many little languages - SCNs - for each project.
It is important to “free up the mind” to think deeply about the specifics of a problem space, instead of worrying about niggly implementation details that can be elided. The details are still there, but, they are pushed aside and handled at other (“lower”) levels. For example, opcodes and assembler are high level notations that free programmers up from having to deal with the details of how transistors are combined together into ICs to produce useful actions. See Also
References: https://guitarvydas.github.io/2024/01/06/References.html
Blog: https://guitarvydas.github.io/
Blog: https://publish.obsidian.md/programmingsimplicity
Videos: https://www.youtube.com/@programmingsimplicity2980
Discord: https://discord.gg/Jjx62ypR
Leanpub: https://leanpub.com/u/paul-tarvydas
Gumroad:
https://tarvydas.gumroad.com
Twitter: @paul_tarvydas