Great write up! I've made the same mistake of having too many subclassed entities, and realising my queries getting slower because my indexes were not being used.
I think Apple should mention this caveat in their official documentation. I'm sure many folks have been bitten by this issue.
For clojure, there's kern (https://github.com/blancas/kern) for parsec style parser combinators. It's quite easy to use. Ironically, I actually understood parser combinators better by reading its wiki (By understood, I mean understood how to _use_ parser combinators). Parsec was initially difficult to grasp because the type system complicated things for me then.
I only got Parsec completely after that eureka moment when I finally understood Monads.
As a Pakistani I find this report alarming. However I also believe that the situation, especially the army's view of the Taliban, in particular groups under the TTP, has drastically changed. The TTP's brazen attacks on the Pakistani military in recent months have prompted the army to respond with force. In particular, the army actually is waiting for the govt's green light to clean up North Waziristan. It recently launched air strikes [1] on Taliban positions, and until a couple of weeks ago a full scale military operation similar to the a successful one conducted in Swat in 2009 seemed imminent.
Ironically though the Sharif administration is not entirely in favour of an operation. Some of the complexities include the fact that Khyber Pakhtunkhwa is governed by PTI which disagrees with a military operation entirely.
Currently there is a shaky ceasefire between the govt and the TTP. However a new splinter group called Aharar-ul-Hind, forked off from the TTP and carried out a daring attack on a court in Islamabad a few days back [2].
Interestingly enough, the new TTP chief Maulana Fazlullah is supposedly based in Afghanistan, and there is a worrying, ironic prospect of TTP raids from Afghanistan into Pakistan after NATO withdrawal.
I'm slightly surprised to see regex being used to parse and retrieve arguments from a function's source code. I would've normally assumed this to be a bad idea.
Scheme is great, but I think there are several key features that clojure has that scheme doesn't provide by default, including (but not limited to):
- Persistent Hash-Trie based Data Structures
- Beautiful asynchronous constructs
- Multimethods
- Protocols
Obviously I in no way intend to discredit scheme, nor start a lisp flamewar :)
/sidenote I love this article comparing a game written in 4 lisp dialects (http://technomancy.us/169)
I've been working with clojure, and atleast for me, it offers the freedom to work with both pure and impure code with relative ease, whilst still being conservative on state manipulation.
This is super impressive. I'm going to use this for my frontend work now.
On a side note, what's the idiomatic structure, or "design pattern" for cljs front end code? I would assume something based on MVC, with models comprising of atoms with watches, Views consisting of hiccup templates and controllers gluing dom events to models and views. Am I close?
The irony here is just too much to swallow. Of all possible places, a party campaigning for greater freedoms ends up in NORTH KOREA.
I used be proud of defending tpb. Now I'm really not sure.