IRC channel logs

2025-06-06.log

back to list of logs

<lechner>Hi, should extension names use underscores or hyphens for visual separation?
<old>lechner: you mean something like libextension_something.so ?
<humm>unless it’s a C identifier, no reason to use _
<lechner>humm / yeah, is there a convention?
<noe>I guess it should correspond to the name of the shared library. So I would say dashes?
<noe>hyphens*
<noe>guile’s is called guile-3.0
<noe>libguile-3.0 actually
<humm>lechner: it’s relatively uncommon to put underscores in filenames
<lechner>noe / humm / okay, thanks!
<lechner>Hi, is the caret ^ available for a class of procedures similar to how we use the asterisk * ?
<ieure>lechner, Like (define (^foo^) ...)
<ieure>I suggest you simply try it, but I expect it'll work. Lisps are very permissive about symbol names, the only thing I'd be wary of is stuff that'd confuse reader macros, like `'#() chars.
<ieure>Also, if the other convention is *earmuffs*, I propose your naming this convention ^bat^ symbols.
<rlb>There's also #{42 some questionable symbol}# and r7rs |42 some questionable symbol|, but I'd suggest favoring much more prosaic naming -- I think my bar would be moderately high for adding something like ^x^, for example (fwiw).
<rlb>But maybe I'm insufficiently adventurous :)
<old>sneek: later tell lechner the only language that puts `_` in their files is Python. Because their module system reflection works with Python identifier
<sneek>Will do.
<rlb>clojure too
<rlb>i.e. clojure namespace some-namespace.somewhere ends up in some_namespace/somewhere.clj, fwiw.
<rlb>...because jvm, I think (and guessing decades of cross-platform portability considerations)
<old>rlb: Guess they were wrong of targeting JVM
<old>Really weird that these 1960s things still leak in modern language lol
<old>Because I guess it's really important to support `a+b` and so `a-b'must means a minus b instead of being an identifier
<old>Could be worst I guess. Imagine having your files in PascalCase because
<rlb>It *is* nice to be able to produce a jar that'll still work as-is 10+ years later on multiple platforms. Whether that's worth the tradeoffs that requires is another question.
<old>LibraryFoo.so
<rlb>I suspect it might have been filesystem related.
<rlb>i.e. LCD
<rlb>at the tim
<old>rlb: of course, backward compatibility is always nice
<rlb>"time"
<old>At least the unix world did not inherit the insanity from DOS
<ieure>Well, time machines hadn't been invented yet.
<old>7 letters file? And all the crap Microsoft pull with hungarian notation in a god dam typed language
<rlb>civodul wingo: if/when you have time, wondering if you feel like this (in general) is desirable - https://lists.gnu.org/archive/html/guile-devel/2025-06/msg00000.html (support for SRFI-64 based test-suite tests, so we can (more) easily add upstream srfi suites).