
@willghatch in rash, it seems I cannot do (define foo "ls -l") (rash foo)
. Is there another way of achieving this?

@pocmatos you can’t force a specific version because there aren’t versions - each package name in the package catalog maps to one implementation at a given point in time. You’d have to pick a git commit of the package repo and install the git url for that commit.

@notjack but you can say in info.rkt
: (define deps '(["rash" #:version "0.1"]))
, what’s that about then?

@pocmatos a package name maps to one source, and a package source can say what version it is. When you use #:version
in a dependency list it’s a minimum version and the package installer will raise an error if the source it found for the dependency says it’s version is lower. It doesn’t change what implementation of the package is actually installed. It’s mostly meant as an assertion to get more user-friendly errors when installing packages.

Any ZeroMQ users out there? Just wondering if one package more canonical…

I saw a behavior with peek-bytes
which puzzles me. If I use peek-bytes
to examine a file that’s say 50 bytes long; assuming a valid input-port to that file in
calling (peek-bytes 1 60 in)
for the first time will produce #""
not #<eof>
which is what I was expecting. Calling (peek-bytes 1 60 in)
again for second time will produce #<eof>
and subsequent calls will continue to produce #<eof>
just not the first time it’s invoked. That seems weird to me, I’d have thought the first time would produce #<eof>
not an empty byte string.

If I have (define buffer (make-bytes 50 5))
and (define in (open-input-bytes buffer))
then (peek-bytes 1 60 in)
will produce #<eof>
the first time so to me the behavior with the file input port is inconsistent.

@abmclin I agree that the #""
result seems wrong. (As it happens, Racket-on-Chez produces #<eof>
.)

@mflatt ok shall I file an issue ticket in the github repo?

Yes, that would be helpful