AstonJ

AstonJ

What would your ideal programming language be like?

Always interested in hearing people’s thoughts on what’s next or what’s possible! What would your ideal programming language be like?

  • OOP?
  • Functional?
  • A mix?
  • What type of concurrency model would it have?
  • What kind of syntax?

I wonder if we could make a Devtalk / DT language :joy: (Just kidding!)

Most Liked

dimitarvp

dimitarvp

I’d use LISP and wouldn’t complain but as I’ve said on other places (ElixirForum) I fear that people inevitably get sucked into “my own favourite DSL” hell where a project becomes un-maintainable by anyone except the original creators. You can definitely abuse macros! And I’ve met several people who couldn’t resist that temptation. (Of course, they might have done it deliberately for job security reasons as well.)

I do really like homoiconic languages but I wonder how can we guarantee maintainability.

Failing that, I’d go for OCaml without a few things like OOP, and making the mutability mechanics work like in Rust (namely with a lot of compiler nagging).

Elixir I definitely love but the lack of static typing and the quirkiness of Dialyzer’s typespec syntax is… not nice.

OvermindDL1

OvermindDL1

Don’t think of the objects in OCaml as being like OOP, they are row-typed records (unlike normal records that are nominal records), and thinking of them like that should make their usages clear. :slight_smile:

But oh yes please an OCaml with no GC and rust-like lifetime management, maybe go full on refined or even dependent typing, and for the algebraic effects system to finally get finished and merged in! All that would be so nice, lol.

OvermindDL1

OvermindDL1

Lisp, a strongly typed lisp, lol.

Really though, Lisp is the language that can be become anything, gain any feature or capability, in any way you can really imagine, including gaining any syntax you could possibly want (read-macro’s are wonderful, you can have a python syntax, C, whatever you want to make a parser for, lol).

I wish it were more popular, but two things conspire against it:

  1. It was originally conceptually tied to the original ‘AI’ movement in the 70’s/80’s, and when it died it brought down Lisp with it (Lisp was used because it was the best language that was expressive enough for that work).
  2. A lot of people fear parenthesis explosion, even though it’s really not bad at all once you get used to it. ^.^

Where Next?

Popular General Dev topics Top

justinjunodev
Figured this would be a cool topic and maybe provide some inspiration for those who are just starting to work from home. Feel free to sha...
New
Exadra37
Cloudflare as workers to run serverless code without using containers: So it seems that Isolates is based on: What we ended up settl...
New
jaywengrow
Hello! It’s Jay Wengrow, author of A Common-Sense Guide to Data Structures and Algorithms. My book now has a supplemental website, where ...
New
AstonJ
Always interested in seeing what apps people use and how they organise their phones/home screens! Here’s mine…
New
Exadra37
I am a Linux user since 2012, more or less, and I always use Ubuntu on my computers, and my last 2 laptops have been used Thinkpads, wher...
New
AstonJ
Things like smart speakers (such Amazon Alexa), smart TVs or other devices with built in microphones, cameras or with other features that...
New
DevotionGeo
The V Programming Language Simple language for building maintainable programs V is already mentioned couple of times in the forum, but I...
New
ohm
I just switched jobs to tech lead with a small team of about 6 other developer. This is my first tech lead job. What do I need to know? A...
New
malloryerik
With 100% less blockchain. I went searching for a lightweight immutable database that could be audited and ran into this. I guess this ...
New
harwind
I’m working on a Spring Boot project and I have a controller where I want to map multiple request paths to a single method. Let’s say I h...
New

Other popular topics Top

brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
AstonJ
You might be thinking we should just ask who’s not using VSCode :joy: however there are some new additions in the space that might give V...
New
Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
AstonJ
We have a thread about the keyboards we have, but what about nice keyboards we come across that we want? If you have seen any that look n...
New
rustkas
Intensively researching Erlang books and additional resources on it, I have found that the topic of using Regular Expressions is either c...
New
Maartz
Hi folks, I don’t know if I saw this here but, here’s a new programming language, called Roc Reminds me a bit of Elm and thus Haskell. ...
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
New
PragmaticBookshelf
Fight complexity and reclaim the original spirit of agility by learning to simplify how you develop software. The result: a more humane a...
New