I think it's the symptom of inadequate practice rather than some "language neurotype". Consider writing (yeah 2026 I know) a substantial project in Scheme from scratch.
Two websites don't sound like insubstanial projects.
I keep bouncing off the Scheme language
41–50 of 91 posts
Re: I keep bouncing off the Scheme language
#42Scheme was invented as a consequence of Sussman & Steele’s discovery that lexical closures in the lambda calculus had essentially an identical implementation to a fully elaborated version of Hewitt’s actor model. I do wonder what a language with the same “taste” and minimalism as Scheme but embracing the actor model would look like. Erlang? Even better if someone could figure out how to harmonize them in the same lan…
Re: I keep bouncing off the Scheme language
#43I think that it helps a lot to have a daily practice of using a language for small things. In much that same way that many people do the daily wordle or crossword, I do the daily leetcode. I flip a coin and solve it first in either C++ or Python, then re-write my solution in the other one. Usually it takes me around 20 minutes to solve it in either language, and 5 minutes to re-solve it in either language. Recently I…
Where do you find a daily leetcode problem? Is there a website somewhere that publishes them?
You can view the daily problem without logging in or creating an account.
Fair warning: today's daily problem is a "hard" difficulty and it is often worth skipping those or peeking at the solution. They can take a while to solve (often at least an hour) and/or rely on unusual tricks or data structures. I haven't solved this one yet so idk exactly what its deal is.
Re: I keep bouncing off the Scheme language
#44However, like “If you give a mouse a cookie”, I realized that once I had my traits that I also wanted compile-time attributes à la Rust/C# and there’s no clean way to add those to Lisp’s syntax without seriously cluttering it up (note: yes, function-level attributes would look fine but C# allows attributes on locals, iterators, and usings which just don’t mesh with Lisp’s syntax).
I gave up. Lisp is neat but it just doesn’t fit in the future of programming that Rust and C# have shown us.
Re: I keep bouncing off the Scheme language
#45I went back and forth with ChatGPT on this a while ago. I concluded that my main problem with Lisps (and C) is that types don’t have their core functions associated with them concretely. The only way to know strcat, puts, and strlen exist is…to know that they exist. This vexed me. We lightly mapped out the idea of having traits for types in lisp and then having those traits and their associations frozen at compile ti…
Re: I keep bouncing off the Scheme language
#46I think that it helps a lot to have a daily practice of using a language for small things. In much that same way that many people do the daily wordle or crossword, I do the daily leetcode. I flip a coin and solve it first in either C++ or Python, then re-write my solution in the other one. Usually it takes me around 20 minutes to solve it in either language, and 5 minutes to re-solve it in either language. Recently I…
Bonus - Racket is an accepted language on leetcode ;-)
Re: I keep bouncing off the Scheme language
#47I think that it helps a lot to have a daily practice of using a language for small things. In much that same way that many people do the daily wordle or crossword, I do the daily leetcode. I flip a coin and solve it first in either C++ or Python, then re-write my solution in the other one. Usually it takes me around 20 minutes to solve it in either language, and 5 minutes to re-solve it in either language. Recently I…
Where do you find a daily leetcode problem? Is there a website somewhere that publishes them?
LeetCode does have an "unofficial" API to get the problem of the day. Should work for previous days as well. This code worked last I tried [2].
[1] https://github.com/ebanner/daily-coding-challenges#leetcode
[2] https://github.com/ebanner/get-daily-leetcode-problem/blob/m...
Re: I keep bouncing off the Scheme language
#48Scheme was invented as a consequence of Sussman & Steele’s discovery that lexical closures in the lambda calculus had essentially an identical implementation to a fully elaborated version of Hewitt’s actor model. I do wonder what a language with the same “taste” and minimalism as Scheme but embracing the actor model would look like. Erlang? Even better if someone could figure out how to harmonize them in the same lan…
Re: I keep bouncing off the Scheme language
#49Re: I keep bouncing off the Scheme language
#50Earlier quoted context omitted.
How did you arrive at C++ and Python? Yes I'm aware they have many structural and aesthetic differences, but why would you not choose a language with a different paradigm—functional, logical, even procedural, etc?
Good question. I chose them because they are the languages that I use professionally and would choose for technical interviews. I expect to be asked to solve problems in either language in any given interview. Technical interviews are different enough from day-to-day work that I still find it valuable to practice in them.