
How does raco setup
determine how many cores to use?

I think it uses processor-count
from racket/future
, which itself gets the count from rktio, which gets it from the OS:

awesome, thanks @popa.bogdanp!

FWIW: you might want to use let/ec
instead of let/cc
. It’s more restricted, but fits your use case. More importantly, it’s faster.

I will try to think about how to discover that problem …

what does PLT stands for? programming language something? translation? translator?

(IIRC from what they’ve told us a few times) It used to mean Programming Language Theory group, but then the group grew and the interests too, so only the acronym stayed but not so much the meaning.

I see, thank you for the tip

It doesn’t stand for anything (at least, not when referring to the research group associated with Racket). There are a variety of origin stories of the group name from 25+ years ago.

oh that makes sense.

i saw this in a tutorial (define-syntax (tree-match a-tree stx)
...)
isn’t that wrong?

yeah, probably wrong

I usually parse it as “programming language theory” because, well, close enough

definitely wrong

they might have meant to use define-for-syntax
instead (which creates a compile-time function, not a macro)


I think it’s intended to be a macro

the code snippet is also too wide, heh

oh dang this is that guide to macros the core devs are working on!

Emailed Matthias

i think they should put a link for bug/typo reporting

a visible one

agreed

@cris2000.espinoza677 Here’s the correct code, with a cool trick for easy debugging (note the #''
which returns the quoted code instead #lang racket
(require (for-syntax syntax/parse))
(define-syntax (tree-match stx)
(syntax-parse stx
[(_ a-tree
[(#:null) null-case]
[(#:cons (~var one id) (~var more id)) cons-case]
[(#:number) num-case])
#''(cond
[(null? a-tree) null-case]
[(cons? a-tree)
(define one (first a-tree))
(define more (rest a-tree))
cons-case]
[(number? a-tree) num-case]
[else (error "..., given: ~e" a-tree)])]))
(define (sum a-tree)
(tree-match a-tree
[(#:null) 0]
[(#:cons elem more) (+ (sum elem) (sum more))]
[(#:number) a-tree]))
(sum '(1 (2 3) 4))
Replace #''
with #'
for producing actual code.
The macro expander in DrRacket is also very useful (even more so).

thank you @laurent.orseau

That’s what it usually means when not referring to the Racket-associated research group

https://racket-lang.org/people.html yep it doesnt explicitly says that in this

@chouandrewo has joined the channel

Discussion on the new homepage: https://news.ycombinator.com/item?id=24283478

Wow - a remarkably positive thread. I always expect the worst with the orange site. I am rarely disappointed.

I think it would be an improvement if the message would be changed to “insufficient type information to typecheck. please add more type annotations and check if the form is supported by Typed Racket”

Particularly L33t Technologists?

I never both with it for that reason.