If programming languages were weapons. Old but gold.
If programming languages were weapons. Old but gold.
Source: so old it's lost
If programming languages were weapons. Old but gold.
Source: so old it's lost
You can definitely tell how old it is because both Rust and 3D printed guns have gotten way better.
And TypeScript is just the JavaScript sword, but with a cheap leather hilt.
And C# now can be taken off the donkey and mounted on a penguin and works rather well.
Now i can't get that picture out of my head. Its amphibious too!
because it makes it (type)safe to use..!
Also C# (or should I say the .net framework) is now cross platform, which wasn't really the case when I first saw this meme.
This joke made sense when instead of .net you could only use Mono with C# on other platforms, which wasn't very good at the time.
Yes, especially when you're running linux, and the project you started on windows that uses serial ports suddenly doesn't work any more and you wonder why.
Hint: The events for serial data received didn't fire under mono, for reasons.
Mostly right. Microsoft showed off how .NET 1.0 worked on FreeBSD but it was absolutely pointless since they didn't provide commercial licenses to run it on anything else but Windows until .NET Core.
I hosted my personal site using Mono over 10 years ago now and it mostly worked well. I contributed some code to Mono to fix a few edge cases where their behaviour deviated slightly from Microsoft's.
Of course, I couldn't actually look at Microsoft's shared source code when doing that, so I had to just observe its outputs. At the time, Mono code had to all be clean-room implementations, since Microsoft's shared source program, where they released parts of the .NET Framework 4.x source code publicly, had a very restrictive license that didn't permit reuse (it wasn't open-source). Even just looking at the code meant you couldn't contribute to Mono.
I was very happy when .NET Core was announced and switched to a beta of 1.0 as soon as I could.
And Python's migration to 3.x is more or less complete. Took a while (15 years since 3.0), but it's to the point where migration is not a common topic of conversation.
Perhaps a paper hilt. It'll trick some people into thinking it's safer but as soon as you begin using it you realise it still has all the same problems as before.
I don't know, man. I migrated one of my libraries and found 3 bugs just from that. It's prevented a number of other bugs and issues too.
Through long and weary travels,* I bring the gift of source preserved by the workers of the great archives: https://web.archive.org/web/20140831164530/http://bjorn.tipling.com/if-programming-languages-were-weapons
(they weren't that bad honestly, a kind soul that took the journey 9 years ago made mine much shorter)
Thank you! The original source of truth! 💎 As IT people, this is part of our culture and should be transmitted. 🤣
It seems the image is a screenshot of the original page, slightly upscaled, but since the source page includes links to larger images we can make the HD remaster. Shotgun not me.
C++ and ruby are weird, especially since C is somehow considered a reliable rifle. Rust betrays it's age
The M1 Garand is known for having a problem during reloading where you have to stick your thumb in a slot that's about to shut very hard. There are techniques to avoid getting pinched, but "Garand thumb" is a well-known phrase among vintage rifle enthusiasts.
This fits C very well.
Agree. That one didn't age well...
C is very reliable. It works almost everywhere with very little resources or overhead and many of the most fundamental parts of our systems (that have to work reliably) are written in C. Many of the languages in that image are even implemented in C.
If you want to write portable, fast, and simple code C can help you with that if you use it in the right way.
The old joke is that C++ is an octopus made by nailing legs to a dog.
So it should probably be a rifle-chaku made by connecting two Garands with a chain.
C# vs Java is also really weird since C# started out as basically a Java clone.
I watched Jon Gjenset's stream where he implemented the beginnings of a BitTorrent client in Rust and of the four hours about 25% of it was spent wrestling with quirks in serde and reqwest.
It was pretty discouraging watching a pro have to fight the ecosystem so hard.
Old enough they still know Prolog.
It's not as common any more, but there's still things using logic programming languages (Prolog and similar) even today.
Java uses it in the type checker. From the JVM spec:
The type checker enforces type rules that are specified by means of Prolog clauses.
There's some other compiler and NLP (natural language processing) use cases for it too. I've seen some companies use it to define restraints for their business logic, which isn't too different from the type checker rules use case.
It's definitely fallen out of common use though.
We did Prolog in university - actually it was one of the two languages we had to learn in CS, the other one being Pascal.
I always considered Prolog a pain in the ass and unsuitable for anything bigger than a piece of homework due to the "we don't do loops, we have tail recursion" making the code unnecessary complex and hard to read. On a list of Write-Only languages I'd rate it a few steps below Perl.
It's a pretty good representation of Rust, being 3d printed means that it's the only gun where you can't shoot yourself in the foot
[flips safety off[
But it can just blow up in your face
Yet
(?(bruv(,(problem(a(got(you(,(Oi)))))))))
In Clojure it could be
clojure
(-> Oi , you got a problem , bruv ?)
It's funny because people describe PowerShell as powerful, but really they mean it's also a hammer to mash everything with. "Powerfull!"
"perl was probably useful once"?!
I'm willing to bet a TON of medical and banking data is still making its way through perl today. (I'm not necessarily saying this is a good thing, but I have years of experience in healthcare IT).
For that matter, there are still folks out there coding, professionally, in FORTRAN.
Thing is, back then, we didn't know any better. Software was a commodity, and both the people who wrote it and the people who bought it had grown up in a time before the internet, before SaaS; people whose parents who, if they made things, made widgets.
Back then, you could write a piece of software, and it was done. Then you sold it, and moved on. If the old software had bugs, if they weren't catastrophic enough to cause a lawsuit, buyers learned to live with them. It was too bad; you already shipped the tapes. And few companies employed their own software developers unless they were software development companies. Man pages have a BUGS section, and that's because there's no intention to ever fix those bugs, because that software is done.
Software today is never finished. Our first reaction if we see a project with no recent releases is that it's abandoned, or dead, and certainly that it's worse than a project with recent commits to the repo. Github is a huge culprit in reinforcing this mentality, but mobile app platforms (stores and OSes) are terrible about this, too. Google constantly changes the Play store in ways that force developers to tweak their apps lest they become incompatible, booted, or get flagged as being "old" a.k.a. "inferior."
Yet, still, there's so much software out there that's complete. An institution may hire a developer to come in and make a change, but it's usually a contract one-off; it's more like taking your car in to have the starter replaced. Those systems are going to continue keeping "dead" programming languages (commercially) alive for years to come.
I use perl for that stuff (mostly automation) that's a bit too complex for bash, but doesn't need a proper project. Modern people would use python for this kind of thing. But, I'm too old to change!
and perl is orders of magnitude faster than python for document parsing
When it comes to surprising behavior, Perl isn't any worse than JavaScript. Which admittedly isn't a great comparison for either language. Most of the bellyaching around Perl has to do with regular expressions, but every other language out there picked up Perl's regex syntax in a mostly verbatim way (PCRE).
Perl is still as good an interpreted language as any of the others tbh.
Most of its "problems" are cosmetic, which is probably why Python ended up being its successor in many fields.
Given the choice between brutalist and Fisher-Price architecture, most people are going to opt for the latter even if everything's effectively the same inside.
Perl is a language for programmers. This turns out to be a terrible idea. Everything actually works the first time, so you move on, and you're left with the sloppiest inscrutable stream-of-consciousness mess that someone banged out whilst working through the problem.
Perl is the only language where you can write more code than you read.
That's a problem with no coding standards, peer review, etc.
write_good_code() or die(qw(enough rope to hang yourself));
or die unless write_good_code();
I spent my career writing COBOL. Sad not to see it on the list. I think it would be a shield you can bash people with; clunky but effective
Cobol as a shield would also fit with it inexplicably still be in popular use long after anyone expected!
What's that I hear? It sounds like Grace Hopper cackling from the grave...
Python V2/V3??? How old is this thing? Not even Debian comes with Python 2 these days.
Not even Debian comes with Python 2 these days.
It was only removed 9 months ago
OP was technically correct, the best kind of correct.
Wheres assembly? Lol
Assembly is a scrapheap with every sort of technology imaginable but it's all broken. Could be an iron man suit, or you could just grab a length of rebar.
It's a musket. A really powerful one but you gotta do everything manually.It also comes disasembled and requires hours of work to be built.
Assembely is a pile of iron ore. Make what you want with it.
Assembly is a revolver-style footgun with a speed loader. In just five cycles it blow your entire leg clean off.
It's a box of unassembled weapon parts.
I like the other response here
assembly is a gauss gun... you just have to manually align the magnets
Where is verilog?
LISP is most accurate
I, too, have met Richard Stallman.
(I kid. Mostly. He's amazing in so many ways, but he's a little off sometimes.)
Yeah, fortunately rust and go married since then
This reminds me of shooting yourself in the foot in various programming languages
Then you have Clojure - a machine gun that shoots shivs.
I feel like python would be an AR-15 or something, generic modern weapon that's easy to use but doesn't really do anything special
Definitely better than this outdated version. Nobody uses Python2 unless they want to at this point
Assembly: A gauss rifle, but you have to manually align the magnets
BASIC: 2mm Kolibri
Nim: An AR-15 that you can modify to shoot explosive minigun bullets
Crystal: A halberd with obsidian crystals
Pascal: Trebuchet. A small handful of people know how to make it a truly powerful weapon capable to bringing down any and every opponent.
Python needs an update:
Python would be a Tavor TS12 automatic shotgun with rotating tube magazines. It's heavy, doesn't have a fast fire rate, but it can fire a ridiculous array of ammunition, and they're working on the ability to fire all the barrels at once (GILess)
They've been talking about removing the GIL since I was in primary school. My children are in primary school now. I'll believe it when I see it.
I believe it was announced that 3.14 will make it an optional flag, so here's to hoping.
There's now been an investment of dev time from the company formerly known as Facebook to try to push it in 3.12 or 3.14.
If you write C/C++ libraries for Python you can disable the GIL
Maybe try a different lemmy client, it loads fine for me in sync
Fine on Liftoff as well
It's a very large image, so many clients load a scaled down version. On Boost at least you can press the HD icon and it loads the fullsize images where stuff is legible.
JavaScript is a foam bat. Easy enough to wield and it'll get the job done, but very inefficiently and it'll be an ugly sight..
however, it is still used and endorsed by every army
Definitely ancient since C# has been cross-platform for 4 years with Dotnet Core. If you include Mono, make that 19 years.
I wonder what Erlang/Elixir would be, some kind of nano-bot hive mind?
Malbolge would be a bioweapon and you're patient zero
still waiting for some of these memes to include haskell...
Haskell is the "words as a weapon", a heavy book that nobody really understands but is great to thump heads
haskell is an intricately designed laser gun that you cant shoot it without a learning group theory and lambda calculus
Finally, a computer analogy that's not about cars
Batmobile
Hey now! PHP may be old and a bit clunky, but it gets shit done. I'd say PHP is the Colt repeating rifle, since PHP won the internet and the Colt won the West. Much like the Colt, there are better tools available today, but if you want stuff done reliably and quickly, PHP and the Colt are good choices.
can confirm. am crazy and dangerous. 🤣
Since my father makes anywhere from $400-$1200 an hour coding in COBOL, what's COBOL?
Secret magic chants of the ancients
A T-Rex. The only people with the know-how to convert everything it does to something more modern are $400-$1200/hour motivated not to.
Rust is correct. Mostly ignore as useless, but is the safest and reliable weapon, on a good hands can hit someone hard and kill it.
Rust used to be correct in 2014 when this was made. It's pretty fucking good, now
That hose got me a company and many good jobs, still loving the hose to build.grrwt projects. I love my PHP
c# is absolutely a laser rifle strapped donkey nothing has ever spoken to me so much b4
I learned perl to make IRC bots and to customize bulletin boards in the late 90s, early aughts.
I owe a lot to that language as it impressed a woman with my skills in it. I got my first marriage and eldest son out of it.
Funny. I learnt perl to make an IRC bot. I didn't even get a tee shirt, let alone a wife and son
Nice seeing Mathematica and Lisp mentioned. I feel like Marvin the Martian after reading.
Its a travesty that MATLAB isn't in there somewhere.
ADA is an F-22 Raptor. Effective and functional, but you can't have one.
What about FORTRAN?
fortran is a bow and arrow. it was quite powerful and widely used in the past, but i have not met anyone in recent years who uses it other than as a hobby.
Boy do I have news for you...
There is nothing funny about FORTRAN.
haha php bad, kill yourself 👌 lolol 💯👌👌😂😂😂
If you're going to make these "If programming languages were X" jokes, at least be a little bit creative with them.
It's an old sharepic, they didn't make it.
PHP is a sturdy club. You aren't going to take over the world with it but you can reliably put a dent in something.
I mean, PHP is used on at least ~35% of sites (based on the number of sites that run WordPress), so PHP itself has already taken over the world :)
but like, wasn't facebook written in php and didn't it kind of take over, about as much as any programming whatzit ever has? (not saying that was a good thing, but yeah...)
Way too kind to Java. Otherwise, pretty accurate.
(I just hate Java. Lol. Despite writing it 40 hours a week.)
It's fitting that 3D printed guns have also come a long way.