The optional use of web workers would provide potential solutions for issues (as discussed with @viebel)
option 0 : the transpilers/evaluators are in the main page, this is the option already available
option 1 : the transpiler works in a web worker and the eval is in the main page, which would avoid the main page to freeze during the transpilation (but there's still the evaluation part). Especially useful for the "heavy" transpilers e.g. clojurescript
option 2 : everything is in a web worker. This avoids any dom manipulation but it's still ok for textual outputs. This would provide a "safe klipse" variant.