Profile avatar
tomasp.net
Assistant prof at Charles University. Interested in new ways of thinking about programming and history & philosophy of computing. Previously at University of Kent and @cst.cam.ac.uk.
62 posts 416 followers 105 following
Regular Contributor
Active Commenter
comment in response to post
An interesting summary of envisioned use cases and things that people actually ended up doing:
comment in response to post
On implementing languages based on their spec. How it started: "Extending Python is easy if you know some C." How it's going:
comment in response to post
Sorry for the tech difficulties. We'll switch it over during the break. We'll still have a recording of the first talk though.
comment in response to post
Well it's a castle, mostly from the 16th century. The first schema change was probably adding a toilet! That aged better than the connectors. www.ceub.it/la-storia/?l...
comment in response to post
I don't think so, but I'll definitely post the pretty self-guided tutorial code and slides here.
comment in response to post
If you think of big corporations as autonomous entities with their own agency, then I guess this would be alignment failure?
comment in response to post
...or like all scientific laws (in physics), at least according to Nancy Cartwright: academic.oup.com/book/27605
comment in response to post
Svelte? LangGraph? Maybe they're not "languages" yet, but neither were the ones you mention when they started...
comment in response to post
Just imagine what the world would look like, if only we choose the right pub for talking about types of pints!
comment in response to post
I suspect "equational reasoning" is an "academicization" of something that is maybe more basic but practically useful? I doubt anyone uses this to prove things, but perhaps it is a kind of thinking useful for understanding code and writing things like property-based tests? (No paper though!)
comment in response to post
At first, I thought you have invented a way to combine a fax with a podcast...
comment in response to post
Mumble mumble atom mumble mumble smalltalk mumble...
comment in response to post
The book Abstracting Craft is another possibly interesting reference: mitpress.mit.edu/978026263189... It talks about the characteristics that software media need to support "craft" like being continuous and offering immediate feedback.
comment in response to post
Spreadsheets also give you a natural way of doing the "drag down" operation to extend a computation over a range.
comment in response to post
It's worth noting that this will appear at OOPSLA 2025. Congrats to the authors! It's great that papers like this can make it.
comment in response to post
Yeah, I removed that one from the list shortly after blue-skying it... Perhaps if it was case sensitive or something. I also wonder if the matching is whole-word or if I'll miss all the news on muskets...
comment in response to post
Nice memories :-) I pay back with a bridge that nobody visiting Prague would ever post on social media!
comment in response to post
Yeah, that's also the main reason why I didn't submit anything to LambdaDays! It's about time to drink some Java developer's blood again 🍷😂
comment in response to post
We also have an ongoing project where we want to do something like this for Python (or similar) in Jupyter (or similar) notebooks. Some rough notes: github.com/d3sprog/red-... If you're working on something in this space, I'd love to chat more!
comment in response to post
Another implementation of this is in my Histogram project (LIVE 2019). Here, the static types are "refined" when you evaluate a part of the expression tree they depend on - so you get "untyped row" initially, which becomes "typed row" with member names. See section 5.2: tomasp.net/histogram/#s...
comment in response to post
Type providers in #fsharp do this also, but in a more limited way - the argument has to be static literal: tomasp.net/academic/pap... I (sadly!) never wrote about the "value-dependence" in the type system of The Gamma. Only about the mechanism for generating members: tomasp.net/academic/pap...
comment in response to post
Something like the first code snippet here: turing.thegamma.net/markets/ ? The type of "scrapeDatedLists" is value-dependent. Based on the value, it generates types with members you use to construct the query. The type checker (used also by auto complete) forces the evaluation of the argument.