"Try" is too hopeful. "fuck_around" makes it clear that you know what you're doing is dangerous but you're going to do it anyhow. I know that in some languages wrapping a lot of code in exception blocks is the norm, but I don't like that. I think it should be something you only use rarely, and when you do it's because you know you're doing something that's not safe in some way.
"Catch" has never satisfied me. I mean, I know what it does, but it doesn't seem to relate to "try". Really, if "try" doesn't succeed, the corresponding block should be "fail". But, then you'd have the confusion of a block named "fail", which isn't ideal. But "find_out" pairs perfectly with "fuck_around" and makes it clear that if you got there it's because something went wrong.
I also like "yeet". Partly it's fun for comedic value. But, it's also good because "throw" feels like a casual game of catch in the park. "Yeet" feels more like it's out of control, if you hit a "throw" your code isn't carefully handing off its state, it's hitting the eject button and hoping for the best. You hope there's an exception handler higher up the stack that will do the right thing, but it also might just bubble all the way up to the top and spit out a nasty exception for the user.
I visualized "try" as watching a young child climb something that might be out of their comfort zone, so you're letting them, but stay ready to "catch" them if something goes wrong. I suppose "throw" would be if they soiled themselves in their fall, you can throw them back into the arms of their loving parent for cleaning.
But fuck_around, find_out and yeet would be fantastic.
For some reason, this just sparked an ancient memory of the Geek Code, which was a sort of signature block you could append to your emails and online bios to show off how much of a geek you were in the geekiest fashion possible.
Sure! It doesn't do anything yet, I just have a text file with how I'm intending to architect it.
It quite literally started two four (edit: I can't keep track of time) days ago.
I'll configure a repo, stick this in a file, and push it.
I'll reply with another comment so you (and others) can look it up.
I've come up with some crazy stuff. Instead of something like "class" to indicate a class, it's
🏫 Followed by the emoji name of the class like 🖼️📁. So it will need to be able to handle operators in the name it's amazingly gross! Properties and methods will also be emoji names, like to get the 🖼️📁 "File Name" it would be 📁💳.
I was kind of being sarcastic. I haven’t written a compiler since I rode my dinosaur to college. Still it’s a funny idea. Could probably do it in C using a bunch of pound defines.
It's because we are depressed nihilists who have given up on pretty much everything, running on gallows homour to a point where we are meming youth slang. Don't worry, we're fine haha... Ha...
Florida is basically the unofficial US Capitol now, so it would be confusing and ambiguous to have it associated with the traditional forms of unexpected insanity. Now it's going to be an entirely new kind of unexpected insanity, so Ohio has been selected to represent the old kind of unexpected insanity that Florida used to represent.
Aside from how Microsoft stole it, fucked the standard library, fucked the naming conventions, etc. You would never just “throw” without specifying what you were throwing.
This is incorrect. The C# is valid. Throw in a catch statement simply rethrows the caught exception. Source: I've been writing C# for 20 years, also the docs.
I won't act like MS absolutely didn't steal core concepts and syntax from Java, but I've always thought C# was much more thoughtfully designed. Anders Hejlsberg is a good language designer, TypeScript is also a really excellent language.
In Java you would say “throw e;” (to rethrow the same exception you just caught.)
You wouldn’t just say “throw”
Or you could also throw some other exception. But the syntax requires you specify what it is you are throwing. (And sane in C++, where you could throw any object, even a primitive.)
Wildly, in C# you can do either and it has different results. I believe a bare throw doesn't append to the stack trace, it keeps the original trace intact, while throw e updates the stack trace (stored on the exception object) with the catch and rethrow.
In C#, you can only throw objects whose class derives from Exception.
You can do either, but you usually do neither. The best way is to throw a new exception for your situation and add the caught exception as an inner exception. Because rethrowing resets the stack trace, removing the context from an exception message that is often pretty vague, and "bouncing" with throw; doesn't tell the next exception handler that you already handled (part of) the exception.
To be honest I’m just playing into the meme of Java.
My understanding is it’s academically great, but a pain in practice.
For reference we use C# .Net, Entity Framework with GraphQL and React TypeScript for our enterprise applications and I really like C# now, but when I first started I’d only really used Node.js and some Java.
I started my career in Java and transitioned to c# a few years in and c# is much better imo, especially now that .Net can be run in Linux.
I run a team for a large project (13 deployable components apis/ Windows services/ desktop applications/ websites/mobile) that has mix of vb.net/c# .net framework 4.8 and .net 6 soon to be 8 with angular for Web and wpf for desktop. Slowly but surely working to kill off our legacy code and consolidate.
Some of the older vb code (that existed long before I joined the project let alone became the lead dev) is so bad that a bug fix for nhibernate that stopped silently failing and began throwing exceptions breaks everything if we try to update to a later version. it's such a tangled mess and I'm probably the only one on my team that could unfuck it(but I didn't have the time to do it) it's not even worth fixing even though our version of nhibernate has a CVE with rating of 9/10 (we don't actually use anything that is affected from the finding thankfully) and are just biding our time till we kill off the offending apps.
Ohh and I have a new PM that isn't technical and likes to email me his chat GPT queries and results about technical things.
As well as the
yeetkeyword, I'm really friggin' diggin' this. [modernisation required]The future is now!
The whole thing was pretty damn good all the way through. The only thing that had me wondering was
Until it got to
Well played.
NGL, that helped me actually understand the original function. It's been over a decade since I've touched anything related to C.
the suspense!
Yeah, I love that one.
"Try" is too hopeful. "fuck_around" makes it clear that you know what you're doing is dangerous but you're going to do it anyhow. I know that in some languages wrapping a lot of code in exception blocks is the norm, but I don't like that. I think it should be something you only use rarely, and when you do it's because you know you're doing something that's not safe in some way.
"Catch" has never satisfied me. I mean, I know what it does, but it doesn't seem to relate to "try". Really, if "try" doesn't succeed, the corresponding block should be "fail". But, then you'd have the confusion of a block named "fail", which isn't ideal. But "find_out" pairs perfectly with "fuck_around" and makes it clear that if you got there it's because something went wrong.
I also like "yeet". Partly it's fun for comedic value. But, it's also good because "throw" feels like a casual game of catch in the park. "Yeet" feels more like it's out of control, if you hit a "throw" your code isn't carefully handing off its state, it's hitting the eject button and hoping for the best. You hope there's an exception handler higher up the stack that will do the right thing, but it also might just bubble all the way up to the top and spit out a nasty exception for the user.
I visualized "try" as watching a young child climb something that might be out of their comfort zone, so you're letting them, but stay ready to "catch" them if something goes wrong. I suppose "throw" would be if they soiled themselves in their fall, you can throw them back into the arms of their loving parent for cleaning.
But fuck_around, find_out and yeet would be fantastic.
just what you want from code !
And a decade or so ago it was LOLCODE that had me mildly concerned for the wellbeing of my peers.
A perfectly reasonable language. None of this Gen Z rubbish.
Something something better times. Shakes stick at sky.
Kids today just don't know real code
Hell, kids today don't even number their lines anymore. What's wrong with the world?
For some reason, this just sparked an ancient memory of the Geek Code, which was a sort of signature block you could append to your emails and online bios to show off how much of a geek you were in the geekiest fashion possible.
Goddamn I'm old.
Remember it spawning a bunch of copycats? For a while every community had their own code block. I wrote one for a usenet group i was in at the time.
alt.sysadmin and alt.sysadmin.recovery both had em iirc...
Wow, hadn't thought of that thing in ages. Now all we need is for B1FF to bring back ASCII sword signatures.
As much as this hurts,
yeet;as an aliasthrow;is hilariousOf all the gen z lingo yeet is the best.
You can yoink that word from my cold, dead hands!
Funnily enough, that is a keyword in rust.
(it's a placeholder to remove any bikeshedding)
Pretty sure this is from the esolang bussin
For programmers who need action (cross-generational):
https://lhartikk.github.io/ArnoldC/
😂
Ugh. Just
its_giving rizz ratios vibe;No more needless nesting plz
Considering
vibeis probalbyfloat, I doubt any exceptions can be thrown there, you can eliminate another useless scope.Even if it's not
float, I'd consider burning alive anyone who overrides an operator like this anyway.Float? Do you meanfax? Get with the program, old manIf you confused
periodandfaxintentionally, I commend the effort.Honestly, that's about an inch away from Python...
Its literally bash
I'm speaking from a descriptive naming concept.
That's way better than my emoji based programming language.
I’m not so sure. Send a link.
Haven't published it yet.
Here are comparisons:
⚖️
🐲
🐲⚖️
⚖️🐲
🚫🐲⚖️
Post the GitHub repo.
I will help you make this happen.
Sure! It doesn't do anything yet, I just have a text file with how I'm intending to architect it.
It quite literally started
twofour (edit: I can't keep track of time) days ago.I'll configure a repo, stick this in a file, and push it. I'll reply with another comment so you (and others) can look it up.
I've come up with some crazy stuff. Instead of something like "class" to indicate a class, it's
🏫 Followed by the emoji name of the class like 🖼️📁. So it will need to be able to handle operators in the name it's amazingly gross! Properties and methods will also be emoji names, like to get the 🖼️📁 "File Name" it would be 📁💳.
I was kind of being sarcastic. I haven’t written a compiler since I rode my dinosaur to college. Still it’s a funny idea. Could probably do it in C using a bunch of pound defines.
I was thinking Rust, but that works too.
Because then I could call the Language Spoons.
It would as uncomfortable to use as it is to watch Rusty Spoons
I always thought it was "prizes"
It is.
Thx and sorry. My spelling skills are bad.
Have you seen eggs lately, though?
FAFO block passes better
I'd take that
yeetinstead ofreturn...So you like rust https://doc.rust-lang.org/beta/unstable-book/language-features/yeet-expr.html
This is a better argument to adopt Rust than memory safety or even sane package management.
Just needs a rap about the fun in functions performed by 60-year-old seniors
slowly steps back and returns to basic and z80 assembly
*Gen Z assembly
*z18 assembly
Ah, yes. A private method for working on a public field.
Ah but maybe the vibe is a
lowkey periodwe can't be sureratiosI need this and I'm an elder millenialRatio is when your comment receives less upvotes than my reply, you get ratioed.
I know! (Jumpin' Jehosaphat!, I'm no boomer!) 🤭
i hate it so fucking much
I fucking love it. Gen Z slang is so lighthearted and fun.
It's because we are depressed nihilists who have given up on pretty much everything, running on gallows homour to a point where we are meming youth slang. Don't worry, we're fine haha... Ha...
Conflating us again with iPad kids?
Just wait till they get Lemmy on their iPads
Big "you damn kids and your phones" vibes from this
Every generation is peddled two insane concepts:
When they are young, they are told that they have a weird bizarre vernacular which sounds stupid to everyone else.
Then when they are old, they are told young people have a weird bizarre vernacular which sounds stupid to everyone else.
Then you die.
Yes, and? Get off my lawn!
Aliasing no_cap and cap to true and false.....
I might have to steal that.....
Shoutout.SpillTea🤣
Too many capital letters in the gen z version.
That's what we Do.
This was by far the best way to explain current slang.
I got all of it No Tea
Should else be big_yikes? That seems situational to me.
It’s actually a comment on the performance loss incurred from a likely failed branch prediction.
Well. I think I'm officially out of touch with the newest generations slang terms. I only understood about half of that.
I have many gray hairs, but here's what I know.
Highkey and lowkey - obvious and subtle.
fax is "facts" - true. Often in the sense of agreement.
Fuck around and find out - do something risky and reap the consequences
It's giving - how it makes you feel, or what it reminds you of.
Cap and no cap - lying and telling the truth.
Big yikes - bad, especially cringey.
Tea - (n) gossip. (v) "spill the tea"
Shoutout - give credit to someone. I don't think this one makes much sense here.
Yap - talk, especially too much or unnecessarily.
Yeet - throw, often without careful aim. (Unlike "Kobe", which is a throw with aim)
You missed
Also got many grey hairs but I like to know what people mean and language evolves. Our generation did it too you get me blud.
Thanks for the catch, I thought I got all of them. Stay skibidi and not Ohio, my friend.
No problem. Ohio is a new one for me?
There was meme on titkok, someone says "only in Ohio" when something weird, impossible, unbelievable or some stupid bizarre shit happens.
Similar to Florida?
Florida is basically the unofficial US Capitol now, so it would be confusing and ambiguous to have it associated with the traditional forms of unexpected insanity. Now it's going to be an entirely new kind of unexpected insanity, so Ohio has been selected to represent the old kind of unexpected insanity that Florida used to represent.
It's recognized by the yoots as the worst state, so being Ohio is bad!
It's worse than "mid", which is meh.
(ノಠ益ಠ)ノ彡┻━┻
I've seen forms of this joke quite a lot in the last few years, and it never fails to make me laugh.
Good thing I'm sticking with GDScript.
@sjmarf And now someone is preparing a PR on C#’s GitHub issues… well done, well done.
Why does the bool have brackets? I haven't really used c#, seems odd
It's a method definition. C#'s standard formatting puts the left
bracketbrace of the method body on a new line. It's equivalent to:Ahhh, that makes way more sense. Thanks
I don’t get the joke. Is the one on the left actually valid C# code?
C# is basically Java and from what I can tell, this looks approximately valid.
Variables can always* be named freely to your liking.
*You used to have to stick to the Latin alphabet, but that’s increasingly not the case anymore. Emoji-named variables FTW!
It looks valid but vibe isn’t declared anywhere so it won’t compile.
No it’s not “basically Java”
Aside from how Microsoft stole it, fucked the standard library, fucked the naming conventions, etc. You would never just “throw” without specifying what you were throwing.
This is incorrect. The C# is valid. Throw in a catch statement simply rethrows the caught exception. Source: I've been writing C# for 20 years, also the docs.
I won't act like MS absolutely didn't steal core concepts and syntax from Java, but I've always thought C# was much more thoughtfully designed. Anders Hejlsberg is a good language designer, TypeScript is also a really excellent language.
In Java you would say “throw e;” (to rethrow the same exception you just caught.)
You wouldn’t just say “throw”
Or you could also throw some other exception. But the syntax requires you specify what it is you are throwing. (And sane in C++, where you could throw any object, even a primitive.)
So that was my question.
Wildly, in C# you can do either and it has different results. I believe a bare
throwdoesn't append to the stack trace, it keeps the original trace intact, whilethrow eupdates the stack trace (stored on the exception object) with the catch and rethrow.In C#, you can only throw objects whose class derives from Exception.
You can do either, but you usually do neither. The best way is to throw a new exception for your situation and add the caught exception as an inner exception. Because rethrowing resets the stack trace, removing the context from an exception message that is often pretty vague, and "bouncing" with
throw;doesn't tell the next exception handler that you already handled (part of) the exception.As a C# developer Java go go and die lol. It sucks imo.
Everyone is entitled to their own opinion.
To be honest I’m just playing into the meme of Java.
My understanding is it’s academically great, but a pain in practice.
For reference we use C# .Net, Entity Framework with GraphQL and React TypeScript for our enterprise applications and I really like C# now, but when I first started I’d only really used Node.js and some Java.
No problem. I’m not sure if all of that would run on all the platforms I use.
.net can run on Linux now
I started my career in Java and transitioned to c# a few years in and c# is much better imo, especially now that .Net can be run in Linux.
I run a team for a large project (13 deployable components apis/ Windows services/ desktop applications/ websites/mobile) that has mix of vb.net/c# .net framework 4.8 and .net 6 soon to be 8 with angular for Web and wpf for desktop. Slowly but surely working to kill off our legacy code and consolidate.
Some of the older vb code (that existed long before I joined the project let alone became the lead dev) is so bad that a bug fix for nhibernate that stopped silently failing and began throwing exceptions breaks everything if we try to update to a later version. it's such a tangled mess and I'm probably the only one on my team that could unfuck it(but I didn't have the time to do it) it's not even worth fixing even though our version of nhibernate has a CVE with rating of 9/10 (we don't actually use anything that is affected from the finding thankfully) and are just biding our time till we kill off the offending apps.
Ohh and I have a new PM that isn't technical and likes to email me his chat GPT queries and results about technical things.
As if default keywords are the biggest deal-breaker.
Now I wanna see this in jive
ruby if matz wete brainror