skysight-inc/HackerNews huggingface dataset:
> "(you can just write doWhatIMean() and the compiler will automatically choose the optimal implementation for your current problem and platform - where if you'd specified the implementation details yourself, you'd be sub-optimal in many cases)"

How far are we with declarative programming in sense of being expressive and expecting the compiler to understand what we mean? I'd believe that without strong AI human will always be better off with imperative programming than a compiler with declarative, for anythig beyond relatively simple isolated pieces of code/algorithms. In general we have so much more experience and knowledge about the target system and environment than the compiler does, this is less true for JIT compilers, but they come with their own overhead.

I'd really love to see superoptimization[1] to be done as a service for compilers. Say you have a function with certain semantics the compiler is fully certain about. The compiler fingerprints this function and uploads a fingerprint + behavioral analysis to <somewhere in cloud> where it's being exhaustively optimized by bruteforcing all the meaningful instruction sequences which conform to the semantics of the function. After the most optimal piece of instructions is being found, it's associated with the finerprint and stored in a database and then returned to the compiler. Now, when ever someone else writes the exact same function(or code with exact same semantics) the compiler queries the <some cloud service> for the optimal piece of code. Of course, a system like this would need more information about the actual target of the code(CPU architecture, cost of things like memory access, cache miss, branch mispreciction etc.).

[1]: https://en.wikipedia.org/wiki/Superoptimization (The system I roughly described is far more extensively analyzed in some of the papers. Really great read!)
I don't think other languages have the same benefits of Haskell. They have other benefits but not Haskell's.

Python/Ruby: very easy to learn and be productive quickly.

C: high level of control over resources and easy to get good performance.

Haskell: very good static guarantees about correctness. Relatively easy to get decent and good performance. Extremely educational and mind expanding, far more than say Lisp. Allows very high levels of abstraction. Great concurrency and parallelism support.

Lisp: easy to extend syntax with macros and manipulate programs programmatically.

All these languages have benefits, but not quite the same ones.
It is not. There are all over internet tutorials on how to install DX 10 and beyond on XP.
Striping Across Four Storage Nodes With GlusterFS 3.2.x On CentOS 6.3
I up voted this comment only because the two best comments on this article are replies to this comment and deserve to be higher up in the thread.
I did not see any reason to move to win8. We can use chrome/firefox for modern sites. Existing software on XP is more than enough to do anything. More bloated office 13? Thanks, there is no way that I will use it.

If I want an easy life, Linux is here, it is much faster, much easier to use with tiled windows managers like dwm (much less clicks & mouse movements). More tools to use, much easier to update with package manager like pacman. Windows seem like trash for me to drag human kind down a lot.
Why oh why did the ADM-3A keyboard not use a gamer configuration for its arrow navigation keys. What a noob designed that!

He could have gone for wasd or ijkl. But he had to go with hjkl!

Anyway, the fact that j looks like a down arrow is a very good thing that makes me remember it and allow me to play nethack.
I don't really see how that's a problem with the compilers instead of with the language.
I am a Ruby programmer and let it be clear, the holier-than-thou attitude can indeed be pervasive in the Ruby community.

Yet, most of the proselytism int the Ruby community are different shades of "Programming with this language makes me very happy, I'd like everyone to be happy as well". Of course it's not always as clear cut and there is sometimes much to be desired in terms of behavior. But that's where the Haskell in MY PERSONAL OPINION (so to take with a pinch of salt) is slightly different in how it seems to be variations of "Haskell is a superior language, everyone that doesn't use it has not reached enlightenment"

TL;DR: Ruby people can be annoying like hippies can be annoying, Haskell enthusiasts I've found to be more akin to the Jehovah's witnesses of programming.

And just so we're clear, I am going on a slightly provocative/trollish bender here, one that I hope will not offend too much, it's all in good fun.
From my own experience measuring heart rate while meditating, my heart rate is at lowest at normal sitting rest rate and often even a few beats higher. This surprised me.
Thank you for brilliantly proving his point. What you wrote just prove that you completely mixed what is a language and what is its implementation.

Of course C semantic uses a calling stack in its definition. Does that mean you need a physical stack to implement it ? Not at all, you can perfectly implement C in anything as long as you can simulate a stack. Just look at the JVM and Dalvik. Dalvik is register based while the JVM is stack-based and they both run Java.

java.lang is a standard library. It's only part of the language definition in a really broad sense. It's actually written in Java. Any complete Java compiler can and will compile it (with some modification for the purely JVM oriented functions). There is a lot of projects out there trying to compile Java on a target which is not the JVM.
have you tried http://roy.brianmckenna.org/ ? its sort of haskell like, but compiles down to javascript, so you could use it in the browser.
You could use green threads in C but you'd also need asynchronous io to work with these green threads, and an ecosystem of libraries around it. Ghc has it therefore it makes sense to use its by default green threads. In c there is no standard ecosystem around green threads therefore it is harder to write the benchmarks that way.
> In general, audiences have NO idea how much time, effort, etc. it takes to produce decent work.
I stopped listening to commercial music and watching commercial movies when industries started suing private individuals. I was surprised how easy it was. The only time I hear or see commercial content is when it is pushed on me through advertising and other expensive marketing techniques. I wish hollywood and big distribution would vanish tomorrow. Do you really think that talented artists would simply disappear and stop producing quality work if they're wasnt the possiblity of becoming a star behind it? Nonsense. Art is from the heart. I hear quality all the time from local street buskers and playing in bars in my city. Everywhere in the world there is great quality work that is having money taking out of there mouths by big industry who would rather have a huge fan base for a minimal set of artists. The reason it costs so much to produce what you consider 'decent work' is because that is what you have been convinced to believe. Quality is not expensive, and yet its rarely paid because most of the money is being funnelled through distribution companies who simply cannot possibly handle the many millions of people around the world who deserve a piece of the entertainment revenue pie.
I listen to Jamendo, Soundcloud and CCmixter. I watch videos on youtube and vimeo. I am entertained. So when megaupload was taken down... for me it had nothing to do with losing the ability to break someone's copyright, but rather it was simply another example of big distribution shutting down an alternate channel of distribution.
For me, the sooner distribution companies die, the better. They have no purpose anymore because distribution costs are $0. We all pay for distribution ourselves when we pay our ISP for bandwidth. The only remaining purpose for distribution companies is to sue for their lives in order to limit the number of artists who receive income for their work.
Caseable, des housses entièrement personnalisées à partir de produits recyclés.
Some guy told me that it depended on the card that you used, some cards apparently had eeproms that you could reprogram without too much trouble.
At least the value 0 is always the same and doesn't subtly change from one invocation to the next or from one machine to the next. It certainly helps in making programs more robust, even if there is still a problem at code level.
It doesn't sound quite so paranoid anymore to arm oneself to the teeth and retreat to a wilderness redoubt in Montana.
'Quadruple Helix' DNA Discovered in human cells
Nail your sales pitch with VPD
Speculative non-article..

From the last paragraph:

He said: "A solar proton event and a short gamma-ray burst are both possible explanations, but based on the rates that we know about in the Universe, the gamma-ray burst explanation is about 10,000 times less likely to be true in that time period."
It's a shame that you chose to ignore the point I was making, and instead post this snide, narrow minded response. Alas, this is typical of the anti-intellectualism that pervades hacker news these days.

Of course the reason you did this is that you know what I say is true. You just are an apple hater and can't even admit that this is what they're doing.

Also typical of hacker news: Burying comments that point out that others have got nothing but personal attacks, while upvoting personal attacks. Everyone who engages in this is, by definition, anti-intellectual.

So, go ahead and downvote me, it just proves to me that you are not worth wasting time on, and that this site is full of narrow minded anti-intllectual bigots.

Make a counter argument, and I can respect that. But you don't. Probably because you can't, right?
I'd argue that the pedantry is not unfounded. As HN grows in popularity, it attracts those who wish to use it to push traffic with link bait. This leads to greater average suspicion about the motivation of the OP. Thus its easier to jump to conclusions as people become more cynical or critical.
The problem is of belief, wikileaks accepts data/submissions and takes those submidsions and subtracts out identifying data from the submitter so no-one at wikileaks knows who the submitter is

And the head of wikileaks is known to refuse electronic communication from those who identify themselves in chats, etc to assist the ethos of keeping things anonymous.
It's a shame that you chose to ignore the point I was making, and instead post this snide, narrow minded response. Alas, this is typical of the anti-intellectualism that pervades hacker news these days.

Of course the reason you did this is that you know what I say is true. You just are an apple hater and can't even admit that this is what they're doing.
There aren't any other languages that can provide the exact same group of benefits.

What you do is you weigh the benefits and disadvantages of the languages you are considering.

Haskellers just want the benefits of their language known so that it isn't overlooked due to being too difficult/unfamiliar/uncommon etc.

This article missed the point of the original article it was addressing, which is that haskell is often fast enough for the job with a minimal amount of optimisation.

The problem is that the original article author chose a shootout example, where speed was the objective. Idiomatic Haskell is rarely going to win on speed.

The C code in this article is by the authors admission not very robust against invalid input. A robust Haskell implementation would likely take less effort to produce than a robust C implementation. Which is better depends on the goal.
This was predicted around a month ago, after the release of the tool that detects routers acting in the Great Firewall. [1]

But I'd assume you'd just Streisand Effect the project if it was closed down, almost inevitable once mongol was released, it'd just be forked.

Unless the block was a culmination of other factors that I don't know about, then I'd love to hear more.

[1] https://github.com/mothran/mongol/issues/1
Subscribed you to the mail reminder so that you don't forget: see you there.
Even worse, it didn't use Cherry red switches, and it looked like crap. Where were the bright red LEDs, macro shortcut buttons, and elaborate wrist-rest?!
Any time you're working on a multi-page project, you will have items that get used across multiple pages. Navigation is the most common. If you're copy+pasting anything every time you add a new page, you're wasting time…

For me, master pages and something like Illustrator Symbols ("master elements", "template elements", whatever) save vast amounts of time for complex multi-page projects.
Yeah, this is happening because I specify the A Name record for the in-the-attic.com domain, if I hit gkwelding.github.com which is the github page itself then it's also blocked. Looks like some DNS FUBAR'ness is occurring somewhere.
NLP is used extensively in resume screening at the moment and no-one has managed to perfect it. I'd be interested in seeing the results/accuracy of a search against a large (500+) cross section of resumes uploaded.
Backbone-associations: Create lightweight object graphs with Backbone models
As a casual observer (I'm not going to download the game as I have a lot of deadlines!), I'd suggest taking another look at your copy. I think you'll inspire more confidence to buy later on if you take it easy on the caps and paragraph spacing (good ol' Angry Birds is pretty professional https://itunes.apple.com/gb/app/angry-birds/id343200656?mt=8 as is Mighty Winds https://itunes.apple.com/gb/app/lostwinds/id477973472?mt=8 ).
Of course, I don't really buy iPhone games so if someone more experienced in the field tells me I'm completely off I'll instantly concede :)
Duly added to my .vimrc, just in case. Cheers!
You're not even trying to understand my point, are you? I never the shuffle was anything like brave new world. I pointed out that it was an exercise in low cost mass manufacturing.

Do you hate apple so much that you're going to claim that the walkman proves that they aren't innovative with the shuffle, when that isn't even the point of discussion?
Policy IS the policy.
The main problem is all the internal webapps that were written to support IE6, still works with IE8, and are very costly to rewrite, upgrade or replace.

So in many cases they have to _add_ Firefox, they can't simply replace IE. That means even more user training (what, they've installed a second internet with a fox on it? Which should I use??), so the more tempting option is to just sit it out and wait, because they know that they will have to upgrade to Win7 or Win8 next year anyway if they still want security fixes.
A couple of observations, for what they're worth.

"Tell them you're only 17!"

If you do, you'll only self-identify as one of them. Average age is high teens to low 20s, if I remember correctly.

"People seemed to have a problem with everything."

To me this is the result of a large number of people participating. It makes the commenting system rather challenging. Basically anything that can be misinterpreted will be misinterpreted. Sometimes it's so bad I wonder if people aren't being purposefully idiotic, just to score some karma.

From reading your article, I imagine you found the attention worthwhile, though frustrating. Welcome to the club. In a strange way it's very seductive to have 10K fellow hackers come by and look at your work, even if they do miss the point, wander off on tangents, and generally posture for each other. Just be careful you're not subtly sucked into writing just for the HN crowd, unless you have an idea you want to sell to a lot of nerds.
It's a shame you chose to ignore my point and make a response that is this dishonest.

An iPod touch is a great device for editing documents, watching videos, or even creating videos.
What about Objective Caml? Seems to fit the bill for all those metrics as well, yet for a reason that eludes me to this day, it never quite reached the kind of "street rep" that Haskell now enjoys.
Seems to be restricted to domain name resolution, not actual IP blocking. We started noticing some pages going down (http://developer.github.com/ and http://www.github.com) while others were fine (http://github.com).

Combined with the recent upgrade of the GFW, we're stuck with SSH tunnels. There's a business opportunity here (and we're not far from throwing ourselves at it).
Seconded.

Remapping the movement keys in Worms Reloaded also helped massively, though did result in me getting completely thrashed for the first twenty or thirty matches I played.
I think I have had slightly better results than average because I am using ABMs that learn and have social media as precepts. There is a "training" period for each agent where it is trained based on LinkedIn data etc... but I 100% agree with you, I am also interested to see how it works; currently I have not tested more than 100 at a time.
Running Joomla on OpenShift PaaS for Free
jQuery 2 can fuck off. In fact jQuery as a whole can fuck off. It's been a disasterous slog using it for us. No end of problems with it and associated half-arsed shitty plugins to the point we've developed our own internal JS API and toolkit which we can control. Even minor version upgrades of jQuery have been dependency hell (we have 110kloc of JS excluding jQuery plugins - a lot!).

We deploy desktop apps (via ClickOnce / direct) as well as web applications, so we're supposedly in the same mire, however they still "just work". They don't suddenly stop working one day. Youre entire toolchain is fine. Just keep it in a VM.

We only just killed a desktop app deployed on Windows NT4 which was thrown together with VC++ 6. I have the VM running now as I'm porting it to .Net 4 (C# this time).
The article could contain that regardless of whether the title is misleading.
Taking payments online in Europe in 2013
Suggestion: Put comments on your blog. You might get better feedback that way. There are many people who have given up on hacker news but still use it to find links. (I mean how many times do you want to put up some cogent information only to have it mindlessly attacked by idiots? Either its the fashion of the time, or hacker news is overrun with narrow minded anti-intellectuals.)
Sectors - ProjectVision
Every keyboard now has a set of hardware arrowkeys sensibly arranged in an inverted-T, where up means up, left means left, etc. Since everyone is used to that arrangement without any mental effort, macho vim types tell you to force yourself to write with your feet basically to show how hardcore you are. They tell you to use your customization ability in .vimrc to block the sensible arrangement in order to force yourself to learn a ridiculous one that has no advantage other than being the one that we old-timers had to learn before there were sensible arrowkeys.

I used that arrangement back in the 1980s myself, but when keyboards evolved, so did I. I remapped the movement keys to match the other movement keys (arrowkeys).

If you're going to go to the effort of customizing your vim to force yourself to learn a new keyboard arrangement, customize it so that the movement keys are ijkl instead of hjkl, so that both of your sets of arrowkeys are in the same, natural, modern, inverted-T arrangement. Then you don't have to deactivate those real arrowkeys, because there won't be any temptation to use them with the ijkl keys in the same arrangement and easier to reach.

"Oh, no!" people half my age will shriek. "Then what happens to the 'i' key? This would be impossible." Just use the now-unused key on the left ('h') for your insert-on-left. Reach left to insert on left. There, easy.

Funny how those who insist that YOU should relearn something as fundamental as the entire inverted-T arrowkey structure built into the hardware of every keyboard and used by almost all apps on all platforms including kids' game boxes find relearning a single, arbitrary 'i' key such an insurmountable obstacle to themselves.

But what if you have to use a copy of vim on a machine without your customized .vimrc? Sorry, but that's just an argument against ANY useful customization of vim. It's just not a problem, because the real arrowkeys on the keyboard are in the arrangement you're used to using on the ijkl keys. Just use the real arrowkeys temporarily or copy over your .vimrc. I've done it for years.

But what about other editors that have a vi mode? What about something like zsh with a vi mode? These things can be remapped to match your .vimrc unless they only offer a couple of keys, in which case they can be treated just like all apps with their own couple of local keyboard shortcuts.

Really, if the standard advice is, "You'll have one or two frustrating days, but after that your muscle memory will take care of remembering "hjkl" for you," then you can take your own advice and keep the inverted-T muscle memory you already have for the movement keys and reduce your task to learning a single 'h' key for insertion, and save the next generation from this nonsense.

If a 30-yr user of vi like me isn't stuck with the historical accidents of the past, why should new users have to be?
Haskellers are aware of various downsides and disadvantages to using Haskell and are actively working to improve on those.

Also, the FP complete company was created to answer that exact question and cater to commercial companies who want to use Haskell. They provide training, and survey them to see what is holding them back from using Haskell, and providing them with solutions.
You called the Shuffle a $50 computer. My $5 calculator has more utility as a computer than a shuffle, buddy.
Fun game, loved it, though G, lowercase edges can solve most cases. It comes down to kerning in the more difficult ones, Helvetica is a perfect Geometric Sans, and that should help in most cases
Question: does Chrome Frame support Windows Integrated Authentication?
One day I killed few children, few days later I happen to kill about two children.
Week later I killed one...

And so day by day, I kill few, mostly children, of course sometimes I kill adults too, but most targets are children.

Yet, I feel perfectly fine.

Every time when I walk past charity advertisement person.
Ludde's FPGA NES
I believe the blocking is directly related to an automated train ticket polling plugin that had brought down Github just days ago. Due to upcoming Chinese New Year, newly released train tickets are sold within minutes. That plugin introduces huge traffic to already crumbling ticket vending site, and it has obviously made railroad bureau angry. Blocking Github makes that plugin immediately malfunction because it makes reference to javascript files hosted on Github pages. The bureau has also paid a visit to the plugin's author, for the purpose of intimidation perhaps.
How are you loading the custom font?
Imagine you're a representative of an advanced space faring civilisation and have been given the task of safe-guarding a small stone-age settlement of promising humanoids. Their planet is rich in precious ores but the galaxy is at war and their position is precarious. Do you teach them the secrets of metal work or let them grub around in the mud for another few thousand years?
Using frameworks to fight with “crutches” and “reinventing the wheel”
Yeah, as a permanently-travelling techie, China is a no-go area for me. Their internet policies, the treatment I once received at an embassy of theirs applying for an innocent tourist visa for less than 2 weeks (just to check out the place really), and their pollution levels in urban areas were 3 big enough issues combined for me to conclude -- I can skip that place probably for another decade at least.

For folks who are into Chinese culture or language, there's always way saner (in all 3 respects) places (and arguably equally beautiful if you're into the nature twist of things) such as Taiwan, Singapore, urban parts of Malaysia, heck Macau or Hong Kong if need be.

Folks who're stuck there for career reasons -- don't envy them. Folks who stay there voluntarily -- it boggles my mind, but different strokes I guess.