HN user

jneen

2,047 karma
Posts48
Comments228
View on HN
jneen.ca 3mo ago

How to Make Programming Terrible for Everyone

jneen
7pts0
www.jneen.net 11y ago

Tulip – An untyped functional language

jneen
77pts58
medium.com 12y ago

Paul Graham and the Manic Pixie Dream Hacker

jneen
3pts1
en.wikipedia.org 12y ago

De Bruijn indices

jneen
2pts0
gist.github.com 12y ago

Monad.py

jneen
3pts0
baruffio.com 12y ago

Dudebros as a sublime expression of the absurd

jneen
1pts0
codekeyboards.com 12y ago

CODE Keyboards

jneen
19pts1
gist.github.com 12y ago

Monad.java

jneen
5pts0
lambda-the-ultimate.org 12y ago

Extensible Effects - An Alternative to Monad Transformers

jneen
1pts0
blog.tmorris.net 13y ago

Sticks, stones, but names are not useful to me

jneen
1pts0
rubygems.org 13y ago

Math::TAU

jneen
2pts0
www.youtube.com 13y ago

MySQL Bug #20786 gets cake for its 7th birthday

jneen
1pts0
the-technology-zone.blogspot.com 13y ago

Robot Programmed to Fall in Love with a Girl Goes too Far

jneen
2pts2
www.cbsnews.com 13y ago

Controversial ministry offering "alternative to homosexuality" to shut doors

jneen
2pts0
prog21.dadgum.com 13y ago

Turning Your Code Inside Out

jneen
2pts0
www.gamedev.net 13y ago

Haskell Game Object Design - Or How Functions Can Get You Apples

jneen
1pts0
cnnmoney.printthis.clickability.com 13y ago

The Day the NYSE went Yippie (2007)

jneen
1pts0
brehaut.net 13y ago

Unions as Functions

jneen
1pts0
www.jstorimer.com 13y ago

Working with Ruby Threads

jneen
2pts0
will.thimbleby.net 13y ago

Reversible Javascript

jneen
1pts0
yehudakatz.com 13y ago

Extend the Web Forward

jneen
3pts0
computationallyendowed.com 13y ago

Ifs and &&s and Plan 9's Source Code

jneen
190pts138
slendrmeans.wordpress.com 13y ago

I’ve seen the best minds of my generation destroyed by Matlab

jneen
1pts0
github.com 13y ago

Show HN: Easy parser combinators for python 3

jneen
4pts0
mergeconflict.com 13y ago

Coupling in Object-Oriented Programming

jneen
4pts1
www.dvice.com 13y ago

Stephen Hawking: Humans must escape Earth or perish

jneen
2pts0
github.com 13y ago

Fantasy-Land: Algebraic Javascript

jneen
2pts0
brehaut.net 13y ago

Duck Wrapping

jneen
45pts17
halftauday.com 13y ago

Half Tau Day

jneen
2pts0
jeremy.tregunna.ca 13y ago

Programming Languages are a Design Constraint

jneen
1pts0

Yeah, it's basically a toolkit for building jitted languages. Basically the easiest way to get a tracing jit these days. So it'll be a self-hosting jit similar to pypy or pixie.

Yeah, it was a difficult decision to remove types - I'd gotten myself into a corner trying to tack on dependent types, and it just wasn't happening. My bet is that unlike most of the un{i,}typed languages out there (most of which I'd categorize as lisps and smalltalks), tulip provides tagging and destructuring that allows the programmer to maintain some level of control over the polymorphism. Tulip will panic at runtime for non-total functions, but ideally you'll have the tools necessary to keep the panic as close to the problem as possible.

Exactly! This is what the @method / @impl system is for - it's about equivalent to clojure's defprotocol. Future plans include named protocols consisting of multiple methods, and protocol-based matching.

Yep, it's my opinion, and that's why I put it into the design. Lots of language design comes from opinions. I hope it's borne out. FWIW it's the same approach Rust has taken, where macros have to end with a ! to make them visually distinct.

As someone who has tried to document and report shitty behavior, it's important to keep in mind how risky that is.

Here are a few patterns I've observed:

pattern (a) MAN: does shitty thing; WOMAN: hey please stop; WOMAN's performance review: "has conflicts with MAN"

pattern (b) MAN: does shitty thing; WOMAN: reports shitty thing; MANAGER: oh MAN is a nice guy, why don't you try working it out yourself

pattern (c) MAN: does shitty thing; WOMAN: does nothing because she actually reports to MAN

I don't know if this can be solved without a syntax change. As long as there is variable binding and variable mutation are conflated in the syntax, there's really no good way for the compiler to distinguish between the two. It's an unfortunate design decision that we may be stuck with if we want back-compat.

LiveScript is interesting, but seems to have Too Many Features for my tastes.

What I Didn't Say 13 years ago

not sure why i can't reply to ars_technician, but fwiw sexism is a problem that we need protections against.

That's up to you. Maybe that will become more clear as you see the social power imbalance more clearly. Perhaps your framing of the whole situation would change, I don't know.

Yes, turns out it takes some effort to be aware of power imbalance and work against it. Those words have different social meanings when spoken to a woman than when spoken to a man.