Live data from Hacker News

Getting Past C

blog.ntpsec.org

501–504 of 504 posts

Re: Getting Past C

#501

Earlier quoted context omitted.

Not an argument, or even a point. I don't know why this is so difficult for people to understand. Buffer overflows are easy to avoid in C. I think I recognise your name from some rather aggressive rust advocacy in another thread, so I'll try and break this down in a way that won't trigger you: - Buffer overflows are trivial to avoid in Rust, AFAIK. I acknowledge this - Buffer overflows are very easy to code in C, and…

> if you provide your own thin abstractions Without generics these abstractions are hard to work with and hard to make work across libraries. I am reminded of https://thefeedbackloop.xyz/i-bet-that-almost-works/ > Take the rust compiler itself: AFAIK it's now implemented in C++ The compiler is written in Rust. It uses LLVM, which is in C++, for codegen, but in the future we might be able to turn that off too ( https:…

Uhm, in the context of native languages, without further qualification, it is clear that "compiler" is a program that translates said language into native code, i.e. assembly. To dismiss the translation of llvm IR into assembly as "codegen" is at best using a misleading definition of compiler.

The only fair thing to say at present is that Rust's main/most useful/most performant/most whatever implementation is a mixture of Rust and C++.

Re: Getting Past C

#502

Earlier quoted context omitted.

My point is, a lot of people are spending time on this when it doesn't matter. In the limit that AI starts replacing human developers these subtle differences in language approaches zero. New languages here and there every day. Replace this replace that. When, in the end everyone is simply reinventing the "wheel" over-and-over. All these languages end up as assembly.

This sounds a lot like "why clean up my room when the heat death of the universe is coming anyway?", but if you do think that AI is going to supplant all of programming then be the change you want to see in the world! Get building and we'll see which one happens first. I honestly don't know who I'd put my money on between "AI takes over the world" and "programmers stop writing buffer overflows"

AI takes over the world for 5 minutes, and then promptly crashes due to a buffer overflow.

Re: Getting Past C

#503

Earlier quoted context omitted.

There's a summary of some of its limitations here: https://en.wikipedia.org/wiki/OpenNTPD#Criticism One of them (lack of leap second support) is fresh on our minds since we just had a leap second. Some thoughts from the OpenNTPD folks are at http://undeadly.org/cgi?action=article&sid=20150628132834 Chrony is another alternate NTP implementation, here's their comparison vs ntpd and openntpd. https://chrony.tuxfamily.o…

It sounds like the leap-second thing isn't that big of an issue though...

The leap second thing is a big issue for a server. OpenNTPD serves the wrong time on the day of the leap second. They don't propagate the leap second flag properly either. It's not correct and doesn't belong in a public server pool IMHO. This issue isn't just theoretical: it was responsible for a lot of the bad time being served by the NTP Pool last week.

You're right that the article I linked argues the leap second isn't a big problem to client machines. I guess I sort of believe it, if you don't care if your client is a second off from true time once every couple of years.

Re: Getting Past C

#504
post #440

Earlier quoted context omitted.

I care more as a user than as an engineer. :) Just to be clear - I don't suspect that the things that pretend to replace C are bad, or no good. I've just seen multiple "pretenders to the throne"[1] and what would appear to have happened is that we just moved the pathology around. [1] please excuse the horrible metaphor. After a few iterations of that, one begins to think that perhaps this is a distinctly human proble…

> There's no real repository of literature to actually address any of this - each engineer appears to have to learn it mostly from scratch. It is called university and engineering degree in software development.

Each and every person I have observed learning this over and over has a university degree. "CS ain't coding", as they say.
Post reply on HN