4

I saw a video on tiktok a couple days ago that had a pretty interesting opinion. The guy said that we should stop creating programming languages and stick to only a couple.

His main point was because with all these different programming languages, there is different syntaxes the programmer has to learn. Even some of the universal syntaxes are different in some languages. For example, in Rust, to print something you use “println!(...);”

He said this is counter productive because in a majority of other programming languages, the ! Means negation. He also said something about Golang also having some of those syntax problems but I can’t remember exactly.

His point was that if we stuck to a single syntax, then we could spend more time doing productive stuff and less time relearning how to do stuff with different syntax. For example, in mathematics all symbols have pretty much the same meaning across the field. An equals sign will always mean the same thing.

What do u guys think? I thought it was an interesting opinion and I think I agree to some degree . I’ll post the link to the video if I find it again

Comments
  • 8
    So we will use C for everything and in 8 decades we get D?
  • 6
    Man can you imagine the low level shit we would be doing for old ass architectures just to accomplish basic stuff because some stick in the mud / up their ass folks decided "this is it"?
  • 9
    I strongly disagree.

    There is close to zero overhead by using many languages with different syntaxes once you learn each of them. If you have difficulty with that either you're a newbie or you're trying to achieve unnecessary levels of standardization.

    Also I don't think math is equal everywhere, I think there are symbols that are reused for different purposes in different contexts. I guess you could even argue math is one, single, giant language.

    I advocate for the exact opposite, javascript is used for waaay too many things these days and I'd like more language diversity in the industry.
  • 5
    Balance.

    I think some languages should die out or at least be redesigned, like JavaScript.

    Simply because they are fundamentally flawed and the mass of frameworks trying to paint over the flaws cannot fix them.

    New languages are welcome as long as they try to improve the status quo.

    E.g. rust - while being opinionated, they tried to "fix" an outstanding problem.

    When a language A is seemingly the same as language B except for a few things like syntactical sugar... I really question the use case.

    What should definitely be improved is the collaboration and standardization.

    When projects just exist to piss off people or project leaders are too stubborn to support collaboration or interdisciplinary standards... They can rot in hell imho.

    The NIH / Not invented here and the "This is not how we do it, so Fuck off" must be put to an end.
  • 1
    @IntrusionCM I actually like TypeScript and therefore JavaScript. There is a lot of people that write bad JS code and I feel like poor engineering discipline is what gives it a bad name (like how C can be Wild West) but I can’t think of a more versatile language. Thanks to sandboxing I also can’t think of a language I feel as comfortable copying code from the internet and running.

    Runs on everything basically. If you need decentralized apps you can move entire sections of code between browser and back end. You can leave code as FaaS in various regions around the world to increase server speed. You can edit live code while it is running if you need to without downtime. You can debug easily. It is fast for scaling up containers quickly in varying load situations. There are tons of FOSS libraries and tools.
  • 0
    Man, do you think of the low-level crap with old-ass architecture that we can do to do simple things when certain people stick up in the dirt and decided "this is it?"
  • 3
    I partially agree. I mean, look at the enum situation of rust.
  • 1
    @petergriffin I fell like your post might contain an underappreciated joke.

    I swear it's in there, somewhere.. 😆
  • 1
    @irene JavaScript has it's flaws.

    If these flaws would be fixed, I'd think a lot of people would be lot happier.

    JavaScripts erroneous behaviour and sneaky bogus implementations are my problem.

    If they would be fixed - I'd really love JS.
  • 2
  • 1
    Yes, we should all switch to the most multiparadigm language with a sane syntax and type inference: OCaml!
  • 1
    @IntrusionCM Which flaws are the ones that bother you?
  • 1
    @irene Number one would be the type system. Which is one of the reasons Typescript exists.

    But even Typescript cannot cover all loopholes, it just paints over them.

    Number two: It's APIs. Eg. array iterator, the order of iteration is undefined by design. The regex api was covered in an earlier rant I think, e.g. the behavior of test with global to be iterable and restart when no match was found.

    A lot of APIs in JS suck. Like in "intentionally suck". ECMA pours in new features, but they cannot radically change existing behaviour of APIs.

    This is a difference to other languages, as JavaScript has the need to keep a backwards compatibility. Which is fuckity.

    Number 3: Object oriented code. This sparks a lot of discussion, e.g. Crockford who loves to defend JS mentions this: https://crockford.com/javascript/... ... But all in all, it's the same like in Python: If you have to add it by yourself or - as in case with JS - take care of language specs errors, it isn't implemented (properly?) in the language imho. :)

    These are the things that can be _easily_ described.

    Hidden in detail are a lot finer subtleties and annoyances, which might or might not relate to the top 3.

    There are tons of pages out there.
  • 1
    @IntrusionCM TS is way more than paint. You write TS and it dumps out your target version ES. Usually target newer versions for server side and older versions in browser. You don’t think about the actual ES. Weird iterations and all are handled by a compiler. Then as improvements are added in newer versions of ES you will get them free when you change your compile target. Have JS and need TS? Change the file extension and clean up with a linter. Typescript overkill tooling for a quick job? Just write a bit of clean JS. Need performance? Use TS to AssemblyScript.

    One doesn’t think much about the assembly code when writing C. Compilers are handy for managing complexity.
  • 1
    @irene It's a transpiler as far as I know.

    Which means it converts code to JavaScript.

    All in all, all it's flaws are there, they're just hidden under a thick layer of paint.

    And assembly vs C is a bad example in my opinion.

    Typescript wasn't invented to handle the limits of JavaScript, nor is JavaScript a lower language.

    JavaScript was flawed. TypeScript needed a backwards incompatible solution which could be backwards compatible if necessary.

    Hence transpiling.

    Just because TypeScript makes the flaws bearable doesn't mean JS is good.

    TypeScript is better than JS... JS is still flawed.
  • 1
    This opinion is not interesting and it clearly comes from someone with zero industry experience frustrated because they have to learn more than they want to. “I want there to be less programming languages because learning them is hard” is an argument so utterly ridiculous that it needs no rebuttal. Starting out is overwhelming for sure but blaming your frustration with learning on the existence of things you need to learn is a level of narcissism and entitlement that only particularly gifted individuals are ever able to achieve </rant>
  • 1
    I wasn’t able to find the link to the video but apparently the guy wrote a medium article about it

    https://link.medium.com/jzh1qAOsRfb
  • 1
    @DeepHotel god help us all
  • 2
  • 1
    @DeepHotel you know that moment when the only search result relevant to your error is a lengthy medium post with a longer preamble than an online cooking site? A small part of me dies every time I have to work through one. Medium in general is the spawn of satan. At least tik tok is somewhat self aware sometimes
  • 2
    @demoralizeddev He is an udemy academics teacher says google....

    And has 20 years of experience in multi billion dollar companies with programming.

    Wheres your God now...

    muhahhahahahaa
  • 0
    @IntrusionCM god is dead hell is empty and all the demons are here :(

    Also I stand by the justification for a programming language should be the uniqueness of the problems it solves and the degree of success it has in solving them, not the number of languages that already exist. If the googler disagrees there’s a good chance I’m wrong but I’d want to hear a good reason why those two criteria alone shouldn’t be used to decide whether to create a new language. I also don’t understand why it’s a problem that devs have to specialize to some degree.
  • 0
    @IntrusionCM when I first started using TS people called it a transpiler. Now it is called a compiler in all of the TS docs. I’m not sure the reason for the term change.
Add Comment