As I spend my Saturday night proving properties of the type system for an imperative programming language, my main takeaway is that imperative languages were a terrible mistake and should be banned
-
-
Replying to @geoffreylitt
I'm curious how seriously you mean this. Do you think "the ease of proving properties of the type system for X" should be a significant factor in judging X?
1 reply 0 retweets 1 like -
Replying to @qualmist
This was mainly a joke out of frustration :) I do think there's something to your question though! I think that ease of building dev tools is important to consider, and functional languages often do well on that dimension.. brain is too fried to say any more
2 replies 0 retweets 0 likes -
Replying to @geoffreylitt
1. Hot take: "ease of proving properties of the type system for X" doesn't have much to do with "ease of building dev tools for X", which in turn doesn't have much to do with "experience of programming in X, with dev tools". 2. What are your favorite Haskell dev tools?
2 replies 0 retweets 2 likes -
Replying to @qualmist @geoffreylitt
3. There are good theoretical arguments that FP should be more conducive to visibility than IP. (I start my PANE talk with that!). But the dev tools don't exist yet, for FP or IP. I think we should approach the comparison of potentials with caution / curiosity.
1 reply 0 retweets 3 likes -
Replying to @qualmist
Yeah, overall I agree w/ the cautious attitude, and not conflating distinct goals! As one example, I love building dev tools for Ruby because of its metaprogramming, which seems like precisely the type of the thing that would make proofs about its type system challenging
1 reply 0 retweets 1 like -
Replying to @geoffreylitt @qualmist
Geoffrey Litt Retweeted Geoffrey Litt
Also I think "FP supports better tools" is true in some contexts... but worth exploring, which specific ones? The static typing debates (and rise of gradual typing) seem like an example of how the value of certain lang properties is so context dependenthttps://twitter.com/geoffreylitt/status/1184608498266595329 …
Geoffrey Litt added,
Geoffrey Litt @geoffreylittSometimes debating best practices for "programming" feels ridiculously broad, like debating "writing". Writing an email, a novel, a text message, and a poem are fundamentally different activities. "Depends on context" doesn't even begin to describe the vast gulf of differences1 reply 0 retweets 1 like -
Replying to @geoffreylitt @qualmist
I'm also curious if you think there are other properties that better support "the experience of programming in X, with dev tools"? Or maybe we're still early in discovering them? Makes me think of Learnable Programming and other live programming work...
1 reply 0 retweets 1 like -
Replying to @geoffreylitt
Some possible answers, off the top of my head: "liveness" (can you make changes and immediately see effects?) & "concreteness" (are the objects in the system simple and visualizable?). Interesting example of where "concreteness" takes you: closures suck! What do you think?
2 replies 0 retweets 2 likes
@supercgeek collected several of these into a great list last spring! …https://humaneprogrammingenvironments.cargo.site/Main
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.