Sophie Libkind: 'Resource Sharing Machines'

preview_player
Показать описание
Finding the Right Abstractions Summit 2021

Abstract: We’ll learn about different frameworks for composing dynamical systems, and conjecture about what this has to do with “thing-y-ness”.
Рекомендации по теме
Комментарии
Автор

How is this ultimately different from just function composition? A box is a function, the inputs are the input connections, the outputs are the output connections, one is simply composing functions in various ways which is best represented in some composition tree. One might have to break inputs and outputs up to compose functions in more complex ways along with some special utility functions to deal, say with "resource sharing"(a resource would be an output and possible input that controls an internal state). Essentially it is more easily dealt with as programs since one can more easily describe the connection states(as types). I just fail to see how this ultimately gives us anything new except for a more diagrammatic way(which is already essentially used) to diagram the hierarchical nature of functions/programs/machines.

Discrete vs continuous is solved, approximately at least, by turning discrete systems in to continuous or continuous in to discrete(necessary for computation and ultimately requires some ability to synchronize and hence one ends up with "clocks" and "locks"(mutexes to avoid race conditions)).

For more general machines one ultimately needs the detail of programming while for more specific tailored machines one might want a "special purpose "language"". Ultimately though I fail to see how this offers anything new. It is reinventing what already exists which is a common issue.

I would suggest to Sophie to go learn program in C++/D, assembly(possibly in some uC language), maybe C#, etc and program "real world" programs and then maybe some of those questions will be better understood. Essentially the issues described have already been tackled in those languages because any time any shared resource is used it will result in crashes or spurious behavior if not handled appropriately and there are several ways to deal with it. This issues comes when one is using multi-threaded apps but also even show up at the hardware level due to how CPU's are optimized and can reorder instructions.

jsmdnq
Автор

So if you take this big diagram that you're like, oh, I don't know what to do with it. I don't know how to understand it. And then I say, oh, but this connection is actually kind of machiny. So that might tell me I should really think about sort of these two as belonging to this is sort of a thing and this is sort of a thing. So that's my conjecture. And something that's neat about this formulation-- the reason why we sort of want resource-sharing and machines in sort of playing together is because we can think about doing this hierarchically or sort of at different levels. So maybe these boxes I've drawn are actually composed of smaller boxes where the connections between them, like this wire, is sort of a little bit thingy at one level. And then this is maybe thinginess-- or, sorry, machininess at a different level. So I don't know. You have some sort of different scales of thinginess. But this conjecture raises a lot of questions that I need to answer-- or many questions, some of which are like, how do I mathematize this mostly machininess?

mooncop
welcome to shbcf.ru