IRC channel logs


back to list of logs

<amz3>héllo :)
<madsy>Is there a convenient function for writing forms to a file?
<civodul>madsy: what do you mean by "forms"?
<civodul>there's 'write' and 'display'
<madsy>A list with symbols and strings
<civodul>if you want to read them afterwards with 'read', then you should use 'write'
<madsy>Basically the output of xml->sxml from (sxml simple)
<civodul>you can do: (call-with-output-file "foo" (lambda (port) (write the-thing port)))
<madsy>Yep, that's what I figured. Thanks.
<rlb>So is cons treated somehow specially as far as goops generics are concerned?
<rlb>scheme@(guile-user)> (use-modules (oop goops))
<rlb>scheme@(guile-user)> (define-method (+ (v <vector>)) #t)
<rlb>scheme@(guile-user)> (define-method (cons (v <vector>)) #t)
<rlb>ERROR: In procedure scm-error:
<rlb>ERROR: #<procedure cons (_ _)> is not a valid generic function
<davexunit>rlb: perhaps you need to use 'define-generic' first?
<davexunit>cons is a primitive
<rlb>davexunit: that works, but then the resulting generic doesn't end up with the primitive as the default (as the docs describe).
<rlb>So I thought I'd ask.
<rlb>Perhaps the conversion doesn't work for primitives?
<rlb>If so, we'll probably need to update the docs, or change the behavior.
<davexunit>someone more familiar with goops will have to chime in here. I don't know the details of how it all works.
<davexunit>I avoid GOOPS entirely.
<rlb>davexunit: yeah, in this case, not an option - it's for the highest level of the clojure api I'm prodding at, and there we actually need to have some common generic overrides, cons being the highest profile I imagine.
<rlb>Of course people who don't want to mess with their cons can either use #:select, #:prefix, or the more scheme-native modules I'm also poking at.
<rlb>I didn't see anything like an #:exclude (inverse of #:select), which would be handy.
<rlb>Though these days, I'm much more likely to prefer #:select or #:prefix. Not a fan of whole-namespace includes as the norm.
<rlb>For now I suppose I can manually install the normal cons as the default.
***dje is now known as dje42
<rlb>*excellent* looks like graphviz may have finally made it to guile-2.0 in Debian.