Teaching Programming Languages by Experimental and Adversarial Thinking: https://cs.brown.edu/~sk/Publications/Papers/Published/pkf-teach-pl-exp-adv-think/
A fascinating approach to teaching programming paradigms. Implement different language semantics in the same syntax, and ask students to write programs that distinguish between them!
miniblog.
Related Posts
Implementation chicken:
When there's an obvious feature gap in an ecosystem and everyone is waiting for someone else to write it.
I see this most frequently with OSS toolchains. Basic functionality in new programming languages is another common scenario.
I'm surprised there aren't more interpreted languages with a first party type checker.
Python has several good type checkers, Ruby has Sorbet, and there are others.
Having zero compilation time *and* a full IDE seems like such a compelling design, at least on paper.
Some novel (to me) AI workflows from OpenAI in https://openai.com/index/open-source-codex-orchestration-symphony/
(1) Adding the ability for the LLM to create follow-up tasks in the issue tracker.
(2) Identifying weaknesses in the spec by implementing in several different languages.


