this post was submitted on 24 Sep 2023
517 points (93.0% liked)
Programmer Humor
32455 readers
885 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Python is fine as a language I guess
But python programmers give it a bad name. I've never seen "well written" python code, it's always shit that's been thrown together cos it works.
It badly needs strong typing. And braces.
Doesn't Python 3 have types? I've seen a few well typed codebases and it really made the code much easier to understand. Or is it just that it's not checking them strongly enough?
The type annotations are just fancy comments. They do not do anything at runtime. If you have a function that takes an int someone can still pass in a list or anything else.
The main advantage of typing for me is static linting.
But will it run? I'm used to typescript where it's not checked at runtime but you can't "build" unsafe types I'd assume it's the same here
no they really are just fancy comments. You can do runtime reflection on them if you wanna make something fancy like a plugin system but that's about it
I think python is good as it is for what it can do, mostly because I have no reason to use it.
What we need is lua with types!
Have you heard of Typescript-to-lua? I used to do Dota modding (which is in lua) with TSTL and it works great!
You write TS code (using Typescript syntax that includes types) and it is compiled into lua.
Wonder if that could be an alternative that can work for you.
That sounds pretty neat thank you. At some point lua had an official typed extension that is no longer maintained unfortunately. Hopefully there's a stable fork one day.
Oh yeah, I heard it was poorly recieved. The syntax wasn't great and generally the support sucked. AFAIK there is no progress on types for lua.
just put int_ or str_ in front of your variables
problem solved 😌
I use python exclusively when I want to quickly throw some shit together that nobody's ever gonna spend any time maintaining, so that tracks.