Live data from Hacker News

Scoped Propagators

orionreed.com

21–30 of 32 posts

Re: Scoped Propagators

#21

Earlier quoted context omitted.

Why would it be good when a node is data, since the data is always changing and the function would stay the same?

the Scoped Propagator model is based on two key insights: 1. by representing computation as mappings between nodes along edges, you do not need to know at design-time what node types exist. 2. by scoping the propagation to events, you can augment nodes with interactive behaviour suitable for the environment in which SPs have been embedded. It's pretty specific to UI similar to the examples, but in terms of these big…

So you're talking about a spreadsheet but without the organization of having cells in a grid?

Re: Scoped Propagators

#22
post #5

Earlier quoted context omitted.

All but two of the videos are broken for me on both Chrome and Firefox. I would love to see the rest! I encourage people to read the original Propagator Networks paper by Alexey Radul (advisor: Prof. Gerald Sussman of SICP) referenced in the Prior Work section. It's full of fascinating ideas. https://dspace.mit.edu/handle/1721.1/54635

Would love to know which videos are broken and any other details so I can try and fix that!

None of the videos played for me in Safari 16. =(

Re: Scoped Propagators

#23

Earlier quoted context omitted.

I only glanced at the article, but it also reminds me of Dataflow programming, incrementally updated materialized views, etc. (all the same concept at the end of the day, and yes, very similar to observables)

It remind you of dataflow programming because it's literally the same thing.

Specifically, the application of dataflow to GUIs, which was well-researched at Adobe by Sean Parent, Mat Marcus, et al in the early 2000s called the "Adam" and "Eve" languages. There's more work at TAMU & University of Turku (by Jaakko Jarvi) under the name "Espresso", or something like that.

Basically, the "scopes" become constraints, and they use a hierarchical constraint solver to propagate state changes to the GUI elements, real-time, using a declarative dataflow programming model.

Re: Scoped Propagators

#24
What is separating this concept from dataflow programming, perhaps with slightly different semantics and interaction patterns? (I reckon my understanding might be limited so I'm genuinely seeking enlightenment)

Re: Scoped Propagators

#25
This feels very similar to how database table triggers work. You define trigger conditions, and then the trigger on table A tells table B how to update itself. The tables store only data.

Re: Scoped Propagators

#26
Wow! That's neat! There are a lot to explore beyond interactive objects.

One of the first thing that comes to mind was is about Smalltalk, and the idea that it is about the messages and not the objects.

The next thing to come in mind is about how this allows for composition of interactions. I think it can enable highly local customization that can still receive software updates from upstream. I am thinking about how one of the problems with extensible specifications (such as XMPP) eventually lead to an ecosystem where feature updates cannot propogate easily; and we might see something like that in the Fediverse

Re: Scoped Propagators

#29

Some of the videos are broken for me (using Firefox). Otherwise looks pretty neat. Compared to FRP it is perhaps a bit more declarative in the definition of scopes, but otherwise seems equivalent. I'm interested in more details on this. I'm also a bit confused by > This model has not yet been formalised, and while the propagators themselves can be simply expressed as a function ... I have not yet found an appropriate…

> Compared to FRP it is perhaps a bit more declarative in the definition of scopes, but otherwise seems equivalent. FRP systems are typically limited to acyclic graphs. The system in this article allows for cycles.

Every FRP system I've used allows cycles.

Re: Scoped Propagators

#30
post #29

Earlier quoted context omitted.

> Compared to FRP it is perhaps a bit more declarative in the definition of scopes, but otherwise seems equivalent. FRP systems are typically limited to acyclic graphs. The system in this article allows for cycles.

Every FRP system I've used allows cycles.

Such as?
Post reply on HN