I tried to scribble down notes as fast as I could during this call and then are a bit of a mess… My apologies! These don’t reflect what Conal said – just what I was able to get down while trying to keep up.
haskell improves understanding but in C I have to struggle to maintain the original understanding
tensor flow is all about graph construction but it’s totally irrelevant to function optimization
ML is not about graphs
semantics not syntax. immutability not mutability
heart of programming is not language. the point of notation is denotation. denotation needs to be super clear, question of authoring tool
the api has no accomidations to authoring of operationality, same for implementation
mutation is manual garbage collection. non modularity. lazy eval is dual of garbage collection. lazy is when birth happens, and garbage is about death. we want to delay birth and accelerate death. mutation means nobody can access this old thing I;m cahnging. it’s an optimization of garbage collection. –> ask for person who said this
when peopke are trianed operationally, they dont notice how awkward mutation is
7 is a property of 3+4 but not the other way around
it is ok to build a programming environment / debugger not effect the semantics. the PE must access more than the semantics, such as the runtime
the math expression is expression not result. it will reveal syntatic distinctions that semantics dont recognize
dana scott nailed it by inventing domain theory by showing recursive functions are fixpoint with least fixpoint: haskellbooks with denotational semantics
trick: there are no recursive functions, only recursive defintions. recursiveness can only be the property of a defition
every function can be consgtructed via fixpoint but most don’t need it
function goes from syntax to sematnics. can’t go back so they are isomorphic which means they have same properties, but syntax has no intersting properties or equivalences
debuggers need source code, not just semantics.
optimization is based on equivalnces of sematnics. gives a differernt equivilent in some way: not syntatically
people think if you want performance you need operational but it’s exaclty wrong
he complies haskell to hardware and it’s so much faster than sequantial
my pitch on placeholder and then at the end abstract, recur… when he programs, he plays with concrete and then abstracts… how to make a UI for that generalization process… text in editor is what we have… I personally believe the essense of FP is not sequantiality, discreteness, texuality, but if you took those from imperitive programming there would be nothing left because the core is sequencing events…
check out tbag where frp came out of. networked. continuous, constraint based, constraint solver: on functions of time. in 1991, ran well. networking was not part of programming model
fp is being, imperitive programming is doing. Conal said this first.
is anyone doing denotationally denotational multi user work?
good meta strategy: simplest non trivial expample that gets to heart. he likes multiplayer button
how to solve it: if there’s a problem you cant solve, theres a simpler you can. find it
when he can, he prototypes in code. often it works out the denotation is executable. it’s often slow but now always. then I do multiple implementation of the same API. most respect the denotaiotn, can do this using homomorophisms. right now I have 6 or 8 implementations of the convolution work. the early ones are what the thing means as functions. make as polymorphic as possible. leverage haskell with rich type system: more polymorphic, less bugs, fewer possible implementation will typecheck and the correct is one of them. need the typesysytem to discard most of the wrong ones. in javascript, it would be no help at all.
denotation of multiuser apps maybe in haskell?
sometimes I make it more polymorphic than I know how to benefit from but the immediate benefit is it reject my wrong attempts, but then it later shows me more generalized use-cases
when I see patterns I abstract and it becomes more obscure and people complain but then it’s less concrete but then it’s so much broader and I see how it unifies things, which tickles me
behvaiors don’t “happen on any computer” rather than just being. I have thought about these but not since late 90s at Microsoft Research.
humans cannot react to internal models. I cannot react to your mouse click. things can only impact my retina or senses. Always time delay. Time delay is a small problem. Adding complexity but leaving problem unsolved. How does information come to me? The information in me is only in my being? key question: how do we explain propagation of information through medium?
I see reality as conscioussness, but we’re all in the same contianer. mutually recursive computation function includes what everybody is recieving computing and generating and includes everything happening in medium which distorts. I tried over and over to come up with simple general semantic model but haven’t succeeded yet.
what we call electrons are manifestations of the electron field and there’s only one in the universe, and it’s just a manifestation of a shared field permeating the universe. Same for every fundamental partical.
We are immersed, sharing a medium and influcing each other across time and space. Are electrons are all tiny slices of the same thing. Find the large thing that you can describe at once in maybe a recursive way…
maybe there aren’t multiple things interacting. all one thing.
distances and places
the path of extending FRP for perspective
FRP is half. the output half. I describe what it is, how it moves, color, but what it doesn’t handle is why it is. doesn’t explain influences. behavior is a video recording, can’t be influenced. when you speed up a video of a child playing with kitten, the child isn’t going to react differently, only faster
shot by a shrink ray gun. I wouldn’t behave the same but smaller. I’d be freaked out because rest of work is bigger. I want to take an interactive thing and when I speed it up or move it, it reacts to the world the opposite. if you make a video smaller, they won’t react to a smaller world.
interactive thing: perception to behvior. transform interactive thing: perception translated inversely and behivor normally.
what does this have to do with propogation? when we move me in space when we are talking, and we can’t see each other because speed of light, I want the propogation of info to be part of the semantic model so because we’ve modeled the way the medium / particpiants then we can change not just the result but their perception…
universe has decided on finate propogration of info (light) or slower in other mediums. and we don’t have access to info outside ourselves.
einstein is about speed limit on information (not light)
always a beautiful answer for everything, but it may just be hidden for a while. people who say “pragmatically” are so silly partly because math and pragmatics aren’t in conflict
https://en.wikipedia.org/wiki/Paul_Dirac. antimatter because his equations
notes public: could get feedback before I publish or make clear it’s perception of what he’s saying
next talk: at least another one and we’ll see at the end of the next one if I want another… at some point it seems like diminishing returns so we can see how it goes
podcast: https://futureofcoding.org/ yes! and send him specific