2009/11/8 Matthew Gruen <wikigraceno...@gmail.com>: > On Sun, Nov 8, 2009 at 6:21 AM, Deniz Dogan <deniz.a.m.do...@gmail.com> > wrote: >> What point are you trying to make by distinguishing JSON from >> JavaScript? JSON is a subset of JavaScript, they share the same type >> system. "Null can be only one value." This doesn't make sense to me, >> since as you say null is not a type, but a value. >> >> -- >> Deniz Dogan >> > > It seems I underestimated the typedness of null in JavaScript :) I checked > the ECMAScript specification, and it does refer to a "null type".. so titto > was right.[1] My opinion is that JSON's 'type system' should be analyzed > orthogonal to JavaScript's regardless. If JSON is a subset of JavaScript, it > is primarily a syntactic one. When I said "Null can be only one value", > implying that null is a type, I was referring to JSON's null, not > JavaScript's null. In JSON, null *is* definitely a unit type. When > considering mappings between Haskell and JSON in the case of (), we should > see that () is a unit type in Haskell, null is a unit type in JSON > (regardless of its role in JavaScript), and maybe try to associate them. > > —Matt > > [1] I was misled by the fact that typeof null = 'object'. The logic behind > this, I think, is that null is meant to be bound to a variable that would > otherwise be a reference to an actual object value. Many have criticized > this result, e.g. Douglas Crockford > (http://javascript.crockford.com/remedial.html) >
Let's keep in mind when reading the ECMAScript specification that JavaScript is merely based on it and breaks it on several different points. :) -- Deniz Dogan _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe