<sepi>
,{input-int . => . month} is this equivalent to ,(=> input-int month) ?
<bremner>
sepi: I don't _think_ that's related to quasiquote
lockywolf__ has quit [Ping timeout: 240 seconds]
<bremner>
rudybot: eval (1 . <= . 3)
<sepi>
hmm, is it just an infix operatzor?
<rudybot>
bremner: error: with-limit: out of time
<bremner>
rudybot: init
<rudybot>
bremner: your sandbox is ready
<bremner>
rudybot: eval (1 . <= . 3)
<rudybot>
bremner: ; Value: #t
<bremner>
sepi: short answer, yes ^
<sepi>
what do the dots do?
<bremner>
they make the infix operation happen
<bremner>
rudybot: (1 . 2 . 3)
<rudybot>
bremner: error: application: not a procedure; <NEWLINE> expected a procedure that can be applied to arguments <NEWLINE> given: 2 <NEWLINE> arguments...: <NEWLINE> 1 <NEWLINE> 3
<bremner>
rudybot: '(1 . 2 . 3)
<rudybot>
bremner: ; Value: '(2 1 3)
<bremner>
sepi: it's really just a feature of the list reader ^
<sepi>
hmm, confusing :) I know about dotted pairs but didn't know about this
<bremner>
I didn't understand it until just now, despite blindly cargo culting expressions
<sepi>
I still don't get the idea behind '(1 . 2 . 3) evaluating to '(2 1 3)
<sepi>
and it only works with 2 or 3 dots
<bremner>
rudybot: '(1 . 2 . 3 . 4)
<rudybot>
bremner: 3,2,1 aren't conventional prefixes like 4 and 5
<bremner>
rudybot: eval '(1 . 2 . 3 . 4)
<rudybot>
bremner: error: eval:1:12: read: illegal use of `.'
<bremner>
rudybot: eval '(1 . 2 . 3 4 5)
<rudybot>
bremner: ; Value: '(2 1 3 4 5)
<sepi>
In any case I find the formlets documentation should either not use this feature or at least explain it a bit or point to some explanation
<bremner>
yeah, I guess its just to move the second element into application position
<bremner>
sepi: sure, I expect a github issue explaining this would be welcome
<sepi>
so the curly braces don't do anything special then?
<sepi>
I'll look into filing one
<bremner>
not in general in racket. That should be explained in the beginner docs (i.e. the guide)
<bremner>
rudybot: eval {+ 1 2}
<rudybot>
bremner: ; Value: 3
<sepi>
I remember this about square brackets but didn't see any curly braces until now. So when I did some research I stumbled upon some SRFI about infix so I imained it would have something to do with that
catonano has joined #racket
<sepi>
bremner: Thanks for your help!
<bremner>
no problem.
<sepi>
ah, one last question: do you know if formlets allow you to directly map values from the form into structs?
AMDphreak has quit [Read error: Connection reset by peer]
<bremner>
Sorry, I don't know anything about formlets specifically
AMDphreak has joined #racket
<sepi>
I've seen examples of mapping into values and lists
<sepi>
ok, np
<sepi>
thx!
catonano has quit [Read error: Connection reset by peer]
AMDphreak has quit [Read error: Connection reset by peer]
AMDphreak has joined #racket
<bremner>
Huh. You are right, square brackets are discussed in the guide, but curly braces seem only to be discussed in the reference manual.
<sepi>
Is there a generic -> string conversion function in racket or should I just use (with-output-to-string (lambda () (write value)))?
Naptra has quit [Quit: Leaving]
ChanServ has quit [shutting down]
<bremner>
rudybot: (~a 1+7i)
<rudybot>
bremner: ; Value: "1+7i"
<bremner>
sepi: ~a should be a shorter version of that
AMDphreak has quit [Ping timeout: 260 seconds]
aeth has quit [Read error: Connection reset by peer]
ChanServ has joined #racket
AMDphreak has joined #racket
ChanServ has quit [*.net *.split]
<sepi>
thx!
ChanServ has joined #racket
nikita` has joined #racket
AMD_phreak has joined #racket
AMD_phreak has quit [Read error: Connection reset by peer]
AMD_phreak has joined #racket
<sepi>
What's a reliable way to get the path of the directory where the current racket files resides in?
AMDphreak has quit [Ping timeout: 260 seconds]
<bremner>
In the special case of "require", you can just use relative paths. Otherwise I don't know offhand.
<sepi>
It's for writing files. I just use the home directory for now. What I want is a pita in every language I tried until now :)
catonano has joined #racket
wingsorc has joined #racket
AMDphreak has joined #racket
sepi has quit [Ping timeout: 240 seconds]
AMD_phreak has quit [Ping timeout: 260 seconds]
catonano has quit [Quit: catonano]
catonano has joined #racket
AMDphreak has quit [Read error: Connection reset by peer]
AMDphreak has joined #racket
AMDphreak has quit [Read error: Connection reset by peer]
AMDphreak has joined #racket
lavaflow has joined #racket
lockywolf has joined #racket
lockywolf has quit [Remote host closed the connection]
catonano has quit [Quit: catonano]
catonano has joined #racket
catonano has quit [Read error: Connection reset by peer]
AMD_phreak has joined #racket
catonano has joined #racket
AMDphreak has quit [Ping timeout: 260 seconds]
ArthurStrong has quit [Quit: leaving]
brendyyn has quit [Ping timeout: 240 seconds]
AMDphreak has joined #racket
AMD_phreak has quit [Ping timeout: 260 seconds]
wingsorc has quit [Quit: Leaving]
AMD_phreak has joined #racket
AMD_phreak has quit [Read error: Connection reset by peer]
AMDphreak has quit [Ping timeout: 260 seconds]
AMDphreak has joined #racket
even4void has joined #racket
wingsorc has joined #racket
even4void has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
AMD_phreak has joined #racket
AMD_phreak has quit [Read error: Connection reset by peer]
AMD_phreak has joined #racket
rmnull has joined #racket
AMDphreak has quit [Ping timeout: 260 seconds]
nebunez has joined #racket
AMDphreak has joined #racket
AMD_phreak has quit [Ping timeout: 260 seconds]
true-grue has joined #racket
AMD_phreak has joined #racket
AMD_phreak has quit [Read error: Connection reset by peer]
AMD_phreak has joined #racket
AMDphreak has quit [Ping timeout: 260 seconds]
srandon111 has quit [Quit: leaving]
AMDphreak has joined #racket
AMD_phreak has quit [Ping timeout: 260 seconds]
libertyprime has quit [Ping timeout: 256 seconds]
even4void has joined #racket
pilne has joined #racket
even4void has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
AMD_phreak has joined #racket
AMDphreak has quit [Ping timeout: 260 seconds]
<jcowan>
rudybot: init
<rudybot>
jcowan: your sandbox is ready
<jcowan>
rudybot: eval (1 . + . 2 . + . 3)
<rudybot>
jcowan: error: eval:1:11: read: illegal use of `.'
<jcowan>
bummer
<jcowan>
that should just work
<samth>
jcowan: it's much less sophisticated than you're thinking
nebunez has quit [Ping timeout: 260 seconds]
<jcowan>
Fair enough, it's not a feature I personally care about in any case.
AMDphreak has joined #racket
AMDphreak has quit [Read error: Connection reset by peer]
AMDphreak has joined #racket
AMD_phreak has quit [Ping timeout: 260 seconds]
catonano has quit [Read error: Connection reset by peer]
catonano has joined #racket
aeth has joined #racket
<aeth>
Why does this channel kick unregistered users instead of merely not letting them speak? I got kicked from the channel (or, rather, prevented from rejoining) because I reconnected about 8 seconds before services reconnected, even though my IRC client is properly configured to identify in the process of joining via SSL and so should "in theory" have no concurrency issues with not being identified before joining.
AMD_phreak has joined #racket
AMD_phreak has quit [Read error: Connection reset by peer]
AMD_phreak has joined #racket
AMDphreak has quit [Ping timeout: 260 seconds]
AMDphreak has joined #racket
AMD_phreak has quit [Ping timeout: 260 seconds]
Sgeo_ has joined #racket
Sgeo has quit [Ping timeout: 264 seconds]
<jcowan>
aeth: "Nobody knows, nobody cares"
catonano has quit [Quit: catonano]
tilpner has quit [Quit: tilpner]
tilpner has joined #racket
AMD_phreak has joined #racket
AMD_phreak has quit [Read error: Connection reset by peer]
AMD_phreak has joined #racket
AMDphreak has quit [Ping timeout: 260 seconds]
catonano has joined #racket
tilpner has quit [Quit: tilpner]
catonano has quit [Read error: Connection reset by peer]
tilpner has joined #racket
true-grue has quit [Read error: Connection reset by peer]
<bremner>
aeth: I doubt it's channel specific. You could ask in #freenode, there might be someone there who understands the services setup
<aeth>
bremner: The problem is that +r is prone to race condition issues where a client reconnecting *and identified* can attempt to join a channel before actually identified, and then fail.
<aeth>
Perhaps the best solution is a client aware of +r's flaws that can e.g. retry every 10 seconds or something