2008-09-15 6 views
3

Was bewirkt der folgende Guile-Schemacode?Guileschema - zitierte Periode?

(eq? y '.) 
(cons x '.) 

Der Code ist nicht gültig in MzScheme, gibt es ein tragbares Äquivalent über Schemaimplementierungen?

Ich versuche, diesen Code von jemand anderem geschrieben zu portieren. Guile scheint darauf zu reagieren. mit # {.} #, aber ich bin mir nicht sicher, was es bedeutet oder wie man das in einem anderen Schema macht.

Antwort

3

Okay, es scheint, dass '. ist gültige Syntax für (string-> symbol ".") in Guile, während MzScheme mindestens |. | erfordert für die Zeit als ein Symbol.

0

Ich bin überrascht, dass jedes Schema-System ein Punktsymbol überhaupt akzeptiert. Mein Rat ist, ein anderes Symbol zu verwenden (ich bin mir sicher, dass Sie das wissen), der Punkt ist eine Abkürzung, um ein Paar darzustellen, und selbst wenn Sie ein Schema finden, das Ihren Code nimmt, werden Sie wahrscheinlich jeden verwirren, der den Pech hat Aufgabe, Ihren Code tatsächlich zu lesen.

+0

Symbole können _any_ Folge von Zeichen enthalten, die in einer Zeichenfolge gültig wären, und Sie können beliebige Zeichenfolge in einem Symbol internieren, indem Sie "Zeichenfolge-> Symbol" verwenden. Die Symbole, die Sie als leere Token schreiben können, ohne dass Sie eine Pipe- oder Backslash-Entwurzelung verwenden, sind jedoch eine eher kleine Untermenge. –