![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Orchid XP v8 wrote:
>>> being flamed by Darren for thinking that databases are worth using,
>>
>> Huh?? I'm ... pretty sure I never meant to imply they aren't.
>
> "Right, sure. DBMS is important. That's why Google and Amazon don't
> bother with them."
>
> Implications seems pretty clear to me...
Oh right. After a few minutes, I realized what you were talking about. If
you came away with "RDBMs are never useful" from that discussion, you're
overgeneralizing what I'm saying again. :-)
> The Haskell mailing list is an unmoderated list.
>
> So... why is it that every time I post a message there, I get an
> autoreply saying "your post to Haskell has been held for moderation",
> and 80% of the time the post never appears at all?
Seems like it isn't unmoderated, then.
> They make me sound like a curse or something. Jesus, am I really that
> hated??
No. Some people are just assholes. If you're really not trolling, Don's an
asshole. Trolls don't hang around 3 years arguing about stuff.
--
Darren New, San Diego CA, USA (PST)
"Ouch ouch ouch!"
"What's wrong? Noodles too hot?"
"No, I have Chopstick Tunnel Syndrome."
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Darren New wrote:
> You're not an idiot, and I never thought you were.
Thank God somebody thinks so. Right now, I'm not sure *I* believe it any
more.
I mean, hell, *I* used to think I was a good programmer, even though
people kept telling me I wasn't. But who the hell made me an expert on
who is or isn't good at programming??
Likewise, I know what a monoid is, and most people don't. But that
doesn't exactly make me a maths expert, does it? Maybe I just need to
get over myself and admit that really I know bugger-all about anything...
>> personally must be doing something very wrong to attract this kind of
>> negative attention.
>
> My guess is you're asking hard questions that make the Haskell experts
> feel like they've been wasting their time. Hard questions like "why
> does C add this up in 2 seconds and Haskell takes 7 minutes?"
>
> I've found a good technique is to admit upfront it's probably something
> you're doing wrong yourself, and ask for help fixing it, like "this
> program is much slower than an interative approach - what am I doing
> wrong that makes it so slow?"
The fact that my hurried post makes it sound like I'm criticising the
compiler rather than myself probably didn't help...
But that still doesn't explain the last 3 years.
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 16 Feb 2009 21:02:13 +0100, Orchid XP v8 <voi### [at] dev null> wrote:
>
> Besides, plenty of people ask questions way dumber then me, and they
> don't get flamed.
Because their questions are dumb, and thus harmless. Consider the
possibility that some people are annoyed with you because you challenge
their deeply rooted preconceptions. They cannot defeat you with knowledge.
All they can do is try to make you go away.
Remember: In time, old people always lose.
--
FE
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Darren New wrote:
> Orchid XP v8 wrote:
>> You're an asshole, you know that? :-P
>
> /Darren does the Jim Carrey asshole dance! \o/
Shouldn't that be ∈o∋ ?
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
> Haskell doesn't suck. It sucks a lot less than C++, certainly. Being
> slower doesn't mean it sucks. The higher-level the language and more
> away from the underlying low-level metal, the better. Haskell sucks a
> lot less performance-wise than most other very high-level languages.
Faster than Java, C#, F#, Erlang, Clean, Lisp... But still not quite as
fast as C.
And let's face it, millions of people can program in C. Why bother
learning Haskell?
>> If it was just one person who disliked me, it probably wouldn't bother
>> me. But when so many otherwise rational, intelligent people all say
>> you're stupid... eventually it starts to sink in.
>
> Being not as intelligent as truly intelligent people is not the same as
> being stupid. Endlessly pestering such bright people over reasonably
> basic stuff you still don't understand... well, that's stupid. ;)
...and when nemesis says I'm stupid, I really *don't* care. :-P
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
>> Implications seems pretty clear to me...
>
> Oh right. After a few minutes, I realized what you were talking about.
> If you came away with "RDBMs are never useful" from that discussion,
> you're overgeneralizing what I'm saying again. :-)
Either ACID-compliance is a good thing, or it isn't. (I'm of the view
that it is, but apparently I'm in the minority here...)
>> The Haskell mailing list is an unmoderated list.
>>
>> So... why is it that every time I post a message there, I get an
>> autoreply saying "your post to Haskell has been held for moderation",
>> and 80% of the time the post never appears at all?
>
> Seems like it isn't unmoderated, then.
Or rather, only *my* posts are moderated. (Several people have at
various times mentioned the lack of moderation, so I think it's only me.)
>> They make me sound like a curse or something. Jesus, am I really that
>> hated??
>
> No. Some people are just assholes. If you're really not trolling, Don's
> an asshole. Trolls don't hang around 3 years arguing about stuff.
[Uh... this thread started, how exactly? How long as Mr Quad been
hanging around here?]
I wouldn't mind, but I actually think Haskell is the coolest thing ever
to exist, and I just want to help it take over the world. For my
trouble, I get accused of being a troll. How did my message get this
mutilated in transit??
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
>> Warp seems to access the Internet only to tell me I've mis-spelt things.
>
> It's "misspelt"! ;)
YOU ARE PEOPLE SEEING THIS?! >_<
>> OTOH, Warp is clearly a God-like programmer, and when He says something
>> about programming, he's usually right. (Though not always.) Go ask him
>> what the most efficient way to implement a Huffman tree in C++ is; I bet
>> he knows.
>
> I'm not always right. Making yourself look smarter than you really are
> is an art.
You seem to be right far more often than me.
> Of course when someone more knowledgeable about the subject calls your
> bluff, it can be really embarrassing. Admitting that you were wrong can
> be really difficult.
Yeah. And look at this: First you proved that my "efficient" program is
actually 40x too slow, and I was forced to admit defeat. And then I
asked about it on the Haskell list, but I made one stupid mistake: I
retyped the code from memory, rather than copying it. And guess what?
The example code I posted doesn't work properly. So now I've get a
second bunch of people telling me how stupid I am.
I'm having such a great day. :-(
I really thought Haskell was the be-all and end-all of everything. Being
forced to admit that it is not is really painful.
> Haskell doesn't suck. The only problem I find with it is that it's not
> very approachable. It's hard to learn.
It works completely differently to normal languages. This has several
consequences:
- It has a different set of strengths and weaknesses compared to normal
languages. Some stuff that's usually hard becomes breathtakingly easy.
And, yes, some stuff that's usually easy becomes somewhat harder too.
- You're not just learning a new syntax or a new set of scoping rules.
It's a whole new game, which makes the learning curve kinda vertical.
All the rules of the game are totally different, and while the rules are
quite simple, this demands a totally new strategy. (Look at Go. The
rules are pretty damned simple, eh? But the *game* is not!)
- The documentation... sucks. Truly. (Perhaps my saying this is why
people think I'm a troll?)
> It also seems that while Haskell can be used to create very efficient
> programs, it often happens that some properties of the language kick you
> in the groin when you try to do things in a simple way, resulting in a
> very inefficient program. You really need to know the inner workings of
> the language, the compiler and the libraries in order to be able to create
> the efficient implementation.
A few days ago, I'd have disagreed. I'd have said that you *can* write
things simply and get good performance.
But today, we both know that's not actually true. Me, Mr Haskell Expert,
wrote some code, and the performance was awful.
(I am reliably informed that "GHC does not currently fuse left folds".
If that's true, that would explain one or two things... But all this
really does is reinforce your point: you must memorise what the compiler
does and does not optimise to get good code.)
> (Of course the same is true for C++ and probably all languages. It's just
> that Haskell seems to be often advertised as "if it compiles, it works, and
> it's efficient", which doesn't seem true to me. You can often write clever
> one-liners which achieve things which would need dozens of lines in other
> languages, but that doesn't automatically mean the resulting program is
> efficient (or even correct).)
"If it compiles, it works correctly."
This is easily falsifiable. However, Haskell _does_ have the unusual
property that, in the majority of real-world cases, if the type checker
is happy, your program actually does what you wanted it to do. Few other
languages have this property, and nobody is quite sure exactly why
Haskell has it. (Though everybody has their theory.)
"If it works, it's efficient."
This is the ultimate goal, but we're not there yet.
A few days ago, I'd have said we're closing in fast. Now I'm really not
so sure. Lots of people are very actively working on this; you don't
often seem to hear about GCC getting some fancy new tool added to its
box of tricks, but if you search around you can find all sorts of
published papers about the sophisticated optimisation possibilities
being added to GHC every year. After reading this stuff for a while, you
end up with the impression that GHC is this super-powerful compiler that
can make anything go fast.
The reality is rather more dissappointing.
I *still* believe that Haskell makes it possible to write programs that
would just be too hard in any other language. (E.g., Parsec makes it
really very easy to quickly throw a parser together. I've never managed
to build a working nontrivial parser in any other language.) But maybe
in a few days' time I'll have stopped believing that too...
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Orchid XP v8 wrote:
> Shouldn't that be ∈o∋ ?
<snicker> Congratulations. I have never seen ASCII goatse before.
--
Darren New, San Diego CA, USA (PST)
"Ouch ouch ouch!"
"What's wrong? Noodles too hot?"
"No, I have Chopstick Tunnel Syndrome."
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Orchid XP v8 wrote:
> Either ACID-compliance is a good thing, or it isn't. (I'm of the view
> that it is, but apparently I'm in the minority here...)
It's a good thing if you need it. It's an unnecessary burden if you don't.
That's what I was trying to come away with.
Now, most people *do* need ACID, or they wouldn't be using a database in the
first place. (Your text editor isn't ACID, is it?) But there are
increasingly more places that are willing to give up consistency in favor of
scalability.
> Or rather, only *my* posts are moderated. (Several people have at
> various times mentioned the lack of moderation, so I think it's only me.)
It's either moderated or it isn't. Now, maybe some peoples' posts are
auto-approved, but they're still moderated. If it's an NNTP forum, you can
tell by looking at the headers.
> [Uh... this thread started, how exactly? How long as Mr Quad been
> hanging around here?]
Well, OK. But he doesn't troll about on-topic stuff, even in off-topic. :-)
> I wouldn't mind, but I actually think Haskell is the coolest thing ever
> to exist, and I just want to help it take over the world. For my
> trouble, I get accused of being a troll. How did my message get this
> mutilated in transit??
Hard to say without seeing what you posted. What did you post?
--
Darren New, San Diego CA, USA (PST)
"Ouch ouch ouch!"
"What's wrong? Noodles too hot?"
"No, I have Chopstick Tunnel Syndrome."
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
>> Shouldn't that be ∈o∋ ?
>
> <snicker> Congratulations. I have never seen ASCII goatse before.
THAT'S my friggin' super-power? Drawing silly pictures in ASCII art?
I've reached a new low. :-(
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |