Syntax is the Problem

Isiah Meadows isiahmeadows at gmail.com
Sun Nov 5 19:06:46 UTC 2017


You may be interested in [this][1]. It's actually not that uncommon in
childrens' programming, animation, and other less technical needs for
scripting. Also, consider [Node-RED][2], which is also a visual
platform for the Internet of Things (with a JS core, but you rarely
need to actually dive into JS for most things).

[1]: https://en.wikipedia.org/wiki/Visual_programming_language
[2]: https://nodered.org/
-----

Isiah Meadows
me at isiahmeadows.com

Looking for web consulting? Or a new website?
Send me an email and we can get started.
www.isiahmeadows.com


On Sun, Nov 5, 2017 at 8:22 AM, Michael Lewis <mike at lew42.com> wrote:
> Raul-Sebastian Mihăilă just made a post here about some mixin syntax.  I
> didn't read it (sorry).
>
> But, it got me thinking about a concept I've been thinking for years:
> syntax is the problem, and there's a better solution.
>
> If you define syntax as a human <--> computer language (a human-readable and
> computer-readable form of text), you necessarily need a very strictly
> defined syntax.  One missing curly, and you're f'd.
>
> Duh, we all know this.  Hang onto your pants for a second, let's explore an
> alternative.
>
> What if we edited scripts more directly in AST form (abstract syntax tree).
> Developers could implement their own UI to manipulate this AST.  There are
> many, many benefits to this, I'll get to in a second.
>
> First, let's remember what everyone in the JS community is doing right now:
> running their code through transpilers.  (I refuse to do this, that's why
> I'm unemployed - I strongly dislike the concept).  What is a transpiler?
> It's an unofficial middleman that interprets the syntax, converts it to an
> AST, performs transformations, and then returns the AST to syntax form.
>
> Suddenly, scripting in AST form doesn't sound so crazy.
>
> Clearly, you wouldn't be writing JSON.  We would be using a GUI to create
> the AST.  And this is the greatest benefit: moving away from syntax, and
> moving to a GUI.
>
> Then, instead of babel plugins that provide alternative syntax, you could
> have plugins that provide alternative experiences.
>
> What would designing a class look like, if using a GUI?
>
> Click [ create new class ]
> Click [ add new method ]
>
> Or, click the [ extend ] button next to an existing class...
>
> This is the future.  I have to go eat breakfast, but I'd love to discuss
> this future if anyone is interested...
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>


More information about the es-discuss mailing list