72 karma · joined June 26, 2011
I love me some Haskell, but this particular example is kind of a bait-and-switch.
For instance, if you've got anything like regular expressions, then you've got something with a structure where the "unit" (trivial match) is an identity for sequencing, and the "zero" (failed match) is an identity for disjunction and a zero for sequencing. It's not exactly a formal argument for preferring booleans to loobeans, but a failed regex match sure feels like a "false" to me.
I don't doubt that it's not worth changing at this point, but don't throw the semiring baby out with the lambda bathwater.
Speaking as a semi-informed bystander who's been following Urbit for a while now, it certainly seems like one of the problems it's trying to solve is the typical notion of "user data" as something controlled by third parties. Eg [1]:
> Where is Joe's financial data in mint.com? In, well, mint.com. Suppose Joe wants to move his financial data to taxbrain.com? Suppose Joe decides he doesn't like taxbrain.com, and wants to go back to mint.com? With all his data perfectly intact? [...] Imagine the restfulness of 2020 Joe when he finds that he can have just one computer in the sky, and he is the one who controls all its data and all of its code.
[1]: http://unqualified-reservations.blogspot.com/2011/10/persona...
That said, the current implementation has been explicitly called out (in past incarnations of the docs, at least) as not-remotely-trustworthy with sensitive private data.
If enough people complain this time, maybe I won't have to waste a couple minutes clicking "Inspect Element -> display: none" on all the animated junk before reading the next article.
[1]: https://google-styleguide.googlecode.com/svn/trunk/cppguide....
def let(x):
yield x
And use it by "iterating": ...
for x in range(1, 101)
for divisible_by_5 in let(x % 5 == 0)
Still not as nice as having actual syntax for it.> The reason to use semicolons is because coding rigor tends to produce significantly better software.
True enough. But libraries can easily tend toward either of those extremes. And any obstacles to library development will eventually become obstacles to application development.
Uhh... it would definitely be at least a bit inspiring.