News for hackers. Stuff that matters.
Re:Why Aren't There C Conferences? by johan_larson on Wednesday November 21, 2018 @02:20PM (#18505240)
Are there many new projects being started these days in C, or even C++? I would expect most of that to have moved over to Java or Golang, with most C-family coding being on extensions of older projects.
Re:Why Aren't There C Conferences? by edanm on Wednesday November 21, 2018 @02:36PM (#18505357)
Of course! Many, many algorithmic intensive applications are written in C/CPP. Low-level applications are as well. As just one example, most algorithmic Python libraries are actually implemented in C/CPP.

Not to mention any memory-intensive or real-time software, e.g. embedded systems - most of those are running on C/CPP, and plenty of new embedded systems are created every day.

Re:Why Aren't There C Conferences? by dman on Wednesday November 21, 2018 @02:36PM (#18505359)
There are entire product categories (Games / Databases / Operating Systems / Video editors / Animation / Data analysis tools / robotics) where C/C++ continue to be the dominant languages.
Re:Why Aren't There C Conferences? by johan_larson on Wednesday November 21, 2018 @02:41PM (#18505394)
Thanks for the info, but I'm not sure databases belongs in that list. I work on a database system (Couchbase), and our codebase is pretty mixed. The oldest part of the system, the Key-Value storage engine, is C++, but the newer parts are a mix of Erlang, Golang, and Java.

Anyone know what some of the newer systems, like Spark and Snowflake are written in?

Re:Why Aren't There C Conferences? by _bohm on Wednesday November 21, 2018 @05:00PM (#18506451)
Spark is mostly written in Scala.
Re:Why Aren't There C Conferences? by Jach on Wednesday November 21, 2018 @03:27PM (#18505778)
I think ANSI C is rare for a new project, but C++ is still common, though I don't know which C++ is dominant. Lots of embedded systems compilers will have borked mostly-C++98 support, there's probably some C++ 98 purists holding out, and then there's the latest C++xx standards that probably don't have full compiler support everywhere too -- plus you always get folks who conflate "C/C++" as if they were one, when they're not, though people sure do like to try and program C++ as merely "C with Classes". Java stole a lot of C++ people over the last 20 years, Go seems to be stealing mostly from the speed-challenged dynamic language crowd who didn't do much interactive development anyway.
Re:Why Aren't There C Conferences? by alfalfasprout on Wednesday November 21, 2018 @02:35PM (#18505355)
Tons. Heck, I'm working on one now. Nothing really matches the performance or wealth of libraries as C/C++. Rust comes close but even then for something like a linear algebra library the ability to use CPU intrinsics, etc. makes a huge difference.
Re:Why Aren't There C Conferences? by steveklabnik on Wednesday November 21, 2018 @04:47PM (#18506378)
If by "CPU intrinsics" you mean SIMD, Rust has that.
Re:Why Aren't There C Conferences? by embedder on Wednesday November 21, 2018 @04:10PM (#18506136)
The entire embedded systems industry revolves around C and C++. This includes the automotive industry, aeronautics, robotics, medical devices, space, much of IoT, appliances, countless defense projects, infrastructure, etc. And even in a traditional computing environment, many projects requiring high performance and portability are still being written in C or C++, such as games and high-fidelity modeling/simulation.
Re:Why Aren't There C Conferences? by jonahrd on Wednesday November 21, 2018 @03:42PM (#18505904)
Firmware! People seem to forget that firmware exists --everywhere--, even at very high-tech firms. For example, think about Tesla, there are probably millions of lines of C in the firmware repository
Re:Why Aren't There C Conferences? by shaklee3 on Wednesday November 21, 2018 @08:29PM (#18507365)
Yes. They're two of the most popular programming languages, and that didn't happen by supporting only old code. I started a new c++ project last week since I still prefer it to go.
Re:Why Aren't There C Conferences? by dmitrygr on Wednesday November 21, 2018 @02:39PM (#18505375)
Yes, anything that needs to be fast on low-end hardware. Java and Golang do not exist there.
Re:Why Aren't There C Conferences? by Jyaif on Wednesday November 21, 2018 @02:29PM (#18505307)
If there are new languages being developed, their compiler/interpreter are likely being developed in C/C++, possibly Rust.

Also, any new database, OS, or AAA game is going to be written in one of those language.

Re:Why Aren't There C Conferences? by nineteen999 on Wednesday November 21, 2018 @02:47PM (#18505438)
Not aware of any AAA game titles being developed in Rust, but I'd gladly have my eyes opened.
Re:Why Aren't There C Conferences? by Kaveren on Wednesday November 21, 2018 @03:11PM (#18505644)
There are none. Standard Rust is great for game development, the infrastructure just isn't there right now, but I think if you were to write a new game engine or operating system from scratch, Rust would be the first candidate language to do so in.
Re:Why Aren't There C Conferences? by nineteen999 on Wednesday November 21, 2018 @03:38PM (#18505867)
The game engine segment is much like the operating system segment - the size, momentum/inertia of the incumbents (ie. UE4, Unity as an analog to Linux, Windows etc) make it rather difficult for new entrants, especially for ones written in languages that are not as popular as C or C++ (eg. Rust).

It's simply too hard right now to find enough programmers proficient in Rust who could assemble a competing product, IMHO.

Re:Why Aren't There C Conferences? by steveklabnik on Wednesday November 21, 2018 @04:46PM (#18506360)
I'm excited to see what happens with Embark Studios; EA SEED started using Rust for stuff, and Embark is a new studio founded by some ex-DICE/SEED folks that's doing everything in Rust. There's also Ready at Dawn and Chucklefish...
Re:Why Aren't There C Conferences? by nineteen999 on Wednesday November 21, 2018 @04:52PM (#18506407)
Chucklefish 2D games or what have you are a far cry (no pun intended) away from a high performance 3D engine like Unreal though. And from what I can find on EA SEED they are mostly using it for server side and pipeline stuff, rather than the primary rendering engines for their 3D games. I'd love to stand corrected if this isn't the case.

Don't get me wrong, I'm optimistic, and I'd like to see it happen. Although I was a C/C++ holdout at first, I'm starting to come around to the Rust way of thinking, even if I don't like a lot of the terminology and the "RIIR" crowd are completely annoying.

Re:Why Aren't There C Conferences? by steveklabnik on Wednesday November 21, 2018 @04:59PM (#18506441)
Oh yeah, I don’t mean to imply chucklefish is AAA.

I don’t have a ton of info about SEED, pretty much

https://twitter.com/gwihlidal/status/1065036212220698624 says

> Halcyon itself is still largely C++, but a lot of data pipelines and servers are written with rust, and quite a few rendering experiments, as well. Enough pieces are being developed to build up enough critical mass for 3D, though!

and https://twitter.com/repi/status/1031877154261422080

> Nope, but our next revision of Halcyon is built using Rust

but Embark claims that all their stuff is Rust-first. There’s some other rumblings at other places, but they’re just that, rumblings. As I said, excited to see what happens; it hasn’t happened yet!

And yeah, RIIR is annoying for sure.

Re:Why Aren't There C Conferences? by nineteen999 on Wednesday November 21, 2018 @05:09PM (#18506505)
That's great to see even if it's still early days. Thank you also for being a great proponent for the Rust community, your thoughtful and considered answers here have helped convince me to look into Rust more over the longer term, whereas the foam-at-the-mouth types completely send me in the other direction.
Re:Why Aren't There C Conferences? by steveklabnik on Thursday November 22, 2018 @02:33PM (#18512009)
So the Ready at Dawn folks just put this out https://www.youtube.com/watch?v=n-txrCMvdms&feature=youtu.be

... this is one of the most interesting introductions to a Rust package that I've ever seen.

Re:Why Aren't There C Conferences? by nineteen999 on Saturday November 24, 2018 @03:13AM (#18521036)
Yes I saw that not long after our discussion. Definitely interesting stuff and I agree, marvelously presented.
Re:Why Aren't There C Conferences? by steveklabnik on Wednesday November 21, 2018 @05:18PM (#18506552)
You're quite welcome, and thanks for the thanks.
Re:Why Aren't There C Conferences? by davrosthedalek on Wednesday November 21, 2018 @04:07PM (#18506108)
Honest question: for these performance critical things, how good are compilers for Rust, Go etc. compared to modern C/C++ compilers? One reason that Fortran is still so heavily used in HPC is the quality of the compilers.
Re:Why Aren't There C Conferences? by steveklabnik on Wednesday November 21, 2018 @04:43PM (#18506342)
The Rust compiler uses LLVM, and so fares roughly as well as clang.
Re:Why Aren't There C Conferences? by nineteen999 on Wednesday November 21, 2018 @04:48PM (#18506379)
Not that I am really qualified to comment on these things, since I don't program in Rust, Go or FORTRAN, but AFAIK the one thing that is often claimed to prevent languages reaching C/C++ performance levels is garbage collection, which Rust doesn't have (but Go does).

As we all know benchmarks need to be taken with a handful of salt since the publisher often has a vested interest in pushing one point of view or another for monetary or whatever reasons.

My personal view is that until we see a AAA game engine or mainstream operating system that is able to run a comparable suite of software to Windows/Linux written in Rust or Go, we won't really know if these languages (or implementations thereof) are going to be suitable for these things.

Re:Why Aren't There C Conferences? by twblalock on Wednesday November 21, 2018 @02:57PM (#18505522)
Embedded software, firmware, low-level OS components like drivers and kernels, game engines, key-value stores, databases, and the compilers/interpreters for a lot of other languages.