Ask HN: What would be your “perfect” programming language?
1–10 of 182 posts
Re: Ask HN: What would be your “perfect” programming language?
#2Re: Ask HN: What would be your “perfect” programming language?
#3Re: Ask HN: What would be your “perfect” programming language?
#4Re: Ask HN: What would be your “perfect” programming language?
#5 - create a dark mode palette for the page based on this image: {file path}
- make a form with a single name (not first and last), email, country code, phone
-- this form should allow a document upload when clicking
-- allow drag and drap to upload documents
-- add a tick box that says "I agree with terms and conditions"
- this form should have input validation
-- all fields should be secure from injection
-- name can be anything except number
-- file type is documents (not images but including PDF)
-- absolutely ban exe files
- upon valid input, send this form to {URL}
- if the response from {URL} is valid, redirect to {success page}
-- else show the error message if it's type 200Re: Ask HN: What would be your “perfect” programming language?
#6Re: Ask HN: What would be your “perfect” programming language?
#7Re: Ask HN: What would be your “perfect” programming language?
#8Have thought about this a lot, I really want it. I even started messing around with implementing it, but it's just a toy (an abandoned toy, even) for now.
Re: Ask HN: What would be your “perfect” programming language?
#9I think the 'ingredients' for my ideal language are more or less the following, in decreasing order of importance:
- Quality of the ecosystem. You can't buy or engineer this, it kind of has to happen naturally. Good FFI and trying not to be a "let's rewrite the world" language help immensely. It's controversial to put this as the most important bullet point, but the world we have to program in is much more complicated than it was even just 20 years ago. Programs live in an environment and have to interact with databases, networks, etc. I just don't see myself programming in a language where I have to rewrite my own data structures or network code or postgres integration, it's way too much work for way too little gain.
- Tooling. Just look at Java and Go (also Python and JS, albeit to a lesser extent). It's a massive, massive productivity gain to have modern, effective tooling that supports modern workflows.
- Language features. I'm partial to the ML family, but I'm not a radical in this respect, I'll program in almost anything as long as it's sufficiently expressive and doesn't have insane semantics.
A few _very wild_ ideas:
- A configurable type system. I'm sold that stronger and more articulate type systems are the future, but sometimes, especially in smaller projects, it's incredibly annoying to have to prove to the compiler that the code you wrote is actually allowed. There's an inherent expressivity vs. correctness tradeoff that it would be interesting to have "different settings" for.
- A dependency system based on functional semantics rather than names. Imagine to reduce each function to a canonical representation (for example: its De Brujin encoding). Now you can design a dependency system where you can import a function based on its representation rather than its name.
- First-class algebras. Imagine being able to program user-defined structured sets. Strings as monoids, Vec3 as vector spaces, calendar as affine spaces, etc.