I think I found a bug in swank.

When I execute in the SLIME REPL
(loop [i 0] (when (< i 500000) (println i) (recur (inc i))))
it goes for a while (the last printed number varies greatly), then
inevitably throws the exception below.

This looks like a but in swank's output stream implementation. Is this
the right place to report this bug?

I installed SLIME for Clojure following the instructions at
http://riddell.us/tutorial/slime_swank/slime_swank.html

I'm a Java programmer trying to grok Clojure, so far I am very very
impressed. Many kudos to the Clojure folks!

Best regards,
Curran Kelleher



java.lang.StringIndexOutOfBoundsException: String index out of range:
6 (NO_SOURCE_FILE:0)
  [Thrown class clojure.lang.Compiler$CompilerException]

Restarts:
 0: [ABORT] Return to SLIME's top level.
 1: [CAUSE] Throw cause of this exception

Backtrace:
  0: clojure.lang.Compiler.eval(Compiler.java:4533)
  1: clojure.core$eval__3969.invoke(core.clj:1738)
  2: swank.commands.basic$eval_region__650.invoke(basic.clj:35)
  3: swank.commands.basic$listener_eval__659.invoke(basic.clj:49)
  4: clojure.lang.Var.invoke(Var.java:346)
  5: user$eval__1833.invoke(Unknown Source)
  6: clojure.lang.Compiler.eval(Compiler.java:4522)
  7: clojure.core$eval__3969.invoke(core.clj:1738)
  8: swank.core$eval_in_emacs_package__307.invoke(core.clj:55)
  9: swank.core$eval_for_emacs__382.invoke(core.clj:123)
 10: clojure.lang.Var.invoke(Var.java:354)
 11: clojure.lang.AFn.applyToHelper(AFn.java:179)
 12: clojure.lang.Var.applyTo(Var.java:463)
 13: clojure.core$apply__3228.doInvoke(core.clj:408)
 14: clojure.lang.RestFn.invoke(RestFn.java:428)
 15: swank.core$eval_from_control__310.invoke(core.clj:62)
 16: swank.core$eval_loop__313.invoke(core.clj:67)
 17: swank.core$spawn_repl_thread__441$fn__470$fn__472.invoke(core.clj:
168)
 18: clojure.lang.AFn.applyToHelper(AFn.java:171)
 19: clojure.lang.AFn.applyTo(AFn.java:164)
 20: clojure.core$apply__3228.doInvoke(core.clj:408)
 21: clojure.lang.RestFn.invoke(RestFn.java:428)
 22: swank.core$spawn_repl_thread__441$fn__470.doInvoke(core.clj:165)
 23: clojure.lang.RestFn.invoke(RestFn.java:402)
 24: clojure.lang.AFn.run(AFn.java:37)
 25: java.lang.Thread.run(Thread.java:636)


Caused by:
String index out of range: 6
  [Thrown class java.lang.StringIndexOutOfBoundsException]

Restarts:
 0: [ABORT] Return to SLIME's top level.

Backtrace:
  0: java.lang.AbstractStringBuilder.substring
(AbstractStringBuilder.java:875)
  1: java.lang.StringBuffer.substring(StringBuffer.java:433)
  2: swank.util.io$call_on_flush_stream__161$fn__163.invoke(io.clj:25)
  3: clojure.proxy.java.io.StringWriter.flush(Unknown Source)
  4: clojure.core$flush__4135.invoke(core.clj:2057)
  5: clojure.core$prn__4138.doInvoke(core.clj:2066)
  6: clojure.lang.RestFn.applyTo(RestFn.java:142)
  7: clojure.core$apply__3228.doInvoke(core.clj:408)
  8: clojure.lang.RestFn.invoke(RestFn.java:428)
  9: clojure.core$println__4144.doInvoke(core.clj:2079)
 10: clojure.lang.RestFn.invoke(RestFn.java:413)
 11: user$eval__1836.invoke(Unknown Source)
 12: clojure.lang.Compiler.eval(Compiler.java:4522)
 13: clojure.core$eval__3969.invoke(core.clj:1738)
 14: swank.commands.basic$eval_region__650.invoke(basic.clj:35)
 15: swank.commands.basic$listener_eval__659.invoke(basic.clj:49)
 16: clojure.lang.Var.invoke(Var.java:346)
 17: user$eval__1833.invoke(Unknown Source)
 18: clojure.lang.Compiler.eval(Compiler.java:4522)
 19: clojure.core$eval__3969.invoke(core.clj:1738)
 20: swank.core$eval_in_emacs_package__307.invoke(core.clj:55)
 21: swank.core$eval_for_emacs__382.invoke(core.clj:123)
 22: clojure.lang.Var.invoke(Var.java:354)
 23: clojure.lang.AFn.applyToHelper(AFn.java:179)
 24: clojure.lang.Var.applyTo(Var.java:463)
 25: clojure.core$apply__3228.doInvoke(core.clj:408)
 26: clojure.lang.RestFn.invoke(RestFn.java:428)
 27: swank.core$eval_from_control__310.invoke(core.clj:62)
 28: swank.core$eval_loop__313.invoke(core.clj:67)
 29: swank.core$spawn_repl_thread__441$fn__470$fn__472.invoke(core.clj:
168)
 30: clojure.lang.AFn.applyToHelper(AFn.java:171)
 31: clojure.lang.AFn.applyTo(AFn.java:164)
 32: clojure.core$apply__3228.doInvoke(core.clj:408)
 33: clojure.lang.RestFn.invoke(RestFn.java:428)
 34: swank.core$spawn_repl_thread__441$fn__470.doInvoke(core.clj:165)
 35: clojure.lang.RestFn.invoke(RestFn.java:402)
 36: clojure.lang.AFn.run(AFn.java:37)
 37: java.lang.Thread.run(Thread.java:636)



--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to