samth changed the topic of #racket to: Racket v7.7 has been released: https://blog.racket-lang.org/2020/05/racket-v7-7.html -- Racket -- https://racket-lang.org -- https://pkgs.racket-lang.org -- Paste at http://pasterack.org
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #racket
SGASAU has quit [Remote host closed the connection]
catonano_ has joined #racket
catonano has quit [Ping timeout: 260 seconds]
catonano_ is now known as catonano
libertyprime has joined #racket
SGASAU has joined #racket
KindTwo has joined #racket
KindOne has quit [Ping timeout: 272 seconds]
KindTwo is now known as KindOne
orivej has quit [Ping timeout: 260 seconds]
corpix has joined #racket
libertyprime has quit [Read error: Connection reset by peer]
libertyprime has joined #racket
k_sze has left #racket ["Leaving"]
KindOne has quit [Ping timeout: 260 seconds]
KindOne has joined #racket
KindTwo has joined #racket
KindOne has quit [Ping timeout: 272 seconds]
KindTwo is now known as KindOne
nebunez has quit [Ping timeout: 256 seconds]
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #racket
_whitelogger has joined #racket
lbeckman314 has quit [Ping timeout: 252 seconds]
dddddd has quit [Ping timeout: 265 seconds]
libertyprime has quit [Ping timeout: 240 seconds]
sauvin has joined #racket
narimiran has joined #racket
rgherdt has joined #racket
SGASAU has quit [Remote host closed the connection]
SGASAU has joined #racket
Lowl3v3l has quit [Quit: Leaving.]
orivej has joined #racket
tlcu has joined #racket
sz0 has joined #racket
Sgeo has quit [Read error: Connection reset by peer]
lockywolf has joined #racket
corpix has quit [Write error: Connection reset by peer]
cantstanya has quit [Read error: Connection reset by peer]
corpix has joined #racket
lockywolf has quit [Remote host closed the connection]
lockywolf has joined #racket
cantstanya has joined #racket
SGASAU has quit [Ping timeout: 256 seconds]
<dzoe> Hmhm, interesting.
<dzoe> (when (fl< a (flvector-ref flv off)) (flvector-set! flv off a))
<dzoe> I know this isn't atomic at all.
<dzoe> But, is it technically possible that there will be a flvector-set! from another future before this flvector set, given that all futures use this exact code?
<dzoe> Sigh... yes, there is and pretty common in this workload.
<dzoe> So another one - are 2M fsemaphores a good idea? :)
SGASAU has joined #racket
SGASAU has quit [Ping timeout: 260 seconds]
orivej has quit [Ping timeout: 264 seconds]
orivej has joined #racket
zmt01 has joined #racket
zmt00 has quit [Ping timeout: 260 seconds]
orivej_ has joined #racket
orivej has quit [Ping timeout: 256 seconds]
rgherdt has quit [Ping timeout: 256 seconds]
orivej_ has quit [Ping timeout: 256 seconds]
orivej has joined #racket
rgherdt has joined #racket
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #racket
lockywolf_ has joined #racket
lockywolf has quit [Ping timeout: 240 seconds]
orivej has quit [Ping timeout: 272 seconds]
orivej has joined #racket
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
lockywolf_ has quit [Ping timeout: 256 seconds]
SGASAU has joined #racket
catonano_ has joined #racket
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #racket
tlcu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
catonano has quit [Ping timeout: 256 seconds]
catonano_ is now known as catonano
tlcu has joined #racket
dddddd has joined #racket
narimiran has quit [Quit: leaving]
tlcu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
libertyprime has joined #racket
TCZ has joined #racket
orivej has quit [Ping timeout: 258 seconds]
orivej has joined #racket
iyzsong has joined #racket
catonano has quit [Quit: catonano]
orivej has quit [Ping timeout: 272 seconds]
SGASAU has quit [Remote host closed the connection]
orivej_ has joined #racket
tilpner has quit [Quit: tilpner]
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
_whitelogger has joined #racket
true-grue has joined #racket
libertyprime has quit [Ping timeout: 256 seconds]
lockywolf has joined #racket
real-grue has joined #racket
tilpner has joined #racket
tlcu has joined #racket
true-grue has quit [Ping timeout: 258 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
srji has quit [Ping timeout: 265 seconds]
orivej has joined #racket
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #racket
tom98 has joined #racket
<tom98> Hello! Looking at picking up racket, coming from common lisp - does racket function similarly to lisp, with a live image that I can interact with?
<tom98> All the introductions seem to come from a 'write your program -> run your program' standpoint
<tom98> If my program is running, and I want to change a function definition, can I do that? (if so, how?)
lockywolf_ has joined #racket
lockywolf_ has quit [Remote host closed the connection]
lockywolf_ has joined #racket
lockywolf_ has quit [Max SendQ exceeded]
lockywolf has quit [Ping timeout: 256 seconds]
lockywolf_ has joined #racket
lockywolf_ has quit [Remote host closed the connection]
lockywolf_ has joined #racket
lockywolf_ has quit [Max SendQ exceeded]
lockywolf_ has joined #racket
<jboy> is this one of those moments where it's appropriate to say "the toplevel is hopeless"?
<tom98> ?
<tom98> are you replying to me? Does this mean you can't redefine stuff during program runtime?
<dzoe> jboy: I think so :)
<dzoe> tom98: you can redefine stuff during program runtime, there is eval, there is top-level define (...) and whatever.
<bremner> jboy: only with a link
<dzoe> Probably the question is what environment you want to use.
<bremner> tom98: the racket REPL is never going to be as dynamic as the common lisp one, by design.
<dzoe> You can technically run your program in a REPL (or use similar techniques) and modify whatever you want.
<tom98> Okay, maybe a better question is: is racket intended to be used via an image, where you redefine stuff into the image
<dzoe> But things are more strict - mostly with the goal to avoid things that ... can be avoided :)
<dzoe> Intended - no.
<tom98> or is it a more 'traditional' write program -> run program loop
<tom98> Ok
<bremner> tom98: no, it's not intended to be used via an image
<tom98> ok that's cool
<tom98> quick bonus question: how does package management work? does raco pkg install install to some global storage?
<bremner> it can. Although most people use the per user option
<bremner> I install into /usr/local, it works fine
<tom98> Ok, is it 'version safe'?
<bremner> what does 'version safe' mean?
<tom98> If I install X package, develop my project, then I develop another project which requires a different version of X, what happens here
<bremner> that doesn't sound safe to me ;)
<tom98> ?
<bremner> It isn't like npm with per-project package installation, afaik
<tom98> is there a way to specify what version of a package I want to install?
<tom98> or, a way to specify 'hey this project requires X, Y, Z dependencies at these versions'?
<tom98> regardless of whether it installs them in the project directory
<bremner> I have never tried. There are extreme measures, like forking and renaming the package.
<tom98> Ok i see
<tom98> How are dependencies specified in a package? If i install X package and that depends on Y package, do I need to install Y manually?
<bremner> others might know more. There has been a fair amount of discussion on the racket-users mailing list (google group) lately, you could read that
<bremner> no, dependencies are automatically installed, if you agree
<tom98> ahh ok, is the package management subject to change?
<bremner> I didn't really follow the discussion
orivej has quit [Ping timeout: 246 seconds]
orivej_ has joined #racket
TCZ has quit [Quit: Leaving]
tlcu has quit [Quit: Textual IRC Client: www.textualapp.com]
<samth> tom98: 1. you don't need to manually install things. 2. you can't have two different versions of a package installed for the same user/version of racket/installation of racket. 3. `raco pkg install` puts files either in a global location for the whole install, or in a user-specific location.
<bremner> fwiw, raco pkg install --scope-dir /usr/local/share/racket/pkgs works OK for me (and I hope it continues to work) if I add appropriate things to /etc/racket/config.rktd
<bremner> It's useful to me to be able to install packages read-only, but not in the OS controlled main location
orivej_ has quit [Ping timeout: 256 seconds]
orivej has joined #racket
<samth> bremner: yes, that works to
<samth> o
lockywolf_ has quit [Ping timeout: 258 seconds]
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #racket
iyzsong has quit [Quit: ZNC 1.7.1 - https://znc.in]
tlcu has joined #racket
rgherdt has quit [Quit: Leaving]
rgherdt_ has joined #racket
rgherdt_ has quit [Remote host closed the connection]
rgherdt has joined #racket
<jboy> tom98: here's a recent piece on package management: https://sagegerard.com/polyglot3-package-nightmare.html
<samth> jboy: tom98: sage is great, but I don't think his opinons are necessarily widely shared
<jboy> maybe
<jboy> https://defn.io/2020/05/03/ann-racksnaps/ is another contribution
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #racket
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
nebunez has joined #racket
SGASAU has joined #racket
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #racket
catonano has joined #racket
dddddd has quit [Ping timeout: 264 seconds]
orivej has quit [Ping timeout: 240 seconds]
orivej_ has joined #racket
SGASAU has quit [Ping timeout: 246 seconds]
Lowl3v3l has joined #racket
SGASAU has joined #racket
KindOne has quit [Ping timeout: 258 seconds]
efm has quit [Ping timeout: 265 seconds]
KindOne has joined #racket
SGASAU has quit [Ping timeout: 256 seconds]
Codaraxis has quit [Remote host closed the connection]
tlcu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Codaraxis has joined #racket
KindTwo has joined #racket
KindOne has quit [Ping timeout: 272 seconds]
KindOne has joined #racket
KindTwo has quit [Ping timeout: 256 seconds]
orivej_ has quit [Ping timeout: 265 seconds]
orivej has joined #racket
tlcu has joined #racket
SGASAU has joined #racket
efm has joined #racket
KindTwo has joined #racket
KindOne has quit [Ping timeout: 272 seconds]
KindTwo is now known as KindOne
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
sauvin has quit [Read error: Connection reset by peer]
catonano has quit [Quit: catonano]
<greghendershott> My $0.02 the latter seems more reasonable and realistic
<greghendershott> Also, I could imagine a simple tool that makes less-cumbersome the pinned SHA mentioned in the footnote.
<greghendershott> e.g. "raco works-on-my-machine-now" => updates you info.rkt deps :)
orivej has quit [Quit: No Ping reply in 180 seconds.]
<greghendershott> A 4th idea is use something like Docker and "never" update the layers that install Racket and your pkg deps. Just update your app source.
<greghendershott> The 3rd and 4th ideas are pretty much different ways of doing the same thing, I think?
orivej has joined #racket
dddddd has joined #racket
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
<jboy> how about option 5: use guix instead?
<samth> jboy: another (easier, in my opinion) approach is multiple installations of racket
ArneBab_ has joined #racket
ArneBab_ has quit [Ping timeout: 252 seconds]
<dzoe> jboy: tried Racket on Guix?
<dzoe> I've got a X1 Carbon here in a drawer under the desk with Guix and although in principle it looks really good, Racket was kind of problematic there.
<dzoe> (In addition to the usual problems with non-free drivers, which severely limit the network connectivity options).
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
efm has quit [Ping timeout: 260 seconds]
nullman has quit [Ping timeout: 260 seconds]
aidalgol has quit [Ping timeout: 272 seconds]
aidalgol has joined #racket
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #racket
<samth> dzoe: yeah, the racket package system makes some assumptions about how systems work that aren't really true on nix/guix, so it's somewhat tricky (or so I hear, I haven't done it)
tlcu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
orivej has quit [Read error: Connection reset by peer]
orivej has joined #racket
SGASAU has quit [Ping timeout: 272 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
orivej has quit [Ping timeout: 265 seconds]
orivej has joined #racket
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
real-grue has quit [Read error: Connection reset by peer]
Sgeo has joined #racket
rgherdt has quit [Quit: Leaving]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #racket
orivej has quit [Ping timeout: 260 seconds]
orivej has joined #racket
FreeFull has quit [Quit: rebooting]
FreeFull has joined #racket