Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

"Are you tired of your compiler Just Working?"

Actually, no. Having lived through the C compilers of the 1980s on 16-bit PCs with their four different memory models (and optional 8087 floating point processor support), I'm very happy to have a C compiler that Just Works. :)



Author here: It's sarcasm with a grain of truth.

This is a one person project so far, and there are tons of bugs that haven't been flushed out yet. It's not too hard to crash the compiler yet, and I'm sure there are ways to get it to miscompile. (I recently fixed a couple, where it was trying to put overly large integers into immediates in some cases). Obviously, nobody likes debugging the compiler or tracking down miscompilation, and as things mature it will stop being an issue.

I've written ~10k lines of code in this language at this point, so at least some stuff is flushed out.


I thought the very next paragraph made it clear he was joking and having a little fun:

"More seriously, Myrddin has the goal of replacing C in it's niche of OS and embedded development, but making it harder to shoot yourself in the foot. It's a language that matches the author's taste in design, and if other people want to use it, so much the better."

EDIT: Yep, this is definitely the case. The guy just has a really good sense of humor and doesn't take himself too seriously. Just read his "Beyond..." section!


That's the first thing that came into my head. Yes, thank you, I WANT a compiler that Just Works. The last thing I want to debug is stuff my compiler throws up when it thinks it's smart.

By the way, GCC, in case you're listening? Fuck you!


> That's the first thing that came into my head. Yes, thank you, I WANT a compiler that Just Works. The last thing I want to debug is stuff my compiler throws up when it thinks it's smart.

Then you should stay away research and toy programming languages and stick to tried and tested languages and compilers. And perhaps refrain from commenting on discussions related to them if you don't have anything to bring to the table.

And I'm pretty sure it was a joke, kinda like Linus' "real men write their own device drivers" back in 1992 or so.

> By the way, GCC, in case you're listening? Fuck you!

There's a well known software company in Redmond, WA and a famous hardware company in Santa Clara, CA that can provide you with high quality tested compilers in exchange for a little bit of money and agreeing to their licensing conditions. No one is holding a GNU to your head.

GCC is an awesome project that has liberated computing in various fields. 20+ years ago you had to pay a lot of money for C compilers that were worse than GCC in every way.

That attitude isn't going to get you very far. GCC is a team effort and if you don't want to take part in it, then don't.


> Then you should stay away research and toy programming languages and stick to tried and tested languages and compilers.

Aw hell. Back in 1992, during my Software Engineering class project, we discovered a bug in GCC where it produced wrong answers if we swapped the position of two unrelated functions. We found multiple bugs in GCC, in fact.


Have you ever had to debug badly-generated code?

It was a friendly fuck you, btw.


His point is not that one compiler is good or not good or bad or not bad. His point is that you're veering pretty far from the discussion by singling out a compiler unrelated to the originally posted one with rather distasteful vitriol. Being anonymous on the internet can lend to more immature discourse, but it's up to the human behind the keyboard to pull back the reigns.


His point attempts to be that I'm ignorant of the work that went into GCC, a compiler I've been using since about 1997 IIRC on almost every platform it supports, and that I'm generally a bad person.

My point is that a compiler that Just Works is sometimes preferable to one that Does More imperfectly.


Yes that was the first clause of your original post but evidently not the last.


  $ echo 'Fuck you!' > fuck_you.c; gcc fuck_you.c
  fuck_you.c:1:1: error: unknown type name ‘Fuck’
  fuck_you.c:1:9: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘!’ token


Don't bother, gcc is grumpy as hell.


No need for the temporary file:

    $ echo 'Fuck you!' | gcc -xc


I guess in OS X, gcc redirects to clang. clang gives me:

    clang: error: no input files




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: