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

AstonJ
:smiling_imp: What is your preferred syntax style and why? Perhaps we can add examples and use the code below as a simple reference poi...
New
AstonJ
Which apps do you think are killing it right now? Either from a technical perspective or ones that you like personally or feel have been...
New
siddhant3030
I’m thinking of buying a monitor that I can rotate to use as a vertical monitor? Also, I want to know if someone is using it for program...
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
finner
When you are under pressure to deliver you ideally want your Pull Request to be reviewed, approved and merged as quick as possible. So do...
New
AstonJ
Do you think it’s worth worrying about? Do you think it’s going to be an even bigger issue in future? If so what can the teams of smaller...
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
TwistingTwists
Hello Fellow developers, I have been trying to wrap my head around How difficult would it have been to be a dev 20-30 years ago? I have...
New
jaeyson
Not trying to add more mess here but, reddit has ELI5 but i wanted to know if it’s okay to ask Elixir-specific (or outside of it) in a si...
New
Margaret
Hello DevTalk Community! Once again, The Pragmatic Programmers are looking for developers who’d like to help shape the future of our boo...
New

Other popular topics Top

AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
New
PragmaticBookshelf
Learn from the award-winning programming series that inspired the Elixir language, and go on a step-by-step journey through the most impo...
New
Exadra37
Please tell us what is your preferred monitor setup for programming(not gaming) and why you have chosen it. Does your monitor have eye p...
New
dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
New
AstonJ
Thanks to @foxtrottwist’s and @Tomas’s posts in this thread: Poll: Which code editor do you use? I bought Onivim! :nerd_face: https://on...
New
AstonJ
We’ve talked about his book briefly here but it is quickly becoming obsolete - so he’s decided to create a series of 7 podcasts, the firs...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New
PragmaticBookshelf
Explore the power of Ash Framework by modeling and building the domain for a real-world web application. Rebecca Le @sevenseacat and ...
New
mindriot
Ok, well here are some thoughts and opinions on some of the ergonomic keyboards I have, I guess like mini review of each that I use enoug...
New