I also use org-mode for my daily journal. Have been for about a year and I'm very happy with it. I used to use Evernote, but I like the idea of keeping it to myself with encrypted backups better.
I have never quite understood all these desktop emotions. I run Kubuntu, but almost never interact with any desktop features. What is it in your workflow that requires you to interact with Gnome/Unity? (just curious)
The wiki article is not valid, since it considers a subtly different problem than the one I do. If you read the comment at the top of the code, you will see that I changed the question to be less ambiguous.
In the problem I pose, the person does not randomly come forward and tell me "I have a boy born on a tuesday". In my problem I ask random people who I know have two children if they have "at least on boy born on a tuesday" until someone says yes.
Try something easier, for example two dice. The probability to roll 1 1 is less than to roll 1 2, because 1 2 can be rolled either by first rolling a 1 or a 2, while 1 1 can be rolled only by first rolling a 1. That information is used often in dice games like backgammon.
Same with children: BT BT can only be "rolled" if your first child is BT, whil BT BW can be "rolled" if your first child is either BT or BW.
No, it does not exclude that possibility (print the final list of pairs if you want to check). The calculation is correct. The result is counter-intuitive to almost everyone, which is why I made the program, so you can convince yourself.
I have a fundamental issue with bitcoins that I have not seen anyone address. Sooner or later a better bitcoin will be invented. One that can perform transactions faster, or is more anonymous or where mining for the coin helps some nice project (SETI@home, math proofs, protein folding, etc), or something completely different. When an alternative better currency catches on, at some point it will become obvious that bitcoins will be obsolete and the value should suddenly be 0 again.
It is the nature of technology that bitcoins will someday become MySpace.
I am open to be convinced otherwise by someone knowledgeable.
I agree that syntax is more important than us "rational" programmers like to let on. The syntax will be similar to Python, but nothing fantastic.
I think switching the usual meaning of = and == will be confusing. O'Caml uses = and == for deep and shallow comparison respectively and <- for assignment. That is a possibility.
I plan to sneak in something similar with a capable type system and contracts for stuff that you can't express in the types. That way you could "one day" use a solver like Z3 and start proving or disproving some of the tractable contracts, without having to even change the programs. A bit like LiquidHaskell.
Not exactly dependent types, but practical, I think.
1. Yes, the linear typing for mutable data is inspired by Clean.
2. I look at Shen from time to time. It looks nice, but I have never gotten around to play with it.
I do like an expressive high-level encoding like that, but 1) I just needed a silly example to show what pipes are. In practice you would probably use higher-order library functions (or components) like group for the same thing. 2) In my experience, very compressed expressions can be hard to modify in certain directions. Practical stuff like printing, logging or storing progress every X seconds, which is a small modification in a for-loop, can be a hassle.
Dammit.. I checked to see that Glow was not taken :). Almost every name, that is not an outright racial slur is already used. Still, Java and Javascript are completely different languages and that has never lead to much confusion..
Visual programming used to leave me completely cold, but with the emergence of tablets and the promise not to make _everything_ visual, I hope to convince people otherwise. If you have not seen Bret Victor's brilliant "Future of programming" http://vimeo.com/71278954 and "Inventing on principle" http://vimeo.com/36579366, I highly recommend it.