[slime-devel] random returning the same value

Patrick May patrick.may at mac.com
Mon Nov 30 17:45:36 UTC 2009


On Dec 6, 2008, at 3:12 AM, Tobias C. Rittweiler wrote:
> Patrick May <pjm at spe.com> writes:
> 
>> Hi,
>> 
>> 	I'm using Slime in Aquamacs with CCL.  When I evaluate (random
>> 100) repeatedly in CCL started from a shell, I get a randomly
>> generated  number between 0 and 99 inclusive.  When I do the same with
>> C-x C-e  within Slime, I get the same number every time.  (random 100
>> (make- 
>> random-state)) gives the same behavior, but (random 100 (make-random-
>> state t)) works properly.
>> 
>> 	Is Slime caching something or have I hosed up my environment?
> 
> Sorry for the late response.  CCL's swank backend uses threads by
> default, and threads inherit values from the global
> environment. *RANDOM-STATE* probably becomes thread-local automatically
> in CCL, resulting in the behaviour you described.
> 
> It should work when you type in the form at the Slime REPL which
> evaluates all forms in the same thread.

	Almost exactly a year later, I get bit by a similar issue (although it did trigger my memory of this discussion).  Basically, the same thing happens with gensym as with random -- in Slime it returns a symbol with the same name every time.  Is this a ccl issue or a slime issue?  Has anyone got a workaround so that I can run unit tests within slime?

Thanks,

Patrick

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2421 bytes
Desc: not available
URL: <https://mailman.common-lisp.net/pipermail/slime-devel/attachments/20091130/f341b208/attachment.bin>


More information about the slime-devel mailing list