Settings

Theme

Programming Language Checklist (2011)

mcmillen.dev

45 points by njitram 2 years ago · 21 comments

Reader

ivolimmen 2 years ago

Slashdot answer. Like this one: https://tech.slashdot.org/comments.pl?sid=218300&cid=1771910...

Love these responses.

xnx 2 years ago

I often wonder what it is about the programmer mindset/psychology that curses such constant reinvention(/reinvention?). Is this an unavoidable side effect of Moore's law? Will we settle on just a few languages in the future? Will llms allow easy translation from less popular languages?

mjburgess 2 years ago

imv, we're still missing a C replacement-successor

There should be a language about as simple as c, with a few additional keywords for safety (type and memory), and a modern standard library -- that works basically everywhere C works, and is backwards compatible with C.

ie., we're missing --C++

I think all the supposed successors have approached the problem from the lang-design pov, where for C, it needs to be from-existing-compilers-and-tools pov.

I suspect there's a route to C v2 by starting with the C std, and gcc/clang, then working "forwards". Similar to cppfront for C++.

ie., it needs to compile 99% of all existing C code, it needs to compile to 90% of all in-use platform for C, etc.

  • cyco130 2 years ago

    You may find Zig interesting: https://ziglang.org. The language is not C compatible but the tooling can compile C and C++ without hassle.

    • mjburgess 2 years ago

      i'm aware of zig, which is why i included the criteria above that i take to rule it out.

      i do think the successor should be src-compt with C

  • vbitz 2 years ago

    What would be great is a language that does to C what TypeScript did to JavaScript.

    C but with better safety and additional developer ergonomics would be amazing.

    Part of the problem is I think you would need to depart from the traditional C build system to get the most benefits. That will be hard for adoption.

  • dailykoder 2 years ago

    >There should be a language about as simple as c,

    I just recently started to dip my feet into golang and it feels like Go could've been something like that. With it's runtime and garbage collection that obviously disqualifies itself, but it's a really simple and fun language, I think. Something like that as a systems programming language with """easy""" memory management would be tremendous (maybe Zig is like that, but I haven't tried that out yet).

  • pharmakom 2 years ago

    Zig, Odin and Jai are the main contenders.

    I don’t think backward C compatibility is a good idea, since the C syntax has issues. Instead a transpilation tool from C could be built.

  • ramon156 2 years ago

    Carbon was a possible successor, only time will tell

pharmakom 2 years ago

Quite funny, but I want people to advance the state of the art.

Does C++ / Java / Python really represent the high water mark of programming languages? I sure hope not…

EuAndreh 2 years ago

We have "No language spec" and "The implementation is the spec". Sooo, languages with a spec are strictly superior?

BoppreH 2 years ago

I've tried updating it to 2024: https://gist.github.com/boppreh/3b88231b7af15af54d292963f3d7...

blauditore 2 years ago

This is kind of accurate and funny, but also feels a bit like criticizing the drawing of a 4-year-old kid. :) At least when a language is just someone's hobby project, or some exploration in research.

  • jzm2k 2 years ago

    Isn't this criticizing the discussion of (new) programming languages, not the new languages themselves?

    • blauditore 2 years ago

      Ah, maybe.

      FWIW, I actually think syntax is sometimes the hard part about programming, especially when not working with a language frequently. I never worked much with C++, but occasionally come across it. Whenever this happens, it feels like things could be more readable, but maybe I'm biased.

librasteve 2 years ago

what we need is a gradually typed lazy / eager language that helps to combine functional, imperative, concurrent and object-oriented styles, allows functions to use method syntax (and vice versa), with (and without) sigils & twigils, and an entirely new regex syntax that packs a whole ragbag of weird stuff such as unicode graphemes, grammars, junctions, allomorphs, sequences, hyper (>>) and (Z/R) metaoperators, sets, bags and mixes, coercion types and a MOP then we can check all the boxes (aka raku)

pharmakom 2 years ago

To me what’s missing is a functional programming language that is statically typed and has an extreme emphasis on performance. C++ meets Haskell, but not terrible.

  • funcDropShadow 2 years ago

    That is OCaml. Not that I claim OCaml is extremely fast, but it has a very predictable performance. Which is imho even more important than being the fastest in certain benchmark problems.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection