HNHacker News
TopNewBestAskShowJobs

slashnull

224 karma · joined December 17, 2013

submissionscomments
slashnull··on Haskell GHC 7.10.1 Released
The type hole feature is pretty cool!

I learned how to solve some of my type-related puzzlement by redefining stuff as "undefined" and using HDevTools to see what type gets inferred.

Also I can't wait to see what wild stuff people will come up with using the typechecker plugin API

slashnull··on Vim is moving to GitHub
What an interesting happenstance...

I just ported all my stuff to Neovim earlier this week and everything works out of the box. I just had to cp everything vim to nvim (.vim -> .nvim, .vimrc -> .nvimrc, etc).

Unfortunately there are no immediate benefits, but I agree with Neovim's long-term goals, so I suppose I'l be there when we get async plugins written in Lua.

slashnull··on The load-balanced capture effect
This piece is the gift that keeps on giving
slashnull··on Deb.haskell.org Security Breach
Mh, this is intriguing, anybody knows what's the stack under that repo?
slashnull··on On Mechanical Keyboards
I think the hype around high-end keyboard is really justified.

Most typing implements these days are among those despicable types:

1) touchscreen virtual keyboards

2) race-to-the-bottom cheap mass-produced rubber dome cap

3) gaming keyboards, which are less race-to-the-bottom-ish but sin by abuse of bells, whistles and gongs

4) laptop keyboards optimized for looks

Some attention to the proper form of the best computer input peripheral ever invented is definitely welcome.

slashnull··on On Mechanical Keyboards
Falling into weird pits is a pretty damn important part of hackerdom if you ask me.
slashnull··on Introducing React Native [video]
This is awesome.

I can't wait for the API docs and sources to be released.

Tweets and videos are lousy at conveying information : )

slashnull··on Introducing React Native [video]
Sorry, dumb question, don't feel like watching the video:

What platforms are targetted? Out of, say, iOS, Android, Linux/X11 desktop, Windows desktop, WinRT, OSX?

slashnull··on Ask HN: Which would you use for a new Project (ReactJS or AngularJS)?
Well,

1) if I understood correctly, the design of Angular has some inherent, and rather large, performance hits.

2) Google isn't dogfooding Angular save for one project. Facebook seem pretty serious about doing all new developement in React.

3) the specific kind of developement they're doing is similar to the one I have to do right now, viz. taking an established mostly static page and adding bits of highly interactive and dynamic behavior here and there. Google used Angular to reimplement the app from scratch. I can't afford that.

4) Angular, at what will probably the top of its popularity right now, just broke all interfaces and syntax and everything during the passage to 2.0, for reasons that were never fully explained (to me at least). Facebook won't be able to do that without breaking the proportionally large investment they had so far with React.js and incurring significant costs, which is nice and stable and comfortable. If the benefit/cost ratio of React 2.0 (or 1.0, I guess) is acceptable for Facebook, then it will probably be acceptable for me, too.

5) React interacts nicely with their Flow typechecker, which I think is, uh, the safest vector, right now, to foster the adoption of algebraic typing in the mainstream of programming. I won't typecheck my JS before the summer, probably, but still, this is philosophically fun.

slashnull··on Jobs that no longer exist today
Let us have a thought for the the profession of longshoreman, eliminated by the commercial viability of the shipping container in the 60's and subsequent total automation of port operations.
slashnull··on Obama announces nuclear breakthrough on landmark India trip
Mh, it's unclear in the article, but perhaps the US nuclear energy companies will finally be able to install the new and safer designs they haven't been able to build because of the high-profile fuckups of the old, unsafe designs?
slashnull··on Obama announces nuclear breakthrough on landmark India trip
Obama announces India breakthrough on landmark nuclear trip

Obama announces nuclear India on landmark breakthrough trip

India breakthrough nuclear trip on landmark Obama announce

slashnull··on The Leaning Buildings of Santos, Brazil
I don't really see the problem with having tilted floors compared to the risk of, oh dying in a structural collapse
slashnull··on Liberating the Smalltalk lurking in C and Unix [video]
With what sort of Golden Hammer ?; )
slashnull··on Choosing a web dev platform: Rails or PHP (2009)
Oh yeah I almost forgot: lots of people are making websites in Python. I guess it's useful if one wants to have a comfortably mainstream webdev experience while taking advantage of the incredibly rich Python ecosystem.
slashnull··on Choosing a web dev platform: Rails or PHP (2009)
Um, one could argue that Rails has lost quite a bit of hype recently, mostly to the hands of Node.js, but Node isn't as mature as Rails was at that time, nor trying to solve the same problem.

PHP is still hugely popular, and much better than it was in 2009, and still getting better, ever so slowly. Arguably because of the beauty of Rails.

Depending on one's definition of "enterprise", Java is slowly become less enterprise, pulled towards to cool side of the Force by Clojure and Scala.

And I'l go out on a limb and say that the evolution of front-end technologies, and the popularity of REST interfaces makes the current web friendlier towards wacky multi-language setups, hence friendlier towards wacky languages.

You see people suggesting stuff like using a compiled lang as the REST server for a front-end JS app using a Node.js instance to do server-side rendering.

But no.

The conclusion remains: it's totally legit to start new projects in PHP these days.

slashnull··on I think I've solved the Haskell records problem
Mhyes, it appears that I misunderstood the precise mechanism of this lib.

I don't know how to feel about the use of template Haskell in this lib (beyond the fact that it seems like it works great and avoids the curse of the weird error messages). I'm tempted to see it as a proof that, while deconstructive pattern matching is great (I really mean it!), it's nearly impossible to get rid of antediluvian dot accessor syntax/semantics.

Either way I'm too tired and incompetent with Haskell to have a meaningful opinion on that.

slashnull··on I think I've solved the Haskell records problem
String typing to the rescue!
slashnull··on Why We Still Believe in Private Offices
The new offices my company is moving to will have an open floor plan and a foosball table.

Time to fight for remoting rights.

slashnull··on Presenting the Most Over-Engineered Blog Ever
My god so many incredible links of crazy blogs here...

I took a certain pleasure in the opposite recently, by writing on a few simple .html files on an Apache server with headers in <h\d> and content in either <p> or <ul>

slashnull··on Scientists say they’ll soon extend life ‘well beyond 120’
Well yeah, but one thing that bugs me is that many structures, many businesses even, seem to have little purposes beyond making jobs pop into existence, by having bizarrely huge amounts of redundancy, red tape, or by having goals that seem counterproductive, or by being tolerated despite not having reached any relevant goal for a loooong time.

One of my main problem is that there is a huge bagage of material wealth and social status attached to those jobs that look, to me, right now, completely useless.

By tying that to the job itself, it makes it hard to assess the value of the work accomplished, independently of the fact that said job is stable and well-paid.

Hence,

It pisses me off when politicians announce not that some shit got done, but that jobs were created.

It pisses me off that the goal of working seems to be shifting from solving a problem to getting paid for it.

I'm young and stupid and idealistic and I'm angry with the world.

It'l probably pass ; )

slashnull··on Scientists say they’ll soon extend life ‘well beyond 120’
I think that what we need so desperately bad is a complete database of what goods and services are needed and demanded in our society as a whole, and what is the cost, in a standardized and comprehensive form, of those goods and services, as they are currently offered, whether in the official, monetary economy, or as stuff people do, and if possible, data on the evolution of those parameters over time.

For example: people need to eat, and they do that much eating at the McD's, and this costs that many socio-dollars, and then eat that many TV dinners, and do that much cooking, with an estimation in socio-dollars of how much time it takes to cook vs. how much to stop by the McD's to grab a burger.

And, let me get controversial: what was the evolution of that global cost as the traditional, implicit people responsible for cooking (women) started working full-time, too.

See, that wave of feminism represents a moment where the distribution of labour, and the shape of it, changed rather dramatically. It's hard to get a decent outlook on the economic effect of that event, which makes it hard to devise some form of public policy that would, at the same time, help our society solve the problems that probably appeared as a result, and to help society make the most of this new workforce.

My wet econodream is that we realize that we collectively spend an absurd amount of cold, hard cash on feeding ourselves, and that we'd save that much cold, hard cash by having a bunch of government-owned "restaurants" simply giving away (within some reasonable limit) good but ruthlessly efficient (in terms of labour, value of basic ingredients, nutricious value, taste, and even general convenience) meals to, like, anyone, at any time.

But we can't take any halfway decent decision at all without data. Which we don't have.

Although it appears that it might be happening.

Slatestarcodex found that database of cost-effectiveness of various public health measures, illnesses and drugs, measured in some acronym that looks seductively close to the philosophical definition of "utility"

https://research.tufts-nemc.org/cear4/Home.aspx

slashnull··on Scientists say they’ll soon extend life ‘well beyond 120’
Hell yeah!
slashnull··on Scientists say they’ll soon extend life ‘well beyond 120’
Another important point is that the relation between children, their parents and the society they live in would be changed in ways that are hard to predict.

See, the current assumption (or rather, the assumption that socially still stands but that is already shaken by the current lifespan augmentation) is that once a child is an adult, it won't be long before they will eventually see their parents either die (before modern medicine) or retire (the current paradigm), and have to replace them.

They will get hired fast, to get enough experience with their notional parents while those are still in the workforce, and then quickly be needed in a full-time, important gig.

It's also worth mentioning that the society, right now, is built on the idea that full-time stable jobs are widely available, on one hand, and a strict necessity for anyone to reach any kind of reasonable level of material comfort, social adjustment and general happiness. When not the only way to get basic human dignity.

That assumption is old as balls, and it's hard to see it surviving the current state of technology and medicine, let alone what's about to come.

So what will probably happen is that we'l keep telling people that working 40 hours a week in a job you had for the last, like, 5 years, is a basic necessity, yet that it's nearly impossible to get 'em, because old people are a) living forever b) holding on to those jobs because they're a strict requirement c) creating machines that do other people's 40hrs/week jobs.

So yeah, now that stable, full-time work has been overloaded with all that junk, the conditions that make this paradigm possible have to be saved whenever they're menaced. Sometimes I wonder whether I'm the only one here who thinks that the point of working is to make the world around me a better place, rather than a way to reach some kind of social status and incidentally keeping a relatively helpful system up and running.

With those prospects of limitless healthly lifespans, those limits would look like either

- capping the timespan people are allowed to work, so that they can't hog those precious, limited 40hrs/week stable jobs that young folks need to get some kind of implicit economic citizenship

- creating demand for those, by doing the old sorta-Keynesian thing and just creating jobs. This has worked great in the past, 'cause those jobs looked like building the Golden Gate, the Hoover dam, nailing down the basics of nuclear physics, getting jet engines to work, and then sending people on the freaking moon. But now it looks more like working as under-trained wannabe-SWAT police teams raiding teen's bedrooms for small-time weed deals, building the like five thousandth M1-A1 the USArmy doesn't need, and stuff like that.

My ideal, which I can't even seriously hold as I watch how most governments deal with their respective economic crises, is to strip that socioeconomic status away from stable employment.

I picture guaranteed basic income as the very first economic stepping stone of that project. See, I would gladly accept a basic living wage to stay home, cook for my family, take care of the house, and whatever, while dedicating exactly all, and not one second more, of my daily intellectually productive work timespan to something relevant, I don't know what. I think that, all things considered, I'd be more productive at my programming job working 3 hours per day than my current 8-ish.

But this is an socioeconomic rant I need to refine and turn into a set of attainable political measures, and then get off my butt and militate for them.

slashnull··on Recursion to Iteration, Part 4: The Trampoline
There's some kind of underlying, overwhelming point in there...

That tail call elimination, agressive inlining, escape analysis, continuation passing style, are saying a lot about the boundary between blocks in Algol-style languages, on one hand, and functions in LISP and ML derivatives, on the other hand.

I've seen someone in a Quora thread state that monads are just like semicolon - newline, which, beyond the witticism, says that (most) monads do sequential code, which is the point of blocks (defined by statements separated by semicolons, and semantically executed sequentially, and to make that block an atomic... Thing)

Now yeah. Where am I getting to?

I'm not sure.

The point for functional programming is composability, which is obtained in many philosophically and technically different ways, but since those distinctions, naively implemented, make call stacks explode and garbage collectors cry in agony.

TCO aims to find functions that can be seen as a block of statements that set n different variables, block which is then iterated a set number of times with different values of those variables

Escape analysis aims to find functions that take an argument A and return a value R where R can be substituted for A in the caller's, uh, memory. Such a function is equivalent to a block that simply sets a variable that is in scope.

(state-ish) monads aim to allow the sequential and atomic execution of functions that are related in a way that's hard to fit into the "pipes" model, typically by passing around a data structure representing the state those functions "live in". That data structure is roughly equivalent to the scope in block-structure languages.

CPS means, more or less, that the stack is a great way to deal with tree-like expression evaluations, but that some control flow is hard to fit in a tree, or that it's a waste of tree space to do so.

It seems like a lot of those techniques' goal is to offer, at the same time, the composability of functions, and the performance of blocks.

slashnull··on How to Become a Hacker (2001)
Eric S. Raymond gave meaning to my life.
slashnull··on Scientists say they’ll soon extend life ‘well beyond 120’
Fortunately, their approach seems to take into account the fact that most people's quality of life degrade very steeply after hitting, say, 70, and aim to augment this "quality" lifespan at the same time as the "total" lifespan.

Just ask Scott Adams if he would have wanted his father to live "well beyond 120".

slashnull··on MSFT open sources production serialization system written partially in Haskell
So it seems like someone, somewhere, knows how to get non-trivial Haskell code to compile on Windows ; )
slashnull··on On some LCD monitors this will cause them to emit a tone (epilepsy warning)
I'm not crazy!

Some text patterns (like, say, grep going through minified JS) make my monitor emit a weird noise I was having all the trouble in the world believing.

Now I know this tone actually exists

slashnull··on The difference between top-down parsing and bottom-up parsing
I was so happy when I finally grokked LR parsers: it's just a big state machine! _if_ that token found, push on stack, go to _that_ other state. Consume token, check the next state transition.

But while fun it was pretty much useless because recursive descents and combinators are so much easier.

← PreviousPage 2 of 7Next →