I stopped at step #1 with my Lambda Diagrams [1]. The bottom of that page links to all other graphical lambda calculus notations I know of (just added this one).
Had some issues trying to upload my own png's, maybe too big(?)
The red highlighting reminds me of electricity in the classic circuit problem game _Rocky's Boots_ on the Apple ][.
As I've posted in similar discussions: https://news.ycombinator.com/item?id=42051536
The problem here, as always is that there isn't an agreed-upon answer for the question:
>What does an algorithm look like?
The problem is expressiveness of such a diagram is bounded by the size of a screen or a sheet of paper, and once one starts to scroll, or can't see the entire flow at a glance, things get complicated.
The node/wire programming folks have this a bit rougher to the point that there are sites such as:
https://blueprintsfromhell.tumblr.com/
https://scriptsofanotherdimension.tumblr.com/
I prefer to work visually, but not sure if that's actually valid --- unfortunately https://www.blockscad3d.com/editor/ doesn't support all of OpenSCAD and https://github.com/derkork/openscad-graph-editor has problems with a stylus (I have to leave the Windows Settings app open to toggle stylus behaviour which is enough friction that I don't use it as much as I would otherwise).
There are promising tools though: https://nodezator.com/ and https://ryven.org/ are very cool.
https://blueprintsfromhell.tumblr.com/
What is link to some more background on the 'blueprint' app. I couldn't find it.
Most visual languages, support subroutines and modules/packages as well, no need to design a gigantic piece of spaghetti.
If anything, visual languages make it clear straight away when the code is a mess.
GraphSCAD at least affords an option to add an image to a module representation, preserving some of the visual aspect --- I believe OpenSCAD Graph Editor has that in the works (if it's not already done).
Piet https://www.dangermouse.net/esoteric/piet.html
Turnstyle https://jaspervdj.be/turnstyle/ https://github.com/jaspervdj/turnstyle
Markovjunior https://github.com/mxgmn/MarkovJunior
Cellpond https://cellpond.cool/ https://github.com/TodePond/CellPond https://www.youtube.com/watch?v=xvlsJ3FqNYU
Imagegram https://zaratustra.itch.io/imagegram
Color Code http://colorcode.bananabanana.me/ https://www.youtube.com/watch?v=5M5hy9xsqKc Color Code 2 http://colorcode2.bananabanana.me/ https://www.youtube.com/watch?v=tTvvX4sjZWw Splaty Code http://splatycode.bananabanana.me/ https://www.youtube.com/watch?v=gd_e85lAKOs (By Muril Polese https://github.com/murilopolese/ http://gallery.bananabanana.me/)
Alchemy Online https://maxbittker.github.io/alchemy-online/ https://github.com/MaxBittker/alchemy-online
Of course, it's difficult to play now, since the webpage [1], and steam version relied on flash, and you have to fiddle with a 3rd party flash reimplementation.
But its implementation of semiconductor behaviour is much better than wireworld's.
[1] https://www.zachtronics.com/kohctpyktop-engineer-of-the-peop...
I did find this part funny:
One interesting problem that I did not anticipate while imagining the language was that it turned out so purely functional and absolutely state-less, that it becomes impossible to implement a "print" statement, for to print is to change state, to expect some things to be printed in some particular order is to assume that some expressions will be evaluated in some order.
Isn't this just to say "not imperative"? Regardless, it does make me wonder how one would encode state... maybe introduce variables (icon + color?) and have individual statements ordered on one or both axes?And that is how control logic for anything from breweries to petrochemical plants is implemented! Fun stuff! I happen to work on the UI side of an FBD-based control system, so I float around this stuff day-to-day.
Starting out with the aggressive triple negative in sentence two!
We code in a 2D nature (rows and columns) but the flow is non-euclidean I guess
Every project like this starts off extolling that we are visual creatures, but this is a type of visualization we're not well suited to.
Does it look good? I don't think so.
All this "block programming languages" look promising, abstraction by black-boxing, doing boxes of boxes... I wonder if the implementations are bad, they are badly used, or the paradigm just does not work...
One thing to take into account, is that those things are typically used by people who have no idea how to program and abstract things. Maybe if somebody is good ad programming would not do a mess out of it; but then (s)he could just go ahead and write code. so.....
I must agree, LabView is terrible, not just because of that, but updates break everything, licensing, etc... just PITA
Before I abandoned my PhD at University of York, I was working with something called "RoboChart" and RoboSim [1], which I actually think might be more approachable, but it's pretty tied into the robotics semantics. A pet project I've been working on has been trying to adapt and extend RoboSim to something a bit more useful for the network and server world.