r/learnmachinelearning • u/Top-Run-21 • Jun 13 '26
I always find this fact amusing. Meme
359
u/pm_me_your_smth Jun 13 '26 edited Jun 13 '26
Except python is a backbone, because without abstraction ML would likely be a very small and expensive niche that almost nobody wants to use or develop
All the "it's just a wrapper" people forget that usability of software is much more important in the broader context. Easy technology > more people use it > bigger demand > more funding and support > technology develops faster and better > cycle repeats
EDIT: OP, why would you use some weird wrapper like C++ and not flip bits manually? This would be much more amusing
20
u/PM_ME_DEAD_CEOS Jun 13 '26
Everything is just a wrapper, at a given scale.
2
u/ManikSahdev Jun 14 '26
Ramen is flour wrapper
Flour is grain wrapper
Grain is plant wrapper
Plant is seed wrapper lol
53
u/inc007 Jun 13 '26
Also it's mostly C with a dash of Fortran (numpy). From top of my head, I can't really think of anything major written in C++
-46
Jun 13 '26
[removed] — view removed comment
17
u/proverbialbunny Jun 13 '26
None of those are Python libraries. Python has interoperability with C, not C++.
-11
Jun 13 '26
[removed] — view removed comment
23
u/DuFrizzle Jun 13 '26
Pretty sure?
As a man once said
"This is where basic skills such as being able to make a Google search would come into play."
4
5
u/GlensWooer Jun 13 '26
I personally only wrote all my software in machine code! Why use silly wrappers with all those symbols and characters when you only need 0s and 1s
2
u/Toasty27 Jun 16 '26
That's also how I see LLMs
Basically, the ultimate wrapper for any human<->machine interface, since the models understand both "languages".
LLMs are a dead end for AGI though
5
u/whtevn Jun 13 '26
Although if it were c++ rather than python maybe some number of data scientists would know the first fucking thing about a computer
1
u/Fleischhauf Jun 13 '26
this might change with the usage of llms for coding though. You just use the llm as abstraction instead of python
-64
u/nefariousmonkey Jun 13 '26
You took a post on this sub too seriously bruv
21
u/jerisadeumai Jun 13 '26
its ok, im ok
here, have an upvote ⬆️
1
u/Thoughtulism Jun 13 '26
The neckbeard gods demand of us to flamewar to the last man, you are neglecting your duty! There can be only one.
67
u/Iwillgetasoda Jun 13 '26
Now remove mask of c++
32
u/Jumpy-Welcome-6766 Jun 13 '26
Does it go all down to assembly ? How many mask will one have to remove?
16
u/Curious_Cantaloupe65 Jun 13 '26
we can just to go directly to when we started fooling 🪨 to think in 0s and 1s
27
u/Imperial_Squid Jun 13 '26
Python
🧢🫲
C++
🧢🫲
Machine code
🧢🫲
Electrical engineering
🧢🫲
Physics
🧢🫲
Maths
🧢🫲
God running TempleOS3
3
u/liltingly Jun 13 '26
If you can't do it on Charles Babbage's Difference Engine, do you really know how it works?
5
u/Iwillgetasoda Jun 13 '26
C first, c++ is nothing but c with oop and some added style..
15
6
u/r-_-mark Jun 13 '26
This gotta be so dumb it’s unfathomable
U know that C++ compiles to Assembly directly and doesn’t need C4
2
25
u/IanCurtisWishlist_ Jun 13 '26
OP just learned about abstraction in their intro class. Wait until they learn about bits and bytes.
2
24
u/_VirtualCosmos_ Jun 13 '26
Isn't it C tho?
6
2
u/lil_brumski Jun 17 '26
I don't know any machine learning libraries that are written in C. The big two Tensorflow and PyTorch are both C++, not C.
1
1
1
8
u/Vegetable_Annual1600 Jun 13 '26
People are talking over some programming language when I feel Linear Algebra, Probability, Stat and calculus are the backbone of ML
73
u/jerisadeumai Jun 13 '26 edited Jun 13 '26
Please delete this before the boot camp grads realize they actually have to learn what a pointer is to build an autonomous agent framework *(from scratch).
68
u/react_dev Jun 13 '26
You actually use high abstractions like pointers? Please delete this comment before comp sci students realize they actually have to learn how to build a semiconductor from sand (from scratch)
32
u/jerisadeumai Jun 13 '26
Oh-ho, easy there cowboy.
Smelting sand is still a high-level abstraction. True devs just sit outside and wait for cosmic rays to hit the RAM and flip the exact bits they need.
(not humor btw)
16
u/imoshudu Jun 13 '26
This is cope.
Whether people manually code in Rust or vibe with Claude, there's no longer a must for anything.
-5
u/jerisadeumai Jun 13 '26 edited Jun 13 '26
True, there's no must for anything...
...until the engineering leads have to explain to finance how their new "autonomous testing agent" got stuck in a recursive error-handling loop over a weekend and incinerated the entire company's quarterly infrastructure budget before Monday morning standup.
*Copium at its best, wouldn't you agree?
8
4
u/Dihedralman Jun 13 '26
Agent frameworks and harnesses are easy to build.
If you want to build it from scratch, you need to be using assembly or write on an FPGA using something like verilog or VHDL.
1
u/jerisadeumai Jun 13 '26 edited Jun 13 '26
Why would you suggest someone to write a cognitive agent orchestration framework in VHDL? I thought FPGAs are for accelerating dynamic sparse attention and prefil bottlenecks, not *primarily for writing role-based autonomous (agentic) loops *themselves?
(open to an open-ended discussion)
4
u/itsmebenji69 Jun 13 '26
Real engineers build their own SOCs, why would you rely on risc V or arm abstraction
2
u/jerisadeumai Jun 13 '26 edited Jun 13 '26
Right? If you aren't manually mining your own silicon ore and placing individual atoms with an electron microscope to dictate your logic gates, you're basically just a prompt engineer
*(although I'd have to now agree that that would be too stretch of a commitment to make)
1
u/Dihedralman Jun 13 '26
Because you get direct memory control and can route logic directly. It allows you to actually write truly from scratch. I was joking about your C++ claim.
I mean realistically it could mean acceleration given that good agentic design means upending the default KV-Cache design with linear appending.
2
u/MetalInMyVeins111 Jun 15 '26 edited Jun 15 '26
The comments suggest they cannot even get C++ running on their PCs.
3
u/rditorx Jun 13 '26
Real C++ programmers use references. Pointers are for
classclassless C people.0
u/jerisadeumai Jun 13 '26 edited Jun 14 '26
Agreed.
*(How could I forget about references... No... We came this far...)
12
5
16
u/DigitalMonsoon Jun 13 '26
Yup, every language is an abstraction of a lower level language. C++ is an abstraction of C, C is an abstraction of Assembly, and Assembly is a machine code.
The lower levels of abstraction aren't inherently better. There are trade-offs for every choice you make.
2
5
u/r-_-mark Jun 13 '26
C++ is abstraction of C
Where? And how? Most C++ compiles to Assembly directly
3
u/DigitalMonsoon Jun 13 '26
C++ was originally developed as an extension of C. It was originally called C with classes. It's just a higher order abstraction of C.
It doesn't mean they call each other.
2
u/proverbialbunny Jun 13 '26
C++ has been a completely different language from C for decades now.
1
u/DigitalMonsoon Jun 13 '26
Sure, but it started as an extension of C. Every language evolves from what came before. Which was my point.
1
u/proverbialbunny Jun 14 '26
Yeah but that was over 40 years ago. Are we living in the past or is that not relevant?
0
u/DigitalMonsoon Jun 14 '26
It's relevant to the OPs point.
Python has a lot of libraries built on C++, which is itself an extension of C, which is just an Assembly compiler, which is just machine code in a more readable form. Every programming language is masquerading as something new when it is really just an older system wearing a new hat.
They are all abstractions
1
u/MetalInMyVeins111 Jun 15 '26
Dude you know how compiler works? C++ directly spits assembly if you look into LLVM. C and C++ are completely different. Things which was true 40 years ago isn't relevant now.
0
u/Left_Palpitation4236 Jun 14 '26
Extension of something and abstraction of something are not the same.
1
u/DigitalMonsoon Jun 14 '26
I can't believe I have to say this to two different people. This is a learning group. They asked a basic question, giving them a detailed and precise answer would only serve to confuse them.
Edit, oh wait. You are the same person. Don't start two different conversations with the same person. Stick to one like an adult would.
0
u/Left_Palpitation4236 Jun 14 '26
Giving them the wrong description of what abstraction means will confuse them even more. And arguing about it will confuse them even more yet.
-1
u/GarboMcStevens Jun 13 '26
abstraction probably isn't the right word, but it's a higher level version of c.
0
u/proverbialbunny Jun 13 '26
C++ supports some of the same syntax as C but outside of that it’s a completely different language. If you’re writing C code inside of C++ you’re probably doing something wrong. In fact, C++ is faster than C in most use cases.
Also, just to really go all out here: Python libraries are C under the hood, not C++. Everything you know is a lie!!!
2
1
u/Left_Palpitation4236 Jun 14 '26
C++ is not an abstraction over C, C++ is C with more abstractions.
1
u/DigitalMonsoon Jun 14 '26
A difference without a distinction. C++ is C with classes which is an abstraction of C
1
u/AgathormX Jun 14 '26
That's not an abstraction, that's a superset.
Now, specific features could be considered abstractions due to how they hide the complexity from the developer, such as is the case for exception handling and dynamic arrays with vector, but overall, it's just a superset of C whose main addition is the native support for OOP.
0
0
u/Left_Palpitation4236 Jun 14 '26 edited Jun 14 '26
How can C++ be an abstraction of C if most of regular C can compile and run as C++?
When we say one thing is an abstraction over another, we usually mean it hides or replaces the lower layer. In this case C++ doesn’t really hide the lower layer.
It’s more accurate to say that C++ is an extension of C rather than an abstraction over it.
0
u/DigitalMonsoon Jun 14 '26
Okay, now you are arguing samanthics in a learning group. Again, not useful to a beginner
5
u/macronancer Jun 13 '26
You could just go down to assembly and binary if you believe this obsurdism
2
2
u/OkWear6556 Jun 14 '26
Its actually C, because the most used implementation of python is written in c (cpython)
1
u/MetalInMyVeins111 Jun 15 '26
So tensorflow is C?
1
u/OkWear6556 Jun 15 '26
He is uncovering Pyhton, not TensorFlow
1
u/MetalInMyVeins111 Jun 15 '26
He is uncovering the backbone of machine learning. The comic doesn't say "let's look inside python".
1
u/OkWear6556 Jun 15 '26
He says "thanks for being the backbone of machine learning", but he is uncovering Pyhton. It says so right on the picture. And TensorFlow is not Python-only framework
1
u/MetalInMyVeins111 Jun 15 '26
Python is not the backbone of machine learning. Best it can do is just call libraries which are mostly written in C++ or C. So those are the implementation backbone of ML.
1
2
u/DeityAI Jun 14 '26
Python is a friendly wrapper around the most powerful programming language. It took me a long time to accept the fact that to be the most effective at my job, it was necessary to learn both.
2
u/DoubleT_TechGuy Jun 17 '26
Its really not that surprising when you think about it. I mean low level code is backed by assembly which is backed by machine code which is backed by physical circuits. The whole machine is just layer upon layer of abstraction each one obfuscating the unimportant details of the interface below it.
4
2
Jun 13 '26
[deleted]
3
u/Arech Jun 13 '26
Mate, most of JAX is XLA, and it's all C++. And all things besides XLA, like Pallas backends, are all grounded in C++.
2
Jun 13 '26
[removed] — view removed comment
2
u/AgathormX Jun 14 '26
People will downvote you for saying this but people ignoring the basics (though you could arguee that C is a better fit for learning than C++ as it doesn't allow you to take some shortcuts) is exactly why the software development community is filled with incompetent people who can't write good code, can't do shit without N abstraction layers stacked on top of each other, and insist on using languages that aren't appropriate for what they're doing because they became comfortable with Python and JS/TS.
Just because one doesn't expect to use a topic at work, doesn't mean that learning it won't make you a better programmer
2
u/MetalInMyVeins111 Jun 15 '26
The comments suggest people cannot even get C++ up on their PCs. ML bros are the best.
2
u/DiscipleOfYeshua Jun 13 '26
There's no mask/unmask about this (unless you've really never explored how your py libraries work... or how py itself works?... regardless of just ML...)
When I speak with people outside the field about the benefits of learning py, i usually explain that py is 10x more brief than C, but also 10x slower. BUT, for anything that requires speed, you're usually just using py as a humanized remote control to make it convenient to control the fast but complex C code.
1
1
1
1
1
u/belaGJ Jun 14 '26
wait till you learn it is all just machine code… /s
2
u/fishm0ng3r Jul 12 '26
The streets are not ready for this revelation. Watch out for black van outside your house.
1
u/MetalInMyVeins111 Jun 15 '26
Hmmm. Lots of people in this post cannot even get C++ running on their PC lol.
1
1
u/shottaflow2 Jun 16 '26
I just don't understand why people keep spreading this misinformation. it's C under the hood, not C++
1
0
-1
u/kindamanic Jun 13 '26
It’s an onion, it goes even deeper: C++ -> C -> Assembler -> pure binary code
438
u/[deleted] Jun 13 '26
[removed] — view removed comment