IRC channel logs
2026-04-12.log
back to list of logs
<dsmith>Certainly has been an increase in activity lately <jab>And I sort of know that there's lots of activity in guile land, but I just don't hear about it. <old>I think one of the next I would like us to do as a community is to have some kind of forum/bulletin-board <old>yet another platform to be o <GreenRocky>Hello 👋 Is there a Guile language server or should I use something for Scheme in general? <yarl>both srfi-9 and RNRS records use make-record-type. <yarl>Nut the part on the UID though <yarl>So, if I understand correctly, there's two things in your comment. The one I get is that yeah I forgot that you can set a "custom" printer by giving some function to the optional "print" argument to make-record-type <probie>Does guile allow any sort of reader macros? <yarl>Or anybody. Sorry to bother you again with this but I don't see why there is a default-record-printer in srfi-9 after all. I might need a break but the only use is for the make-record-type, which is in boot-9 and which plugs in it's own and exact default-record-printer if none is passed. <yarl>So I really don't see why srfi-9 defines its own and passes it instead of #f <yarl> /exact/exact same definition for/ <avigatori>hello, I was wondering how guile's keywords are defined in R5RS. They standard seems to refer to builtin "reserved" words (cond, set! etc.) as keywords as far as I can see. Are they defined in later standards? <mwette>"keyword" is a term used for terms starting with #:. I'd say cond set! etc are syntax forms (defined in R5RS, say). I don't think they are reserved. For example, srfi-71 redefines the syntax form `let' <mwette>I am curious if any, like lambda, are reserved. <avigatori>AFAIK it says that one is allowed to redefine it. But it definitely uses the term "syntactic keyword" for "else, =>, define, unquote, unquote-splicing" and "expression keyword" for "quote, lambda, if, set!, begin, cond, and, or, case, let, let*, letrec, do, delay, quasiquote" <avigatori>I can't find any metion of constructions like "#:keyword" or ":keyword" or "keyword:". According to the Lexical structure defined in 7.1.1 those seem to just fall under "identifier" <avigatori>(but I haven't read the other standards yet) <mwette>#:keyword is a Guile extension, as is l <mwette>as is lambda*, define* and others <dsmith>I believe Guile #:keywords have been around a long time. They pre-date R5RS and maybe even R4RS. <mwette>dsmith: I just checked the guile-1.8 manual and #:keywords are in there. <mwette>avigatori: you got me. I had read that as using #:keyword but that doesn't seem appear in r5rs, so I'm afraid I can't help. It's been decades since I've been familiar with that document. <dsmith>avigatori, Guile #:keywords are inspired by CL keywords. (And like I said, are a Guile extension that predates the R{4,5,6,7}RS standards