Async/await in #TypeScript is essentially “direct style”. It will be interesting to see if Effect, a monadic effect system, will take off, as a case study for #Kotlin & #Scala — although for “direct style”, these have the advantage of context parameters.
Anecdotally (n=2), trying to teach teenagers programming by allowing them to use GitHub Copilot / ChatGPT hasn't been going well. Copilot/ChatGPT will generate code that they don't understand, sometimes with mistakes. And I noticed no progression happening while it's used.
On the need for debuggers … I use it rarely because of FP, unit testing and println().
OTOH, I think we are deluding ourselves. We don't do debugging b/c the tools suck. Nothing ever comes close to having a real console at your breakpoint:
I'm starting to assess the health & maturity of programming languages by the availability of
‣ good LSP implementation (VS Code, vim, etc.);
‣ good IntelliJ IDEA plugin.
#FunctionalProgramming will make you build better software, regardless of language. Some understated effects:
‣ Prefer params to global state
‣ Prefer data pipelines to fragile state mutation
‣ Prefer clear responsibilities for components
‣ Make dangerous side effects visible.
The series of articles titled “My Scala Story” is pretty cool, worth a read 🥰
Interesting to see how many came to #Scala for mostly the same reasons — having fun with #FP 💪👾