Solving the first 100 Project Euler problems using 100 languages
An open-source project solving the first 100 Project Euler math/programming problems in 100 different languages prompts debate over language choice, from the absence of mainstream tools like Rust and C++ to the inclusion of obscure and historical dialects such as multiple BASICs and Mouse-83. Commenters reflect on what Project Euler is really testing (mathematical insight vs. coding skill), the ethics and evolving rules around publishing solutions, and how challenges like Euler compare to platforms like LeetCode and Advent of Code for learning algorithms and mathematics.
Project overview & initial reactions
- Repository solves the first 100 Project Euler problems, each in a different language.
- Many commenters find the project impressive and fun, especially the breadth of languages and the author’s per-language notes.
- Some expected “10,000 solutions” (100 problems × 100 languages) based on the title and were briefly disappointed before realizing that would be unreasonable.
Language selection and omissions
- Interest in more “unusual” choices, e.g., Verilog or other hardware description languages; one commenter notes Verilog is in fact included.
- Others highlight the use of multiple BASIC dialects and note that BASIC variants can be quite different.
- Debate over “proper” statically typed languages:
- One commenter criticizes the list for omitting popular statically typed languages (e.g., Rust, C++, Go, etc.).
- Others point out many static languages are present (e.g., Ada, Nim, Haskell, TypeScript, Verilog), and accuse critics of not reading the list carefully.
- Rust’s absence is discussed:
- Some joke that it “feels like a statement.”
- It’s clarified the author chose languages that were new to them.
- Side-thread devolves into criticism of Rust’s community “cult-like” enthusiasm vs defenders framing this as normal tool advocacy.
Impressions of specific languages
- Nim receives especially positive commentary: easy to start with, fast compilation, small binaries, pleasant syntax, good for hobby projects.
- Some discuss BASIC, assembly, and BCD (binary-coded decimal) as “old school” concepts that surprised readers when they appeared.
Math vs programming in Project Euler
- Several comments stress Euler as primarily math- and algorithm-focused, more so than LeetCode or Advent of Code.
- Later problems often require mathematical insight (number theory, generating functions, closed forms) before coding.
- Suggested resources include classic number theory texts and generatingfunctionology.
- Some argue that brute force becomes unwelcome at a certain point; others say it’s fine to just start and learn as you go.
Publishing solutions & respect for Project Euler
- Debate over whether publishing solutions is disrespectful:
- One side finds public solutions annoying and believes it trivializes others’ efforts and undermines the “honor system.”
- Others argue:
- Solutions to early problems are already widely available.
- The Euler site explicitly permits discussion of the first 100 problems, provided the focus is on methods, not just answers.
- Project Euler is not a competition; copying solutions is distinct from truly solving problems.