Thoughts on Racket2
I attended Racket School and I genuinely want to like Racket. It has utterly fantastic language oriented features like macros and syntax objects, really awesome people behind it and some surprisingly solid tooling. But it&#x27;s just so hard to do anything &quot;useful&quot; in it. It&#x27;s the Haskell problem. It&#x27;s too fancy, too nice to do any nitty gritty work with it. It&#x27;s a gilded shovel. Writing something as banal as a web server in Racket just seems like a waste. And anything &quot;nice&quot; enough to write in Racket is too niche to really gather wide appeal.<p>Compare this to Ruby, which, while not super popular, has gained a respectable following after a period of hype. Ruby can trick people into thinking that it&#x27;s a nice, normal scripting language that you can show your parents. And you can treat Ruby as a normal scripting language. Only after a period does Ruby reveal its insane metaprogramming and dynamic features.<p>What I&#x27;m saying is Racket needs a little more stupidity in it. It needs to project an image of a good ol&#x27; language that you can have a beer with. That you can write a web app in. If that requires removing s-expressions, then fine. If that requires removing conceptual purity, then fine.<p>Racket certainly still has potential. There&#x27;s quite a lot of DSLs in modern programming. Whether it&#x27;s the adhoc configuration based DSLs of Docker and DevOps in general (I hate Docker&#x27;s weird pseudolanguage so so much), or GraphQL in web servers, there&#x27;s definitely places for Racket to shine. It just needs to get sullied by the messy, imperfect, stupidity that is industry.