4 ms·
Dataflow programming works well for many a visual artist (shader graphs), musician (max/pure data) and CAD engineer (rhino's grasshopper) Grasshopper is meant
by jazzyjackson 4y ago
Dataflow programming works well for many a visual artist (shader graphs), musician (max/pure data) and CAD engineer (rhino's grasshopper)
Grasshopper is meant to parametrically generate 3D objects but it was so good at splitting and recombining tables of data that were being continuously updated that I started using it for general purpose text manipulation.
the ENIAC was a dataflow machine before it was a stored program machine btw
- astrange 4y agoIt does, but my favorite dataflow based video editor (AVISynth) is a text-based programming language with an unusual evaluation model, the programs themselves aren't visual. I guess the most popular dataflow language in the world would be Verilog? But that's not visual. I don't know much about how it works professionally though.
- jazzyjackson 4y agoNever heard of AVISynth, looks really useful thanks, I edit videos sparingly and painfully with ffmpeg It's a good distinction to draw, that dataflow is separate from the editor interface. I suppose Excel is a visual dataflow editor as well.
- djmips 4y agoI've never used Verilog but was curious about it and now that you mention it's a non visual dataflow language, a lightbulb went off. Thanks a million. That implies that somebody somewhere makes a dataflow visualizer for Verilog. I'll have to look for one.
- unconed 4y agoMost data flow programming environments cannot represent lambdas, and this is why the graphs always end up turning into spaghetti: you don't actually have tools to reduce repetition in the graph's structure, using the graph itself. They are successful in artist and music contexts because the graphs tend to be simple pipelines at heart. Having dealt with sufficiently complex grasshopper graphs, I disagree that it's good at arbitrary list processing, certainly compared to ordinary list operators and iterators in code. My conclusion is that a dataflow environment that does allow for lambdas and proper n-way forking would necessarily have to be an effect system in the FP sense. It's a data flow graph that computes its own continuation and which has no fixed or preset topology. It can rewire itself based on the data flowing through it.
- djmips 4y agoDo you know why the aspect of debugging a data flow programming environment is rarely considered when designing them? In my experience it's not just missing lambdas but the very practical matter of introspection / effectively reverse engineering someone's work is so much harder in data flow programming environments as they are currently generally designed.
- jiriro 4y agoCould you please elaborate how to use Grasshopper for text manipulation?