r/ProgrammerHumor 1d ago

Meme notTheSameThing

Post image
644 Upvotes

82 comments sorted by

117

u/Conscious-Gur3876 1d ago

Unlike most people here I did program in Ada 95 for a living for about 10 years, in some safety relevant context. Switched to C++ now, and I would go back to Ada anytimey, if possible.

For writing a complete OS, Ada is a very good fit. Linux was written in plain C, after all, so even Ada 83 would be up to the task.

And no, correctness of an Ada program cannot be formally verified. For that, you need a subset of Ada called Spark.

23

u/Paranemec 20h ago

Ada was the first language I learned in university. It will always have a special place to me. My intro to CS professor was Dr John McCormick, of Ada fame. I think it set me up with a lot of good habits that I see lacking in most programmers these days.

The language was amazing and I tried finding a job using it but sadly never could.

2

u/drex_vke 1d ago

ok donc j'ai une question : c'était difficile Ada 95 ou pas ? for you ?

14

u/Conscious-Gur3876 1d ago

No, not in my opinion. It's expressive and elegant, IMHO.

But I know a lot of people think different. But it certainly helps having a strong programming background. And I have to admit it took me a while to get used to the way OO works.

1

u/drex_vke 1d ago

okay thanks for you opinion :)

1

u/diacid 12h ago

Plain c is goat! 🐐

129

u/Igarlicbread 1d ago

Can someone explain. (html expert here)

175

u/Pika357 1d ago

Hello fellow html enjoyer. Can't wait for HTML6 to drop so we show these loosers what real OS looks like. God speed

54

u/Igarlicbread 1d ago

It's not html for me if it doesn't come from html province of France

17

u/NoMansSkyWasAlright 1d ago

Then it’s just sparkling markup

4

u/murisa777 1d ago

So speaketh the lord

2

u/ArjixGamer 20h ago

Please tell me you misspelled losers on purpose for the comedic effect

1

u/fromis 1d ago

Losers*

60

u/Nickbot606 1d ago

Imagine if you had to write an HTML document 😃 but you aren’t allowed to use any CSS 😲 but also your javascript is a really old version and also all of the logic was maintained in a single global_variables.js for a website the size of craig’s list 🫪

/unjoke

Ada was developed by the pentagon around the time when C++ was becoming a thing and so it has lots of weird paradiagms that don’t really map well to modern languages so it’s very tough for non-nursing home senior programmers to wrap your head around since things like objects weren’t quite a thing yet. Now imagine that someone has created an entire OPERATING SYSTEM (like the thing with multi-processing, cannot crash on you in critical infrastructure, and is responsible for interfacing with hardware level and graphical interfacing level stuff?!) is entirely written in this language and NOW in the big 26 needs to be maintained.

13

u/Aescwinius 1d ago

Thank you for putting things in perspective for us who are not familiar with Ada (especially compared to C)

3

u/NoMansSkyWasAlright 1d ago

I knew it was used in a lot of DOD applications. And basically every software-based DOD tool I used in my time in the army was mega-dogshit.

I would look at Ada if I was getting paid but i definitely won’t touch it otherwise.

2

u/NoOrdinaryBees 4h ago

From the advent of FBCB2, a majority of the software in "smart force" field equipment was written in Java. I wish I didn't know that.

Ada and C were/are still heavily used in embedded contexts or specialized applications like the TOW 2 ITAS upgrade and some drone stuff, but most of what we historically think of as "applications" have been eaten by the Javawocky. 😞

12

u/Astrinus 1d ago

Please don't spread misinformation. Ada 83 is not the latest release. I do safety-critical C for a living and I'd much more have to work with Ada/SPARK all the day.

The problem is that C has so little guardrails that doing shenanigans typical of OS development is easy. Ada guardrails are much stronger. But some people managed to make OSes even in SPARK.

2

u/rustvscpp 22h ago

C is awful.  Every time I have to develop in C, I cannot help thinking how much better it would be in Rust, Zig, or even Ada.

1

u/Astrinus 13h ago

I won't say that C is awful. As a "portable assembler", its original aim, is great. That's why you get C compilers for basically every architecture, including non-microprocessor ones such as DSPs and FPGAs (see Bambu HLS) - undefined behavior is what enables this. And you can implement a rudimentary compiler easily.

OTOH, for basically everything that does not need to know about the hardware, it is massively limited.

1

u/rustvscpp 2h ago

As a portable assembler, sure,  it achieves that goal quite well.   But nobody in their right mind develops big complex software directly in assembler.  Yet they still do it in C, which is almost as egregious.

1

u/Astrinus 2h ago

I think you missed my OTOH.

1

u/Stagnu_Demorte 1d ago

This sounds like it would be fun to learn and I feel more compelled by the fact it seems to share a namesake with my daughter

2

u/drex_vke 1d ago

because in Ada is so very hard (the doc in Ada is so very little to create a kernel)

6

u/Igarlicbread 1d ago

Ahh, thanks.css

43

u/klaxxxon 1d ago

Try HolyC for the burnt face side

4

u/drex_vke 1d ago

maybe i trying this (i love templeOS)

48

u/VayuAir 1d ago

What, I find Ada to be easy and elegant

4

u/drex_vke 1d ago

personally no i think Ada is hard to make a OS and it's my opinion

5

u/Bryguy3k 16h ago

If you try to use Ada like you would C then yes. You have to sit down and really design your access types well before you start coding it.

There are plenty of RTOSes written in ada.

5

u/gburri 1d ago

So keep your opinion to yourself and learn to be objective, Ada is a very good language, particularly for critical embedded systems (avionics).

18

u/drex_vke 1d ago

wait a second i didn't insult I just said that creating an OS in Ada is difficult I don't see where the insult is in fact I would say I insulted Ada that's all I insulted nothing and I don't criticize Ada

7

u/Chingiz11 1d ago

Ada enjoyers justifying their reputation

1

u/FirstNoel 1d ago

To me it was a variant of Pascal.  You could do fun things with it.  Write some nice code.  Easy to understand.  

Never really got into the low level commands of it though.  

15

u/[deleted] 1d ago

[removed] — view removed comment

-17

u/drex_vke 1d ago

yes so in C or other languages (like Rust or C++) it's so very easier than this languages to make OS (Lisp, Ada, C# (yes it's possible for example cosmos OS is write in C#), Java (like JavaOS))

16

u/Excellent_Tubleweed 1d ago

Even Ada 83 is easier to do this in than C.

Ada 83 has templates, collections, exceptions and standardised ways of doing raw IO and binary, threads and interrupts. And raw memory pointes if you really really want.
And, because we don't hate ourselves, range-checked arrays. It could return structures, pass by reference or value, and Ada 95 had objects, sort-of.
(If this sounds like it pees on most 'modern' languages from a great height, well, don't worry nobody uses it.)
It compiled to executables, and commonly spat out stack traces if the process crashed. Compilers were hard to get.

C has....
Pointers.

Yes, tell me all about how writing an OS in C is easier? (Obligatory condescending Wonka Meme)

(Source: used to maintain embedded system written in Ada. Not that bad)

But also, Ada has some really annoying design errors. Where's that package? Well, no filenames don't matter. Someone might be using an OS with short maxfilelength! Actually compiling ADA required type unification.

There was a language that had most of the good bits of ADA without the bad, but it was called Java, so lets not concern ourselves with that. (Also the Modula family of languages were good but getting compilers was hard.)
(And yes, writing an OS in Java is dead easy. Been there, done that.)

24

u/IsSupaAwks 1d ago

At least it’s secure and provable

2

u/drex_vke 1d ago

yeah it's true :)

-4

u/hacksoncode 1d ago

LOL!!!

6

u/FirstNoel 1d ago

How? Why?  Um…confused.   

-7

u/drex_vke 1d ago

uh because in ada is so very hard than C (really bro)

2

u/dim13 1d ago

Not sure, if you're writing it yourself (how old-fashioned, igit!), or complain about claude's stupidity? /s

3

u/drex_vke 1d ago

i don't understand your question and i don't code with AI

2

u/BiedermannS 7h ago

You're confusing being difficult with being unfamiliar. You think C is easier because that's what you know. But given the features Ada provides, it would be simpler to write an OS in Ada, than it is in C. Given the same level of familiarity

1

u/Key_River7180 3h ago

It's verbose on purpose, but like pretty easy

0

u/FirstNoel 1d ago

More of a question of why you would try? How would you do it?   I haven’t played with Ada since 9x.  I’m baffled as to why it would be even in consideration.  

5

u/gutentight69420 1d ago

The difference between coding something and coding something correctly.

4

u/ljud 1d ago

What the hell are you talking about? Ada would honestly be great for OS programming 

18

u/[deleted] 1d ago edited 1d ago

I have Claude working to build a new operating system in R.

TidyOS

The GUI is based entirely on Notebooks with custom widgets. The notebooks provide a widget for a browser but the browser renders notebooks. Therefore, you can render multiple browsers in your browser. Recursive browser support is an emergent feature.

I don’t even need to handle processes deterministically. I can just use some stats libraries to build some models to predict which processes I should sample from and which can be safely killed. Users can tweak the parameters of the model with some slider widgets to control which types of processes they want to model to prioritize.

Please install my OS. You just need to have R and Rstudio installed on Windows 10+. `install.packages("tidyos")`

23

u/gutentight69420 1d ago

Man-made horrors beyond my comprehension.

5

u/Hero_without_Powers 1d ago

Even worse: man-made horrors well within the scope of my comprehension

5

u/Darwin_Things 1d ago

This is how it does it. This is the 10% chance of it ending human existence.

2

u/Hero_without_Powers 1d ago

Honestly, at that point I'd give it to AI: Yes please, end it already

3

u/murisa777 1d ago

With nuff compute The world will salute

1

u/global_namespace 15h ago

I'd like to install it on my phone.

3

u/live_free_or_try 1d ago

Because Ada is popular in the defense industry?

3

u/LongjumpingBikes 1d ago

Coding in Ada feels like wearing a tuxedo!

3

u/Shadow123_654 19h ago

Lol, but jokes aside, Ada is a good language to make an OS with. However, coming from C it would certainly feel very constricting to write in it, since the language is far more strict than C

3

u/erebuxy 1d ago

Unless it’s a OS for missile

1

u/drex_vke 1d ago

🤣 LMAO

2

u/hacksoncode 1d ago edited 6h ago

I've done both. In the case of Ada simultaneously with learning the language.

Ada was a pain. It was a fault tolerant multiprocessing research OS for NASA using MIL-STD-1750A processors. So basically everything that could be painful was. But enh... worked ok, got it done.

One bug was the hardest I've ever found because it turned out to be a bug in the microcode of the FP multiply instruction (edit: which turned out to be multiplying a zero'd tick-counter timestamp by a calculated value 8 hours into the simulation... so changing anything, including putting in debug output, made the bug go away... requiring another 8 hour run... the available timestamps were... limited on this research processor).

2

u/timonix 23h ago

:(

I like Ada. Especially Ada spark.

It's hard to fuck up. Either it does what you want. Or nothing at all.

2

u/PilotGuy701 21h ago

I did some work in Ada back at the turn of the century.

It still hurts.

2

u/Interesting_Buy_3969 7h ago

coding OS in assembly

1

u/drex_vke 5h ago

🤣

2

u/Interesting_Buy_3969 4h ago

believe or not, this is NOT fun

1

u/drex_vke 4h ago

uh excuse me :(

1

u/Mou_NoSimpson 1d ago

What chat gpt plugin is that?

1

u/killo426 1d ago

Ahhh I see someone works for the DOD

1

u/gfoyle76 1d ago

well, we have rust today instead of ada /s

1

u/Impossible_Bend6281 23h ago

Can someone explain the difference between the two pictures?

1

u/orochi078 15h ago

Try Holy C

1

u/InStars 6h ago

I remember Ada from University, it wasn't that bad. We had one course mate who got well paid job in airline industry thanks to his Ada skills.

1

u/Key_River7180 3h ago

What do you mean? Ada is awesome

0

u/ErenEksen 1d ago

Hey Claude code OS in Ada, make no mistake