A different approach
Thomas Lord
(18 Jul 2005 17:45 UTC)
|
Re: A different approach
felix winkelmann
(19 Jul 2005 08:19 UTC)
|
Re: A different approach
Jens Axel Søgaard
(19 Jul 2005 08:29 UTC)
|
Re: A different approach felix winkelmann (19 Jul 2005 08:39 UTC)
|
Re: A different approach
Jens Axel Søgaard
(19 Jul 2005 08:46 UTC)
|
Re: A different approach
felix winkelmann
(20 Jul 2005 07:25 UTC)
|
Re: A different approach
Jens Axel Søgaard
(20 Jul 2005 10:07 UTC)
|
Re: A different approach felix winkelmann 19 Jul 2005 08:39 UTC
On 7/19/05, Jens Axel Søgaard <xxxxxx@soegaard.net> wrote: > felix winkelmann wrote: > > On 7/18/05, Thomas Lord <xxxxxx@emf.net> wrote: > >> > >> It has never been great style in Scheme, even if strictly portable, to > >>write programs which assume that string->symbol and symbol->string define a > >>1:1 relationship between the two types. > > > > I'm probably missing something obvious, but this strikes me as quite > > nonsensical. > > Could you elaborate? > > The culprit is uninterned symbols: > > > (let ((foo 'foo)) > (eq? (string->symbol (symbol->string foo)) > foo)) > #t > > >(let ((foo (string->uninterned-symbol "foo"))) > (eq? (string->symbol (symbol->string foo)) > foo)) > #f > Uninterned symbols are (currently) not provided by standard Scheme, and can be simulated by some magic prefix in portable code. cheersm felix