Ewww default exports. Explicit named exports are better! And so it begins
How very dare you share my opinion!
PascalCase default exports for Classes
camelCase named exports for functions
ALL_CAPS named exports for constants
How about some
fun
?How about some
fn
instead?pub async fn foo() -> Pin>>>>>
oh fuck commonmark cant display the syntax :( well anyone who has done async rust can imagine
p a f fn(){}
Pin<Box<dyn Future<Output=Result<AsyncResponseThatYouWillHaveToAwaitAgain<ActualResultType>, InscrutableErrorTypeThatDoesntImplementDisplay>> + Send + Sync + 'static + 20MillionMoreAutoTraits>>
Exactly, now we are talking
these puns are getting
func
yChef’s kiss 👌
So much better
fun
is the punchable face of keywords. I don’t know why, but I hate it.Oh, you’re no
fun
.^I’ll see myself out.^
I prefer good old
def
How about some
(defun)
?better than
function
Kotlin?
Yes
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.
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.
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
just put int_ or str_ in front of your variables
problem solved 😌
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.
When the grey beards wake up they’re going to be fuming
int main() {}
Seriously. why isn’t there any C love around here?
Who doesn’t use arrow functions?
Arrow functions should be used only for callbacks. I hate that people has started defining named functions with arrow functions in JS. Arrow functions are not hoisted and the ordering of your functions is going to get wonky, because you need to define all you functions first before composing them, when it should be the other way around. Start with the most high-level function which calls lower level functions.
I had this exact fight with my team several months ago, and lost to popular opinion since the rest of my team are either zoomers or indifferent.
I’ve reached the point that I cringe at the mention of arrow functions because so many people seem to always want to use arrow functions.
Like I’m looking up something on stack overflow and half the answers are arrow functions that are that way for no other reason than to use the fun little =>
All good programming teams are run as benevolent dictatorships for precisely this kind of reason.
sum(your_mom <- rep(69, 420))
R?
NaN
your_mom is undefined
It’s being assigned and passed to
sum
at the same time. One of the many entertaining quirks of R.