two problems I have noticed, but done little in the way of research or remediation:
1 - gsc & gsi when built for solaris 2.6 won't run in the xemacs shell window. No problems in an xterm
2 - (display '(foo bar)) comes out as foobar - I don't know if this is valid RnRS or not, but every scheme I've used has put spaces in between, including gambit 3.0
sorry for the lame bug report, but I figure it's better than nothing
david rush -- DIsruptive Technology!
Afficher les réponses par date
On Nov 12, 2005, at 1:53 PM, david rush wrote:
2 - (display '(foo bar)) comes out as foobar - I don't know if this is valid RnRS or not, but every scheme I've used has put spaces in between, including gambit 3.0
This isn't a bug, it's a feature. (Not that Marc's decision here couldn't be criticized ...)
See the discussion on rrrs-authors from 2000 (!):
http://zurich.csail.mit.edu/pipermail/rrrs-authors/2000-August/ 002441.html
Brad
On 11/12/05, Bradley Lucier lucier@math.purdue.edu wrote:
On Nov 12, 2005, at 1:53 PM, david rush wrote:
2 - (display '(foo bar)) comes out as foobar - I don't know if this is valid RnRS or not, but every scheme I've used has put spaces in between, including gambit 3.0
This isn't a bug, it's a feature. (Not that Marc's decision here couldn't be criticized ...)
See the discussion on rrrs-authors from 2000 (!):
http://zurich.csail.mit.edu/pipermail/rrrs-authors/2000-August/ 002441.html
Point taken. While I have to say that I'm not keen on the new behavior (because I've got lots of code that was built using the usual display sematics), it's definitely impossible to call it non-conformant. Personally, I used to use this riff:
(for-each display `("this is something: " ,(calculate something) #\newline)
to achieve what Gambit 4 provides us for free. Then I decided that parens in my log files were no more annoying than the practices in other logging packages :)
Consider this feature to be officially whinged about. I've mostly shifted over to WRITE at this point anyway...
david rush -- DIsruptive Technology!
On 12-Nov-05, at 2:53 PM, david rush wrote:
two problems I have noticed, but done little in the way of research or remediation:
1 - gsc & gsi when built for solaris 2.6 won't run in the xemacs shell window. No problems in an xterm
Have you tried to run gsi with the option -:d- , i.e.
gsi -:d-
which forces the REPL to be on stdin/stdout instead of the controlling terminal.
Gambit detects when it is run from GNU emacs (EMACS environment variable = t), but I don't know if XEmacs has a similarly set environment variable. Please check and let me know, and I will add it to the runtime system.
2 - (display '(foo bar)) comes out as foobar - I don't know if this is valid RnRS or not, but every scheme I've used has put spaces in between, including gambit 3.0
Many people have mentioned this misbehaviour. And although the Gambit 4 behaviour is not a bug, it is probably sufficiently unexpected that it was a "bad idea" to change display. I will probably return display to its Gambit 3 behavior and add a "print" procedure with the following specs
(define (print #!key (port (current-output-port)) #!rest body) (current-display body port))
where current-display is the current definition of display (note that the new parameter list syntax is being used). This will allow things like
(print "I have " (+ 1 2) " apples") => prints "I have 3 apples" (print port: foo (list 1 "b" (cons "c" #\d) (vector 'e)) #f) => prints "1bcde#f"
Should there be a println which adds a newline at the end? Should a port: #f print to a string so that
(print port: #f "I have " (+ 1 2) " apples") => "I have 3 apples"
Marc