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

Devtalk
Hello Devtalk World! Please let us know a little about who you are and where you’re from :nerd_face:
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
Things like smart speakers (such Amazon Alexa), smart TVs or other devices with built in microphones, cameras or with other features that...
New
dwaynebradley
For those that are interested, Snyk (developer security tool) announced support for Elixir earlier this week: Just thought I’d pass it...
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
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
AstonJ
00:00 The Year 2022 00:38 Web3 03:28 Metaverse 05:05 AI 06:22 Databases 07:31 JavaScript 09:58 Other Trends to Know WDYT - what wi...
New
AstonJ
I’ve been watching Prag Dave’s Elixir course and I noticed he uses tree: Tree is a recursive directory listing program that produces a ...
New
OvermindDL1
Maybe we need a thread of hosting providers we like and for what reasons. I personally like OVH, they are a very low level host (they re...
New
harwind
I’m working on a C++ program where I need to convert a string containing a numeric value into an integer. I want to ensure that this conv...
New

Other popular topics Top

PragmaticBookshelf
Stop developing web apps with yesterday’s tools. Today, developers are increasingly adopting Clojure as a web-development platform. See f...
New
PragmaticBookshelf
Machine learning can be intimidating, with its reliance on math and algorithms that most programmers don't encounter in their regular wor...
New
PragmaticBookshelf
Learn different ways of writing concurrent code in Elixir and increase your application's performance, without sacrificing scalability or...
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
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
PragmaticBookshelf
25 puzzles that will make you a better C programmer by challenging your knowledge of the language, and explaining the technical details o...
New
PragmaticBookshelf
Get the comprehensive, insider information you need for Rails 8 with the new edition of this award-winning classic. Sam Ruby @rubys ...
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
Fight complexity and reclaim the original spirit of agility by learning to simplify how you develop software. The result: a more humane a...
New
xiji2646-netizen
Woke up to this today: Claude Code’s complete source code exposed via npm source map. Not a snippet. All 512,000 lines. 1,900 TypeScript ...
New