Per default newly created threads have a stack size of 8kb on Android/Dalvik which is a *lot* less than the usual 256-512 kB on a 'normal' JVM. This limit is easily hit when e.g. "eval"-ing moderately complex expressions.
In places where one is in control of creating new threads in one's own project one can easily use the Thread constructor that allows one to specify a stack size. However Clojure creates plenty of threads implicitly, e.g. for agents, futures etc.
This indirection may even be twofold through the use of the Executors library from Java, which in turn creates thread implicitly, so just grepping for "new Thread" won't do.
My plan is to go through the Clojure code and find such instances of thread creation and 'correct' them by specifying larger stack sizes.
Any comments.