Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

Lazy is usually used to mean demand-driven, as opposed to input-driven, in my experience, so exactly the opposite of this, but different people mean different things. (Did a lot of my PhD on dataflow.)


These systems are a bit of both though. In compositing, unless you add a final "view" node, IIRC, node computations are not triggered.


I think, as parent implied, this is more of a semantic issue than any substantial disagreement. You are, in most instances of compositing systems of this style, correct that the computations are typically not triggered unless some view node is utilized. Additionally, if your view node is in the middle of some chain of nodes, only those nodes before the view would actually be performed. This is somewhat similar to the usage of lazy in regards to the operational semantics of programming languages. Again, as parent states, lazy 'evaluation' is basically demand driven computation. Python is not a lazy language, it utilizes eager evaluation by default. So in the sense that Pyflow seems to be a sort-of 'visual programming'/dataflow frontend for Python, I would assume that it is eagerly evaluating the code in the order of dependencies as determined by the graph.


I assumed pyflow nodes would be "lazish", not the code inside each node


People sometimes say ‘non-strict’ to mean ‘can be lazy but not required to be’.

I think Haskell is actually non-strict, and not lazy, for example. It’s important because hard to optimise otherwise!


and you know it got me thinking, languages are trees, and haskell tweaks it into DAG (shared call-by-need) .. evaluated one way, but in the context of UIs you get a larger graph set it seems, where any node can evolve and the consistency of the whole graph needs to be rebalanced. Just thinking out loud.


Programs as trees and graphs is a special interest of mine as well https://chrisseaton.com/truffleruby/basic-graal-graphs/.


Oh man, I'm trying to go back into parsing and compilation (and the usual tree/graph processing) right now. This is pr0n material :)




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: