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?
<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 [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.]