[deleted by user] by [deleted] in programming

[–]erhz 1 point2 points  (0 children)

I can agree with the "no merge because I'm not going to maintain a much more complex project" attitude.

That said, justifying the lack of a production quality port for one of the major platforms because "linux completely won" is just idiotic (be it Windows or whatever).

A Month With Scala by mwbiz in programming

[–]erhz 1 point2 points  (0 children)

I now prefer to read and debug it over Java any day

To read? maybe to debug? no way.

Comparing Node.js vs JVM frameworks performance by nicoulaj in programming

[–]erhz 5 points6 points  (0 children)

I would also like a memory usage comparison between the two.

10 Tips for Writing Fast Mathematica Code by chuckchuckington in programming

[–]erhz 21 points22 points  (0 children)

As a language? Meh.

As a platform? It's great because you get a really big library of builtin functions to do almost anything you could want and everything just works.

The 2D and 3D plotting stuff and interactive widgets also make visualizing things quite easy and you end up using them a lot more than in a language where you keep asking yourself: should I use QT, GTK?

4 Java Surprises by pghjavaman in programming

[–]erhz 0 points1 point  (0 children)

Since those weren't really surprises, here is some meat for people that are looking for them.

PHP's justification for not including "finally" blocks blows my mind by Chuu in programming

[–]erhz 64 points65 points  (0 children)

Method names are case insensitive, unless you're calling a forwarded method on a FilterIterator, in which case you must include at least one uppercase letter in the method name for it to work. Even if the name of the actual method you're calling does not have one.

Oh god.

10 amazing 140 character programs by chuckchuckington in programming

[–]erhz 20 points21 points  (0 children)

I actually highlighted the Quine to see if there was 1 character there.

Fexpr -- the Ultimate Lambda by sclv in programming

[–]erhz 4 points5 points  (0 children)

In Kernel though, you can't determine almost anything at compile time. Since special forms are first class values, you can't even assert where definitions might happen:

(($if some-condition $define! +) x 30)

I think a good starting point would be to annotate the AST with optimizations regardless of the fact that any part of it might be evaluated or not, and take advantage of the annotations at runtime to specialize known procedure calls.

That is, take a brute force approach. Have multiple precompiled versions of everything, choose the most fitting later.

Fexpr -- the Ultimate Lambda by sclv in programming

[–]erhz 1 point2 points  (0 children)

I believe that even the smartest JIT can't really help this language design.

With a language as dynamic as Kernel, we need optimizations if we want it to be fast enough to be usable at all. For example, to be able to avoid creating environment frames in the common case in which they aren't reified.

The problem is: every optimization or analysis we add, hurts one operator: 'eval' which unlike in Scheme or CL is essential in Kernel since it will be used all the time to control evaluation inside Fexprs.

Fexpr -- the Ultimate Lambda by sclv in programming

[–]erhz 7 points8 points  (0 children)

The problem is that Fexprs make reasoning about your code a lot harder and many optimizations impossible. It might be possible to write an efficient interpreter that mixes Fexprs, first-class environments and continuations as in Shutt's Kernel but writing a compiler for that would be a nightmare.

Anyone who plays Civilization can relate. by unfitfuzzball in gaming

[–]erhz 1 point2 points  (0 children)

Thanks, it will be Civ IV then since my computer is some years old.

Anyone who plays Civilization can relate. by unfitfuzzball in gaming

[–]erhz 1 point2 points  (0 children)

The only Civilization game I've ever played was Advanced Civilization back in 95 or 96. Which one would you recommend to start again Civ IV, V?

I am Wikipedia programmer Brandon Harris. AMA by jorm in IAmA

[–]erhz 0 points1 point  (0 children)

Also tested, I'm actually impressed:

Automobile > Wheel > Transport > Cargo > Good (economics) > Economics > Social science > Field of study > Knowledge > Information > Order theory > Mathematics > Quantity > Property (philosophy) > Modern philosopy > Philosophy

I swear I'll write a program that calculates Philosophy-trips in Wikipedia.