So a WYTIWYG - WhatYouTableIsWhatYouGet parser, be like:
Give me all C regions.
Give me all preprocessor regions.
Give me all strings.
Give me all blocks.
Give me everything inside this scope.
! Fill out the table, or include a table thats already filled out (for when or if there is overlap between languages and a table can be used to evaluate both or wherever its included at), set up the language or make up a language to use for the keys pick the operations with the path for the next key-bank in the table and presto! :) The FSM will run the scoping depth table key operation identified routine making a single flat marked out location of "all of the things"! Without having to repeatedly rescan the original text, or navigate a bloated slow language restrictive dependent restrictive proprietary mess of a AST 💩glob. :(
^ I'm a simple man, literally when parsing thats EXACTLY all I want without the extras.. if thats what you want then this parser might just be your specific cup of tee. ☕🫖 (who says you cant get what you want? Fools do🎭 Don't pity the fool. I don't need semantic understanding. I don't need type checking. I don't need expression trees. I don't need a restrictive/pre-conceptualized/defined complete language model (and neither should you.). I need locations and scopes. Make my own shi. Beoch.)
.. finishing up for Node.Js make it in c++later, a user table text key match operation driven scope depth resolving lexical analyzing pattern transducer that deliberately generates a flat output representation in the form of "[ { key_id: number, src_idx: number }, { key_id: number, src_idx: number }, ..etc. ]" ..(and the bottom 8 bits or so of the key_id will be used to hold if its the FlexEncapsulator layering/stack, or the RizzEncapsulatee classical-stack, and when it is the last thing or a repeat of things within a FlexEncapsulator layering/stack scoping) to mark out/tag by key represented with an enum along with the src index it was at in the file, the start and end of scope, string, blocks, markup, anything with an opening and closing. Generates a flat output tape rather than a hierarchical AST blob.
I'm really making this for C language, to handle marking out the pre-processor and the c language in a single pass.. it does not evaluate anything, only mark up what is c or pre-processor in a single output that can be used to then pick out only the c or pre-processor specific parts from the single non-hierarchical AST blob. But also for Html, and CSS, and JavaScript, to identify:
"strings"
{blocks}
#if
#elif
#else
#endif
<div></div>
[square]
(paranth)
#region
[or(this{anything})]
#endregion
.. python, I'll add support for pattern matching tabulation spacing for scope and such later. Post it on Github, need to finish up starting a game engine and making my JonsScript Assembler will be the 1st 100% ECMA-262 complaint JavaScript implementation, and I'm starting to migrate over to my own ES is not an OS the OperatingSystem is a failed concept. (if the operating system was not a failed concept, then I would be able to type "Angled brackets" in this text field.. but I cant type "Angled brackets" in this text field, because this garbage called an OS is a literal joke. 🤷♂️)
[JonsScript] Then ES "JonsCode" an Environment System. Release JonsScript on the ES. JonsScript will be first JS to 100% ECMA-262(then making a better standard with useful bells and whistles) compliant cross platform Desktop/Mobile engine that will actually utilize 8/16/32/64bit CPU's for high performance data processing/gaming on the ES(not an OS) because I'm making a new language that is not "c language" I'm betting that "c language" will be be able to run within my cross hardware language it will be transpiling abstraction cost free magic*.
*magic: Magic isn't real, but pretty much like magic compared to the "modern OS". Haha, I'm making some really big bets, I already have my own JS engine and stretching it into a whole environment to run systems.. need to pull this all off flawlessly.. well getting their wont be flawless, but the product it could be close enough that it might as well be.
NOTE:
_ A. Operating Environment
_ B. Environment System ← an "ES" is not a thing yet, making this, not an "OS", its an "ES".
_ C. Operating System
Hardware → OE → ES → Kernel or OS or may not want a Kernel or OS, the ES has the OE validated/secure/functional for use thats covered unless you want another layer.
.. when the "Polyglot Markup/Scope Depth Parser" is done I'll put it on Github, or here in the desc if I can make it fit in the text field. I have a fancy logout for it, the parser runs off a couple steps/stages as a simple concept, attempt to make it easy to modify and add to it.
That's it. Full Playlist| 🔴 https://www.youtube.com/live/aZY7xtBh...