DEV Community

Cover image for How Would You Create the Perfect Coding Language?
dev.to staff for The DEV Team

Posted on

How Would You Create the Perfect Coding Language?

Imagine you have the chance to create a coding language from scratch. What unique features or capabilities would you introduce, and how would it improve the programming experience


Follow the DEVteam for more awesome discussions and online camaraderie!

Top comments (7)

Collapse
 
siddharthshyniben profile image
Siddharth

There isn't a "perfect" programming language, really. It all depends on user preferences. Some people like OOP. Some people like FP. Some people like Java purely because there's no async to deal with

IMO, the most powerful programming language would be Lisp. I don't think there's much to improve there, other than better developer tools, faster compilers, etc.

Collapse
 
mellen profile image
Matt Ellen

This is why the answer I didn't write was "kill everyone else so they can't tell me my language isn't perfect" ;)

Collapse
 
mellen profile image
Matt Ellen

I'd really like to try my hand at inventing a language, if only I had the time!

I'd probably make something like Erlang: a functional language optimised for parallel programming.

  • I'd want to make it as deterministic as possible, so it could be "easy" to make real time systems.
  • I'd want it to run efficiently so that it would be suitable for low power systems.
  • I'd give it really good documentation, so getting started didn't seem like an insurmountable task.
Collapse
 
auroratide profile image
Timothy Foster • Edited

I suppose in the realm of "perfection" I'm allowed to dream a little ( :

How about just using a language like Lojban? It's a constructed spoken language meant to produce unambiguous sentences.

Spin up a sufficiently powerful language model, collaboratively exchange sentences, and instead of code it gives you an executable. In other words, CompileGPT ^^

Collapse
 
citronbrick profile image
CitronBrick

Here's my recipe for the perfect language.

  1. Ruby syntax.
  2. Use curly braces or colon (Python like) blocks, instead of the end keyword.
  3. Make it camelCased instead of snake_case.
  4. Give it a well-presented official documentation (like MDN or JavaDoc (docs.oracle.com/en/java/javase/17/...)
Collapse
 
lizmat profile image
Elizabeth Mattijsen

I think I'd take a lot of inspiration from the Raku Programming Language, and take out quite a few of the historical warts.

Collapse
 
webbureaucrat profile image
webbureaucrat • Edited

I think I'd just invent Idris with C-like delimiters instead of whitespace delimitation. At any rate I would definitely not support throwing runtime exceptions.