HNHacker News
TopNewBestAskShowJobs

silentOpen

712 karma · joined March 19, 2009

submissionscomments
silentOpen··on SPDY Brings Responsive and Scalable Transport to Firefox 11
So will my web server handle HTTP 1.1, SPDY, and HTTP Next then?

Is Mozilla acting in the interest of the Open Web or was this a bargaining chip with their $300M default search provider deal?

silentOpen··on SPDY Brings Responsive and Scalable Transport to Firefox 11
SPDY may be technically sound but...

Mozilla Corp: Wholly 0wned Subsidiary of Google Inc

silentOpen··on Mac OSX Lion's scroll breaks the web
I thought the purpose of the web was scientific hypertext documents?
silentOpen··on PHP and the Lean Startup
Lambda expressions implies currying because lambdas take only a single argument unless you think of function application as implicitly constructing a tuple of arguments (but JS lacks tuples and only offers maps and arrays). Javascript has first-class anonymous functions, not lambdas.

Closures in JS are broken due to everything being a reference cell by default. This causes closures to be annoying to construct correctly and more expensive than they should be. "Functional" languages typically treat mutation as a side-effect and require reference cells to be explicitly declared. This helps enforce function purity and referential transparency -- functional-ness.

"Being careful about recursion" is like being careful about looping except recursive expressions are a superset of succinct iterative expressions making Javascript weak when it comes to, say, describing state machines. Lack of TCO makes Javascript a terrible compile target as CPS is impossible.

Javascript is an ambiguous, unsafe, difficult-to-analyze language. It supports some constructs that look like constructs in functional languages but because it does not enforce any functional or type systemic restrictions, these features are mostly cargo.

If you write a recursive algorithm in Javascript, you pay like O(n) for stack frames. The same iterative algorithm costs O(1) for stack frames. Thus, many developers eschew recursion in favor of iteration. This means that the logical code that developers write could be both mathematically sound and run efficiently on the machine but instead developers must either resort to temporal reasoning or perform recursion -> iteration transforms in their heads. This is broken.

Just because Javascript is ubiquitous doesn't mean it's good. I don't understand Javascript evangelists -- they seem to be spreading half-truths.

silentOpen··on PHP and the Lean Startup
No TCO makes it very much not scheme or lisp or anything fp.
silentOpen··on Tim O'Reilly: Really, Google is evil now? Let's Get Real. How About Apple?
Collecting this much personal data across this many domains of the users' lives means you will never know if Google has done something evil with your data or not.

By removing the walls between the silos, Google's centralized data has become immensely more valuable for them and a huge vulnerability for its users.

silentOpen··on Roy: Small functional language that compiles to JavaScript
You have also misunderstood my concerns. I am not making any statement regarding the choice of target or object or source language (JS, JS, Roy). I am am objecting to the choice of metalanguage (JS). Haskell compiles to assembly but is not written in assembly!

I am very serious. JavaScript is terrible for analysis and a huge waste on the server-side or mobile. Choosing JavaScript as the metalanguage for an implementation of an HM type system is strange. Why have an HM type system itself written in a type-unsafe way? Why artificially limit the analyzability of the language implementation which is pure and simply string(Roy) -> string(JS)? Roy looks like it has great potential and one of the reasons for that potential is its nascent type system. I want to take my pure Roy function library to ObjC, OCaml, C--, etc.

silentOpen··on Roy: Small functional language that compiles to JavaScript
Please excuse me, perhaps I was not clear in my language objection. I am very excited about Roy! I am concerned about the language that you have chosen to define it in and what it means for the future of the Roy community.

> I know that compiling languages with completely different semantics to JavaScript is possible (I even maintain http://altjs.org/). But they present two problems:

> 1. They output to ugly JavaScript that is hard to interop with and/or people can't reason about

As I am suggesting that you change your metalanguage for Roy's implementation to something with stronger type safety than JavaScript, I am proposing that you increase the ability for both humans and computers to reason about it. Will you commit to implementing Roy in Roy? Will Roy offer a subset or a superset of the type system of the metalanguage (JavaScript)?

I am super-excited about having a thin, HM type system on top of JS. If I could reason about, contribute, and extend the type-checker and compiler, I would adopt Roy in a heartbeat.

> 2. They need a huge runtime

> The resultant JavaScript you linked to was ~300K.

This is not very big for a 3-D game or a compiler. Most of this is runtime and libraries (type-checked JSON, perhaps?) so application code will increase size relatively slowly.

Again, I am not advocating js_of_ocaml as a replacement for Roy. It fulfills a different role. I would love to write type-checked DOM manipulations in Roy natively and produce tiny JS or HTML!

> Roy takes a different approach and tries to stay semantically close to JavaScript when possible. This is to combat both of the above problems. I'd love to see a Roy example of that demo - I imagine the JavaScript would be a lot more readable and smaller.

Do you support persistent objects? Exhaustive case analysis and polymorphic variants? Will you be able to implement the type-checker correctly and safely in JavaScript? Will your users ever be able to compile their pure Roy code into another functional language? Even if Roy is a subset?

silentOpen··on Roy: Small functional language that compiles to JavaScript
http://ocsigen.org/js_of_ocaml/ http://try.ocamlpro.com/

I will actively contribute to your language implementation and use of these tools should you adopt them. With a proper type system, you can change the world. Without a proper type system, we will all suffer and kill ourselves by a thousand cuts.

If you have further doubts about the viability of this approach, see http://ashimagroup.net/demo/game/ooman/tutorial/ for a rigid body motion model in an OCaml WebGL game compiled to JS.

silentOpen··on Roy: Small functional language that compiles to JavaScript
This would be interesting if the meta-language weren't JavaScript. By choosing JS as the ML, you lose static typing and type inference in the compiler and severely restrict the target platforms and future growth and metaprogramming.

I would love to see a formal specification for the language mapping Roy's syntax to a subset of JS. It would also be nice if the primary implementation were written in OCaml or Haskell. Both of these languages now have very reliable ML->JS compilers and support algebraic data types allowing you to precisely model your object language.

silentOpen··on Larry Page to Googlers: If You Don’t Get SPYW, Work Somewhere Else
I keep turning it off and it keeps turning itself back on.
silentOpen··on Ubuntu rips up drop-down menus
Too much user-friendly cruft in Ubuntu now. Debian keeps the good parts and doesn't make me do extra work disabling the WM and friends. XMonad >>= that was easy.
silentOpen··on Supreme Court Says Congress May Re-Copyright Public Domain Works
I have to register my GPL'd script to protect my attribution? No thanks.

Everything should be immediately copyrighted if you mark it and specify its license terms.

14 years is long enough for total copyright but attribution rights should last forever.

silentOpen··on I'm Pirating the Next Version of Windows
There is something wrong with software vendors abusing their customers, however.
silentOpen··on US Authorities Silence NinjaVideo Founder, Rush Her to Prison
This system was put in place years after YouTube launched. YouTube was propelled to popularity without any automatic detection systems in place. Your distinction is disingenuous or you are ignorant of the history of your own employer.
silentOpen··on Why do most programmers work so hard at pretending that they’re not doing math?
The program is a constructive existence proof of the theorem structures embodied in the type system.
silentOpen··on List of Websites Monitored by Homeland Security published by Cryptome
This isn't a list of everything they monitor. Just because Schneier isn't on this list does not mean that he isn't monitored.
silentOpen··on Shutting Down My Site
When the things you are 'hoarding' are indexed digital copies, you are 'archiving'.
silentOpen··on 2011: The Year Intellectual Property Trumped Civil Liberties
What mechanism is there to observe who 'owns' a piece of information? An abstract notion of mechanism?

What does private property mean in the domain of bit strings? Why don't 'intellectual property owners' treat their bit strings like other private property and keep it private?

What birthright grants private citizens or their incorporations state-enforced control of combinations of cultural or technical ideas? Do 'intellectual property owners' create their 'property' from nothing? From where do they source their input material? Have they stood on the shoulders of giants, on the broken backs of thousands of generations of ancestors, or are they special, unique snowflakes creating 'intellectual property' in a vacuum from the godhead?

silentOpen··on India Sues Monsanto for . . . Biopiracy?
Man's changes are abrupt and discrete. We are not outside of nature but we rock the boat pretty hard.
silentOpen··on John Resig: JavaScript as a First Language
If this were actually true, JavaScript would have TCO by now.
silentOpen··on San Francisco team wins paper shredder puzzle prize
More lateral thinking puzzle, less deployable intelligence expertise. A public coming out about this channel?
silentOpen··on How To Learn About Everything
Unless the next big thing is a compiler...
silentOpen··on Path menu in pure CSS3
Its imperative nature (mutation, side effects) and potential non-termination makes it unattractive as a catch-all hypertext document language.

By using the language of Least Power (timbl@w3c.org) that still accomplishes your task, you achieve a more concise and more analyzable document.

I wouldn't call that "nothing to do with TC".

silentOpen··on The W3C asks for help finding Prior Art to two Apple Patents.
Computer programs are constructivist mathematical proofs. Why is this annoying? Why isn't this a good argument against software patents? Should I be able to patent a mathematical theorem and its proof?
silentOpen··on Who owns America? Hint: It's not China
Self = same economic system/country. Or would you have America writing off loans from American citizens?
silentOpen··on Real Blogging for Hackers Written in C
"blog" is both a noun and a verb. In this case, the verb was used as a gerund (noun).
silentOpen··on Don't Let Congress Order Internet Companies to Spy on You
This bill is "only" retaining connection records for every wireline connection. The cell phone oligopoly already know everything (and cooperate) and commonly available consumer internet access is governed by onerous terms of service. Why does my cable company need to know my SSN?

The "but only if the user address assignment is over publicly open radio" concession is for the cafe owner with free wifi or public government-operated access points. I guess free wifi will be the only libre internet access.

It appears that the lawmakers who drafted this legislation do not understand the (in)feasibility of their language or understand all too well the consequences of implementation.

An elected representative is a public servant. Being a representative requires sacrifice. When will we ask our representatives to sacrifice their privacy of communication so that they may represent the people's will more perfectly?

Who is pulling the strings? Are they inside or outside of government?

silentOpen··on Don't Let Congress Order Internet Companies to Spy on You
From <http://thomas.loc.gov/cgi-bin/query/z?c112:H.R.1981:>;

`(h) Retention of Certain Records- A provider of an electronic communication service or remote computing service shall retain for a period of at least 18 months the temporarily assigned network addresses the service assigns to each account, unless that address is transmitted by radio communication (as defined in section 3 of the Communications Act of 1934).'. (b) Sense of Congress- It is the sense of Congress that records retained pursuant to section 2703(h) of title 18, United States Code, should be stored securely to protect customer privacy and prevent against breaches of the records.

So while I don't like the slipperiness of this slope (or the logic of the argument), the May 25, 2011 text only appears to specify non-radio-transmitted connection records as retained. This means wi-fi, phone, satellite are "safe" where "safe" = "not yet".

As I read it, the authors then make a wish that these records be stored "securely" where "securely" = "no one will ever be liable for a breach".

We seriously need an attribution and karma system for Congress.

silentOpen··on Why Comcast Should Be Sued
I live in Pasadena, CA, in the middle of LA county, one of the most populous in the USA and I have the following choices for maximal bandwidth:

AT&T DSL at 6Mbps/1.5Mbps for $40/mo Charter Cable at 60Mbps/?Mbps for $100/mo

I think both plans have caps, though I've never hit them. Charter wouldn't tell me their upload speeds and demanded I give them my SSN so I went with ATT.

The United States does not care about its economic future. It cares about keeping the next quarter's profits up for the corrupt telecom cartel that's turned bribing local governments into a science.

← PreviousPage 5 of 12Next →