Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
cliffbean
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
11 ms
·
61.
▲
by
cliffbean
13y ago
DannyBee, it is you who are demonstrating considerable misunderstanding here (and in other posts here). To respond to your comments in this post, the asm.js validator is not checking for undefined behavior. In fact, it has nothing to do wit
62.
▲
by
cliffbean
13y ago
Getting the Citadel demo to run at 60fps is impressive. It means that V8 is "fast enough" to keep up with the video card on that application. However, the benchmarks at [0] clearly show that this is not the end of the story. The &
63.
▲
by
cliffbean
13y ago
Gödel proved that the foundation can't be complete (without being inconsistent), but it can still be useful.
64.
▲
by
cliffbean
13y ago
Among other reasons, people dislike DRM because it involves someone else effectively making your computer do something which you can't control, or even observe. Schemes vary, but the stronger ones can't even be run under a VM. Thi
65.
▲
by
cliffbean
13y ago
It's not just a theoretical question about whether a particular language is capable of supporting an efficient event loop. It's also a significantly practical question about whether there are a large number of libraries and commun
66.
▲
by
cliffbean
13y ago
Also, this is not just a property of the language itself, it's a property of the ecosystem built around the language.
67.
▲
by
cliffbean
13y ago
Those are nice things, but they're also orthogonal to the license choice, which happens to be the detail which made the headline here.
68.
▲
by
cliffbean
13y ago
I am sympathetic to people who prefer BSD-style licenses for many reasons, including simplicity, GPLv3 overreach avoidance, and even just declining to give attention to a certain obnoxious man (regardless of what you think of the politics).
69.
▲
by
cliffbean
13y ago
> you can write IR code that multiplies _any_ number of floats and the backend "should" generate reasonable machine code for any architecture. Except that it doesn't. If you write your code with <2 x float> and codeg
70.
▲
by
cliffbean
13y ago
I have actually written code to produce LLVM IR to conform to a platform's native C ABI. It's quite a bit more work than "just a bit of register/stack allocation". For one thing, LLVM IR doesn't expose the conc
71.
▲
by
cliffbean
13y ago
Don't be pedantic. Splitting the problem into parts and saying that the one part which happens to have the name that other people use to refer to the whole problem is easy doesn't make the whole problem easy.
72.
▲
by
cliffbean
13y ago
The flip side of this is that using C gives you the C calling convention for free. LLVM IR doesn't abstract away all the details of the C calling convention, and requires IR producers to produce platform-specific code for it.
73.
▲
by
cliffbean
13y ago
In the long run, an API like navigator.cores is not what we actually want. How do you count cores in a world of SMT, shared caches, shared memory, and unrelated processes? Ideally, we want a higher-level API which allows the underlying syst
74.
▲
by
cliffbean
13y ago
OdinMonkey uses the existing IonMonkey compiler to do the actual optimization and code generation work. This blog post has more information [0]; see especially the comments section where the author responds to some questions and discusses t
75.
▲
by
cliffbean
13y ago
The fascinating thing about this is that they didn't write a new JIT for asm.js. It's just their existing JIT with more information and a few new tricks. Among other things, this means that it doesn't yet have a lot of the fancy optimizatio
76.
▲
by
cliffbean
13y ago
I see much higher framerates than that running the demo on a laptop with a boring integrated Intel GPU. Are you using the released version of Firefox, the nightly Firefox, or a different browser?
77.
▲
by
cliffbean
13y ago
You can run it in non-asm.js browsers; the released version of Firefox can run it, for example. It doesn't crash, but it is slower. According to the FAQ on the game site [0], Chrome has a bug which is expected to be fixed soon. [0] http://
78.
▲
by
cliffbean
13y ago
Similarly, structured control flow (C's if, for, while, switch etc.) is better than unstructured (LLVM IR just has the equivalent of gotos (yes, LLVM IR has switch too, but it can go anywhere, so it still isn't inherently structured)). So i
79.
▲
by
cliffbean
13y ago
You're using LISP, so code is data, right? And if all your functions are pure, the code should have a nice dependence-graph structure. I can believe that the actual LISP data structure of a function may not be the most convenient to work
80.
▲
by
cliffbean
13y ago
It's not clear to me how Graph is better than just regular pure functional programming. In theory, you could implement graph/par-compile for regular functions by examining the dependence graph in their code, right? Is the special-purpose de
81.
▲
by
cliffbean
13y ago
On one hand, I love Linode. It's a sweet Linux box in the cloud. On the other hand, I have a hard time using it for anything sensitive. Quotes like "We have implemented all appropriate measures to provide the maximum amount of protection to
82.
▲
by
cliffbean
14y ago
Absolute pitches and are the concern of the performer, but relative pitches are the concern of the listener. Who's more important? ;-) This is why I mainly worry that a relative-pitch notation may present a steeper learning curve. Advanced
83.
▲
by
cliffbean
14y ago
You would pick an arbitrary base and do everything relative to that. This is pretty easy compared to the shoehorning already required to notate such music in existing notation schemes :-).
84.
▲
by
cliffbean
14y ago
My thought was that a relative-pitch notation might present a steeper learning curve. But I don't really know. I've worked with intermediate-level musicians who are skilled at regular sight-reading, but who struggle to learn to transpose on
85.
▲
by
cliffbean
14y ago
Right, key signatures aren't just shorthand, they're useful information to give the performer up front. In fact, it's so useful to state the key up front, I might even suggest the opposite; base the notation on relative pitches, as in "mova
86.
▲
by
cliffbean
14y ago
The Pixel's screen is a reason why some people want it.
87.
▲
by
cliffbean
14y ago
Alternatively, those feelings are what's really important, and the matters at hand are just trivial details that, by accident, happen to be the focal points for discussion. All this discussion of who heard who tell what joke, or who tweeted
88.
▲
by
cliffbean
14y ago
That is optimizing for the short term. "When I've run sl, I clearly wanted ls, so you should give me that (even if you also punish me)." Optimizing for the long term is also plausible. "Don't reward me for making mistakes (even if you also
89.
▲
by
cliffbean
14y ago
I agree with your point; while functionality portability is important, we really want performance portability too. A big challenge we seem to have with any of the available options is convincing all the major browser makers to agree on som
90.
▲
by
cliffbean
14y ago
> If your code lacks the declaration of the function, the compiler will assume pre ANSI-C semantics and generate code returning an int. Better, please help by compiling your C code with -Wimplicit-function-declaration (included in -Wall
More ›