Is C just a toy language now?

Everything nowadays is made in a scripting language or if it’s old shit C++. Nothing seems to be made in C anymore outside of school projects and hacked together side projects.

Attached: D9D72DFA-924E-40A2-B948-C022A711A86F.png (499x513, 283K)

Other urls found in this thread:

fuchsia.googlesource.com/zircon/ /sanbox/payamm/astro-dsi-2
twitter.com/NSFWRedditImage

user finally realizes advice given by mentally ill trannies thinking socks will make them a good programmer, is bad
what a day

C is still unmatched for low level systems programming. See: almost every kernel ever, most underlying userland components.

D-does this mean playing Melee and being Natsoc are also bad advice?

True but even that might not last if Rust doesn’t crash and burn. Rust’s ability to perfectly communicate with C helps Rust a lot. I could see half of a new OS being written in Rust because it’s easier.

I still don't understand why more systems programming isn't done in FORTH. OFW used it and was massively successful and well designed. How did that not extend to a mainstream or even obscure general purpose OS kernel?

>way back
>hunga durga 1 0 1 0
>grug make logic
>FF many time
>hmm how can calculate more
>what if big logic
>charl baber make big logic
>FF very much
>ah fuk assembly is hard
>hmm wat if abstract the assmble?
>lol xD Jow Forums
>FF some more of it
>hmm m'beard
>uh what if include featur n stuff
>ah ye am denis rich
>FF mor
>heh fuck fags
>what if you could abstract to like abstract concept
>woah wow
>java is a thing lets uh...lets call it uh, uh, scripted java
>FF againly
>huh mayb could improve feature-
>NO FUCK YOU USE C BECAUSE OTHERWISE ITS BAD YOU ARE BAD IT IS BAD DO NOT DO IT USE C USE C THIS IS THE BEST ADVICE TRUST ME
>um ok
>this hard
>no bye

Attached: 1545296460349.png (976x736, 1.98M)

I like Forth but the problem with stack languages is they are slow. Their properties aren’t exploitable enough for compilers to produce top tier Assembly. Imperative languages are exploitable but the most exploitable language type in terms of speed are functional languages. Since everything is immutable and a function will always return the same result when given the same arguments compilers are given a lot of free reign to implement things like memoization and no loops actually isn’t a liability like you would think because of tail end recursion optimization. The problem is compiling functional languages is a relatively new phenomenon so they aren’t caught up to other languages yet. However, I have written a Haskell compiler that produces much faster programs than GHC and is comparable to C speed, sometimes an unironic 1000 times faster than C depending on the program. This is all thanks to the nature of functional programming.

I worked at a company using C, though they couldn't pay salaries.

>nothing is made in C anymore
>Linux Kernel's face when

>almost every kernel ever, most underlying userland components.
Irrelevant, all that crap was written 100 years ago.

Attached: 1420100070807.png (425x251, 197K)

>legacy project written in the 90s
If someone started a new kernel today, it would not be using C. Look into the Fuchsia kernel. About to replace Linux.

>Fuchsia kernel. About to replace Linux.
kek

Attached: tenor.gif (220x272, 63K)

80% of devices running Linux are cell phones.

100% of your face is ugly

And?

Wtf? Who uses Swift in an OS? Why would you use Swift in an OS? And Go too?

Attached: 90AB8872-CFDD-4247-A930-E16C54738099.jpg (750x156, 19K)

>when your goal is to create Frankenstein monster

yes retard it fucking does

Attached: 893B75A7-72AA-448B-817D-5CF5D9DB73F4.jpg (743x889, 79K)

Why not? Have your hot paths written in C/C++ and the other code in safe Swift and Go.

Or write everything in Rust and Lua like that one guy did. Or even pull a Linux and use C and Python. One day I want to make one in Rust and JavaScript.

Who uses Objective-C in an OS?

Attached: 1547536663.png (1739x360, 49K)

Too much of the praise for C on Jow Forums is basically gatekeeping and first-year undergrads who want to fit in, so they act pseudo-elitist about it, rather than any genuine need for mid-level systems programming and manual memory management.

Same reason Jow Forums loves to bash Python despite the language being ubiquitous and incredibly useful for many tasks.

Good programmers/engineers get over this stupid signalling and learn to use the correct tool for the job.

C is for school assignments, JavaScript for web and games, and Python for everything else. Anyone who says otherwise is a dumb freshman.

>JavaScript
>for games
You what m8

The fuck? Python is actual trash for anyone who knows how to program. It literally exists for people who are forced to program in a field outside of computer science. Not even joking, anytime somebody recommends a dynamically typed language I think less of them and their input. If you've ever worked on even a medium-sized project, you would know that it's infinitely more important what type something is rather than what you name it. It's ridiculous to have to look at the context of every variable to identify its type. If you think you *don't* need to know a variables type then please stop programming. All you're doing is contributing shit.

Libraries. Implementations for e.g. encoders, compressions algorithms (FB's shiny new compression algo reference implementation is written in C). And wherever performance truly matters, it comes down to hand-written ASM. So if you know you're going to have to write assembly, you might as well stick with C and get the most performance out of your code.

>large projects in python
you clearly lack reading comprehension, note "correct tool for the job"

WHAT A RAGING AND ILLITERATE FAG.

In 2019, C has honestly no business being used in userspace anymore.
The only acceptable use would be a library that programs in different languages would use, since basically every language has C bindings.

There are plenty of idiots of Jow Forums and elsewhere who think that Python can replace C or any other statically typed language. Ever think that Jow Forums bashes Python because of reasons other than what you cherrypick to support your case?

Shameless samefag.

yes

rust could easily replace it and should

>his samefag detector is broken
kek

>Ever think that Jow Forums bashes Python because of reasons other than what you cherrypick to support your case?
No, imagine thinking Jow Forums knows what it's talking about and giving Jow Forums the benefit of the doubt lmao.

The fact that you thought I was advocating for python to replace C++ in large projects shows you lack reading comprehension or are just strawmanning because you're a insufferable prick. I said Python was ubiquitous and useful for many tasks and you sperged out attacking some points I never made.

forgot my pic

Attached: lol.png (1329x165, 18K)

Look up non-sequitur. I'm done arguing with mental midgets.

Nice shop, faggot. You need to get laid.

>what is embedded programming

C has always been a toy language.

Based.

I know this is bait but I'll bite:

People who think this shit in real life are insufferable faggots who have 0 concept of how much abstraction there already is between them programming in "real" languages bare metal. The amount of abstraction that's achieved by going from logic gates to C is fucking astronomical, and you could probably never achieve writing a C compiler from bare metal in your entire life if it weren't for the work of hundreds of years of mathematicians working all this shit out for you. Comparatively, the jump from C to Python is minuscule in the grand scheme of things. Sure it might abstract away a few data structures and make things nicer to use, but it's nothing compared to carefully organizing bits of sand together in such a way that they perform actual computation.

Computer science and abstraction are tied together at the hip. Losers who can't understand that the continuous abstraction of mathematics is the very essence of computing are the most obnoxious fucking faggots in the world. The losers who can't understand that it's actually harder to think abstractly are the funniest of them all. Sure you can do the equivalent of hand-holding a modern abacus. You're not accomplishing anything by reinventing the wheel for the thousandth time, you're just doing it because someone needs some retarded shit to be fast, but you're not furthering the field of computer-science. You're not developing new fucking algorithms in C, you're implementing something that someone (far smarter than you) has already thought of in a slightly different flavor just so you can get a paycheck.

Nim is compiled down to C. Golang is too, though gofags will screech and try to deny this fact

>There are plenty of idiots of Jow Forums and elsewhere who think that Python can replace C or any other statically typed language.
No one even remotely believes that. You are just making shit up to sperg out.

>JS for web and games
Yeah, because JS can't even do that
>Python for everything else
Write anything mission critical in Python and watch the world burn

>Look up non-sequitur.
Explain what was a non-sequitur in that post. You can't.

Yeah I'm sure all those google engineers who use Python on a daily basis have no idea how to program and should stop programming because of some asshurt faggot on Jow Forums said so :^)

>If you think you *don't* need to know a variables type then please stop programming.
The funny thing is, you really don't, especially in a statically typed language with good type inference. The compiler will take care of making sure that the program is free of type errors.

This is some shitty pasta for any anons wishing to respond.

Go was created precisely because Google engineers are retarded.

>implying Google diversity-hires can program

The rust language itself offers nothing new and is poorly implemented. So what's left besides marketing wank and the community full of shills who harass everyone.

Pasta or not, it's 100% correct.

Not an argument.

AI of top chess programs

Go is not Python, though.

>implying it's the diversity hires who made the engineering decision to use python

>implying HR knows less about coding than engineers at Google

Its word-salad written by a moron.

Python is for Googlers too retarded for Go.

Wow, you're retarded lmao

t. retard who didn't understand the copypasta and thinks C is low level

Nice LARP. Functional programming is slower because modern computers are optimized for stateful programs, you end up doing a lot more computation.

where to even start? you clearly have no idea what you're talking about

Logic gates are stateless. State itself is an abstraction.

Even for a library, I would use C++ and expose a C API with extern "C"
Btw, can you export C symbols in Rust? I mean write a library that you can use from a language other than Rust?
Also, does the Rust compiler do name mangling like C++?

C admittedly has a simpler de facto standard ABI and it's much easier to link with. C++ does have a de facto standard ABI too, but it's definitely more complex. That's why it's the only case I would consider using C.
However, if ABI compatibility is not important, there really isn't any reason to prefer C over C++.

Who cares? Why are you so attached to C? If you want to write low level code, write low level code. You know, C hasn't always existed. People invented it. It's not some Platonic ideal of low level code.

PS. C isn't even low level by old-school definitions.

According to K&R preface it's «fairly low level».
Isn't 1978 «oldschool».

Haskell + Rust master race

Attached: 1488481542712.jpg (640x640, 65K)

>not writing his program only abstractly as a series of mathematical functions
>he actually writes his program into reality
lmao kek

C is hard to learn and essentially useless.

It provides slightly more speed (arguable) but that is irrelevant in modern computers and phones who are faster than anything that could have been imagined when C was made. We also have very good compilers that optimize things.

I wouldn't be surprised if its entirely dropped from compsci in the coming years.

No that would be assembly, but C comes in at a very close second place for that.

C++ is simply more useful. Provides a lot more useful abstractions for large software projects and a lot more power

C is still good for systems programming, but that's about it

>decided to learn programming
>goes to Jow Forums and everyone claims that C is the way to go
>started learning C, went all the way from variables to data structures. the mental breakdown was real.
>after the long journey, i was feeling special
>goes to a tech/programming event that was happening near by.
>every single cool applications and shit was made with javascript, python et cetera.

learning C for 1 year felt worthless.
it was a bad day

Attached: 1547347342136.jpg (504x389, 27K)

>started learning C, went all the way from variables to data structures. the mental breakdown was real.
..really? Are you a retard or something?

Yeah, use a real language like erlang/elixir.
It's like you get to be a devops networking functional programmer with the best stability and concurrency possible all in one.

You manage some memory on a shitty raspberry pi, I'll manage everything else kid......... nothing personel.

>It provides slightly more speed (arguable) but that is irrelevant in modern computers and phones who are faster than anything that could have been imagined when C was made. We also have very good compilers that optimize things.
The funny thing is that C isn't even the language which provides the best performance.
C++, Fortran and, if you want more recent solutions, AST, can potentially be even faster. These languages all have intrinsic properties that allow for better optimization by the compiler.

Even LuaJIT can mop the floor with C code in some scenarios, particularly if that C code was casually written by an undergrad who assumed it would be fast because it's C.

> bait that begins with "I know this is shitty bait, but I'll bite"

Funny pasta

>And wherever performance truly matters, it comes down to hand-written AS
you are a complete dumbass if you think you can outoptimize a compiler

>Nothing seems to be made in C anymore outside of school projects and hacked together side projects.
Wrong

He uses RPG maker

Every script language used today is to satisfy the vanity and hedonism of NPC:s, C and Assembly conquer space

>Good programmers/engineers get over this stupid signalling and learn to use the correct tool for the job.
I've been programming professionally in "C" for over 15 years. I've built an extensive set of libraries that cover around 95% of the work I need to do.
C++ (or any object oriented crap) is a heap of gastly shit (and always will be).
But I will be intregued to know, what language do you use (be specific none of that "right tool for the job" bullshite either).

>Fuchsia kernel
Based on Zircon Microkernel which is programmed in C:
fuchsia.googlesource.com/zircon/ /sanbox/payamm/astro-dsi-2

>t.

Attached: 1537771566378.png (1200x1400, 502K)

This. Also libraries that need to be accessible from multiple languages (core libraries) are written in c, because every language has a way to use c libraries

Check the files, they're not ObjC, they're just fucking C headers. Fuck github, use git like a real men.

It always was. Even back then. It really is the PHP of systems programming. The world is built on toys.

You can't really build a modern optimizing compiler on top of a JIT macro assembler.

>Everything
Leave your room from time to time, user'.

Why would you ever start a new project in C rather than C++?

You’re retarded.

I write C in my work for 4 years now, our clients from Germany don't even want to hear about C++ (embedded software, I'm from Poland)

It's not unmatched. C is outdated.
We only still use it because now that we made the mistake of writing everything in C and interfacing everything with C, it's hard to move away from it.

>Why would you ever start a new project in C rather than C++?

THIS.

opengl/vulkan
drivers
OSes
nothing much

Zircon is mostly C++

Should I take time to learn a different more modern language or use the fact that im already a novice at C and just learn shit using C like algorithms, data structures , and more about how to program?