Ranter
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API

From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Comments
-
Technically JS can change and it does.
But it shares a grim fate with most other programming languages: It can never change beyond backwards compatibility and most idiotic design decisions will remain forever and because of that, the language can never become good.
I think languages like Python have the right approach: Just break backwards compatibility with a major release. Only then a language can truly improve. -
@jestdotty yeah, like python 2.0 -> 3.0
"Fuck your 2.0 code, it doesn’t work with 3.0" -
@kiki but afaik there is no js version that isn’t backwards compatible to older ones.
I think this type attribute is optional.
In other words: you will never have the problem that your old js code doesn't run in a new browser. -
@Lensflare
Well, in the case of JS it's just some gotchas really.
The only concern it has about compatibility is really manipulating DOM, and that certainly has never changed (and why things like lodash and jQuery exist).
Besides that, in the field of general programming js has and still does change a whole lot.
It's not as bad nowadays, but older node versions would break tons of shit all over the place with each major even release. -
kiki372502d@Lensflare it’s optional now, but we’ll need it for JS 2.0 that won’t be backwards compatible.
@CoreFusionX I agree on gotchas — at this point, I don’t make mistakes in JS. But JS 2.0 is still possible because DOM is not HTML. DOM is a way to interact with the document. I can totally see DOM 2.0 in JS 2.0 still working with the same document and the same HTML tags, all while being 100x faster and lighter because of dropping some old unused properties that slow the web down.
99% of all web UIs are rectangles with text and images arranged in a grid. Godot can render the same thing orders of magnitude faster, because godot doesn’t support all the convoluted properties of modern DOM -
@CoreFusionX yup, but node stuff breaks because of lib level incompatibilities, not js language level incompatibilities.
JS, the language that can never change because websites from 20 years ago have to work somehow, has a historic quirk: JS bad
Linux, the OS that has like 2 million distros you can use, all vastly different in their design, all unconstrained by compatibility problems, has a historic quirk: skill issue
random