8 ms·
Simon Peyton Jones interview
- danielscrubs 4y agoAny tips on other professors like SPJ? He seems like a super human even after the 10 years Ive followed him. Never angry, always happy, always engaged, always teaching things with depth, not dumbing things down to make it easier, not pandering…
- nequo 4y agoMost academics don’t have as many interviews and talks uploaded with them as SPJ but check out Stephanie Weirich’s Strange Loop talk[1] and interview on Corecursive.[2] [1] https://youtube.com/watch?v=wNa3MMbhwS4 https://youtube.com/watch?v=wNa3MMbhwS4 [2] https://corecursive.com/015-dependant-types-in-haskell-with-stephanie-weirich/ https://corecursive.com/015-dependant-types-in-haskell-with-...
- xwowsersx 4y ago> JB: So is it refreshing to to work on an implementation of a language from scratch after having worked on this 20-30 years old codebase in GHC and all this big beast where you can’t just redo everything from scratch? > SPJ: It’s a very different prospectus because in this case Verse is a pretty well-formed beast in Tim’s head. If we want to do something different we’re going to have to persuade him but I’m fine with that, right? But the dynamic is that he’s a sort of technical lead on the project – which is very unusual for the CEO of a multibillion dollar company and actually quite rewarding. Quite unusual and very cool!
- melling 4y agoAround 7:50 in Jones says this: “So, one of the great things about Haskell actually, that is spoken about and I think it’s the sort of killer app for Haskell, is that it’s so refactorable, right? You can do a heart or lung transplant on GHC and make truly major changes and the type checker just guides you to do all the right things.” Freely refactoring the code with worrying about unit tests, etc seems quite appealing. To summarize the killer app for Haskell is that “it’s so refactorable”
- rurban 4y ago> You can do a heart or lung transplant on GHC and make truly major changes and the type checker just guides you to do all the right things. This only tells that SPJ never had to work in hard realtime nor kernels. GHC code throws and doesn't help in violating latency bounds. Not at all. For such tasks we do have much better systems, without GC.
- WraithM 4y agoWe use Haskell at Bitnomial, and I can confirm that this is in fact the case. We've been able to incorporate new complex knowledge quickly in a way that most other languages would have more trouble with. Refactoring is a secret weapon for Haskell.
- wallscratch 4y agoCould someone explain why refactoring is so much easier in functional languages?
- parenthesis 4y agoBecause it is more difficult to make a change that affects other code without a change in types occurring, which will make compilation fail until all affected code is updated.
- garethrowlands 4y agoThough Haskell has the option to defer type errors to runtime, making them just warnings at compile time. It means you can run your unit tests without having to change everything everywhere all at once. The flag is -fdefer-type-errors
- goto11 4y agoPerhaps it is easier because Peyton Jones is a world class expert in Haskell and have 30 years experience refactoring it? In my experience the ease of refactoring is more depending on the quality of the code you are refactoring than the language. That said, a strong type system helps avoiding stupid mistakes and Haskell have a very strong type system.
- reikonomusha 4y agoWhy is Haskell, a comparatively obscure language (to Python, C++, etc.), so popular with topics in the orbit of "web3" (blockchain, crypto, metaverse, etc.)?
- nequo 4y agoThe usual argument is that purity and the type system help you write correct code and finance is a domain where correctness is important. The applications I’ve heard for Idris also have to do with finance (although not blockchain stuff).
- reikonomusha 4y agoPart of my confusion is also the social/community aspect, especially with Haskell hackers' frequent and negative attitude toward the enterprise, like Stephen Diehl who has become a sort of spokesperson for the "web3 is a farce (and worse)" narrative. It seems like such a stark juxtaposition, especially with SPJ and Lennart Augustsson, two research giants of the community, taking part in it in a serious capacity. (To be abundantly clear and uncontroversial, as it pertains to this comment, I'm not interested in discussing "is web3/metaverse {good,bad}", but rather in discussing the purely functional programming community-of-community's interests or anti-interests in it.)
- eointierney 4y agoI reckon SPJ is sufficiently "researchy" that it doesn't really matter how it's applied, it's the research that matters. Also, he seems perpetually delighted that he gets to do what he does, and is paid to do so. He's one of my heroes, long may he lang
- dboreham 4y agoI think I operate in those orbits, but I haven't come across much Haskell (plenty of TS, Golang, Rust). Where Haskell has cropped up it was typically in the context of "we want to prove this code is correct" (plausibly important if money is being transacted), plus a bit of "we like Haskell so we used it".
- nextos 4y agoIt's interesting he discusses Liquid Haskell (proofs via refinement types) extensively: "So, for me, that’s as far as increasing our ability to give you statically guaranteed theorems about Haskell programs. My money’s on Liquid Haskell at the moment and I hope that we the Haskell community" My experience is that other refinement type systems are way less complex. See: https://github.com/hwayne/lets-prove-leftpad https://github.com/hwayne/lets-prove-leftpad In particular, compare https://github.com/hwayne/lets-prove-leftpad/blob/master/liquidhaskell/LeftPad.hs https://github.com/hwayne/lets-prove-leftpad/blob/master/liq... to https://github.com/hwayne/lets-prove-leftpad/blob/master/dafny/Leftpad.dfy https://github.com/hwayne/lets-prove-leftpad/blob/master/daf... For me this has been a bit of a disappointment.