Why doesn't C have an actual, formal semantic model?
"Furthermore, we argue that the C standard does not allow
Turing complete implementations, and that its evaluation semantics does not preserve typing. Finally, we claim that no strictly
conforming programs exist. That is, there is no C program for
which the standard can guarantee that it will not crash." [1]
Lets be honest: conferences exist to waste time. Nothing productive gets done on conferences and best thing you can take our from them is to socialize with like-minded people.
There is barely even a community for it, the c language itself like golang has.
Because, yeah, that would be like an "air breathing community."
Lets be honest: conferences exist to waste time. Nothing productive gets done on conferences and best thing you can take our from them is to socialize with like-minded people.
Sure, why would anyone want to waste time lifting their nose briefly from their employer's grindstone to get exposed to new colleagues, new ideas, and new business opportunities?
They are a waste of your employer’s time. For you they’re great, you’re still getting paid, but don’t have to work.
CLOC tells me there's 28391 lines of C and 426525 lines of Lisp in there. Also remember that Lisp has, on average, higher code density than C thanks to advanced macro usage. Pointing to C code in that repository and saying SBCL is implemented in C is like pointing to https://github.com/sbcl/sbcl/blob/master/binary-distribution... and saying that SBCL is implemented in Bash.
The runtime is written in C. That's the important bit. Just because the compiler, standard library, etc, isn't - doesn't mean it's not based on C. You cannot use SBCL without a C compiler.
The installation scripts are written in bash. That's the important bit. Just because the compiler, standard library, etc, isn't - doesn't mean it's not based on bash. You cannot use SBCL without a bash shell. /s
Of course you can use SBCL without a C compiler - you simply use a precompiled version. You can't build SBCL without a C compiler.
Because though there might be building trades conferences, there are no hammer conferences. Oh, there will be tool vendors at the building trades conferences, there might be sessions on "Efficient Hammering Techniques Using Machine Learning", but there are no conferences about hammers. Don't forget about the blacksmith conference next week, they'll have hammer vendors, too. I dunno, a Ruby conference kinda makes sens…
Hammer conferences typically get rolled up with Discuss conferences.
What on earth are you talking about? Assembly. Java. Ruby. Python. The list goes on. Could you explain your rationale behind this statement?
Point me to a compiler or interpreter, any of them, that isn't either written in C or written in something that was written in C. And of course, whatever you play with, it's running on an operating system written in C. If programming is turtles all the way down, C is the bottom turtle, standing on the solid ground of Von Neumann architecture. The point is, C is utterly pervasive. Everything that we think is different…
Go is written in Go, which is why you need it installed in the first place before you can run the go compiler.
To be honest C is kinda boring. Which is fine, but makes it hard to do a C conference.
Fair point, but Go or PHP hardly sound more exciting.
I'm a heavy Go and Python user, and you're right that Go isn't particularly interesting--it doesn't change terribly rapidly, but it's also simple enough that you can do interesting and useful deep-dive sessions into the garbage collector or scheduler or other aspects of the runtime or the toolchain. You could also speculate or discuss proposals for Go2. There have also been significant recent changes to the dependency management scheme which affect pretty much everyone.
I don't think there's much of an analog for C. Most of the interesting stuff in C revolves around things you would think you can depend on but actually break in really weird and interesting ways (misc undefined behavior, sizes for integral types on different architectures, idiosyncracies of the preprocessor, the way to trivially exploit that pattern you used to avoid buffer overflow exploits). But most of that is just depressing.
Because though there might be building trades conferences, there are no hammer conferences. Oh, there will be tool vendors at the building trades conferences, there might be sessions on "Efficient Hammering Techniques Using Machine Learning", but there are no conferences about hammers. Don't forget about the blacksmith conference next week, they'll have hammer vendors, too. I dunno, a Ruby conference kinda makes sens…
Exactly. C programmers don't define themselves as C programmers mainly. They are firmware developers, game developers or something else. That's where their real interest is.
It's like how they have hamburger restaurants, where you can ask for a hamburger without the pickle, instead of having hamburger without pickle restaurants. C is the burger, bacon, bun, lettuce, tomato, onions and sauces, and ++ is the pickle.
The runtime is written in C. That's the important bit. Just because the compiler, standard library, etc, isn't - doesn't mean it's not based on C. You cannot use SBCL without a C compiler.
The installation scripts are written in bash. That's the important bit. Just because the compiler, standard library, etc, isn't - doesn't mean it's not based on bash. You cannot use SBCL without a bash shell. /s Of course you can use SBCL without a C compiler - you simply use a precompiled version. You can't build SBCL without a C compiler.
Shell scripts just slap commands together. You could just be a human interpreter reading the source and get the job done. C is a much more fundamental requirement of SBCL. Much more so than in the way SCBL depends on Python, for example (e.g. it doesn't).
Listen, I get that in the ivory tower of lisp you don't like looking at the little C bricks at the bottom, but the fact is that they exist and C is a hugely important language upon which the entire modern world of computing is built.
If you think that making connections with people working on same things you do is waste of time you’ve got another thing coming. But yeah nobody writes code at conferences, I thought that was pretty obvious.
> But yeah nobody writes code at conferences steveklabnik in another comment: "A ton of open source project work gets done at conferences".
I think we can safely say that 'conference' means different things to different people and all conferences are very different. Some involve highly specialized academics pontificating on highly esoteric subjects, some are places where people go to do million dollar deals, some are just thinly veiled excuses for people to expense their holiday to their company and some involve half dozen hackers sitting around a table knocking out code. And at some conferences all these things are going on at the same time.
Basically any statement to the effect of "everybody does/nobody does X at conferences" is almost certainly false.