Re: [racket-users] cons-specific optimizations?

2018-11-27 Thread Matthew Flatt
Pairs are special in both traditional Racket and Chez Scheme. In the traditional Racket implementation, every allocated object has a 16-bit tag, and one of those is "pair". For a structure, the tag is "structure", and then there's another word for the structure type. So, the test for a pair is fas

Re: [racket-users] cons-specific optimizations?

2018-11-27 Thread Vishesh Yadav
I recall reading some 6.x code for RacketScript, and in 6.x world pair was simply a pair of pointers in C structure[1] and `cons` was again a primitive function that created those C objects[2]. No special representation in byte-code [all values are opaque to bytecode (except ints and floats I think

[racket-users] cons-specific optimizations?

2018-11-27 Thread Milo Turner
Hello all, There's something I have been very curious of lately, about low level aspects of Racket's compiler. First of all, I have always considered "cons" to be essentially the same as a struct: (struct cons [hd tl] #:transparent) (define car (procedure-rename cons-hd 'car)) (define cdr (proc

Re: [racket-users] Loggers that don't prepend?

2018-11-27 Thread David Storrs
Cool, thanks! On Mon, Nov 26, 2018 at 11:20 PM Greg Hendershott wrote: > make-log-receiver returns a synchronizable event; you start a thread > to loop and sync on that. Formatting and disposition is up to you. > > 1. Example from XREPL, displaying to stdout with `;` comment chars > prepended: >

[racket-users] racket-money email list

2018-11-27 Thread Neil Van Dyke
If you recently tried to join the `racket-money` email list, by posting an introduction like "https://www.neilvandyke.org/racket-money/"; said, but you received an error email from Google Groups, could you please try again now? (Sorry; I broke something with the list settings recently, but it

[racket-users] embedded api docs and the `doc` submodule

2018-11-27 Thread Neil Van Dyke
What do people think about the following way of providing Scribble API documentation from a module? * The Scribble documentation for a package comes from a combination of the package's `info` module and inline documentation from one or modules that make up the package. * The exact form of in

Re: [racket-users] Multiple places listening to a TCP port [was: Racket application servers]

2018-11-27 Thread Matthias Felleisen
FWIW, when I started CS in 1980 at Arizona, Griswold had moved on to Icon and no longer seemed to care about Snobol. He definitely thought of Icon as an improvement over Snobol the way Racket improves on Scheme. — Matthias > On Nov 26, 2018, at 9:59 PM, George Neuner wrote: > > > On 11