
OMG Researching how to make my scribble output look nicer (font-wise) I just ran into a Copyright 1989–1992 Bitstream Inc Cambridge MA line in manual-fonts.css which brings back memories as when I worked at Camex 1988–1991 we worked very closely with Bitstream, half a lifetime ago.

I wanted to add a floppy disk reaction but Slack only has the not-floppy floppy disk icon :floppy_disk: so I am disappoint.

You’d have been met with a punchcard reaction :wink:

It was a bit tricky to find the soft floppy icon. Now, how do we make them into slack emojis?

Nice! In the web interface, when you click on the emoji symbol, there should be a “Add emoji” button at the bottom

the punchcard one isn’t great as an emoji

True. The holes become too small.

Did some digging; (Dali)[https://pkgs.racket-lang.org/package/dali] is the template engine that supports ‘Moustache’/‘handlebars’ simple text templating for semantic templates (I think this means named tags in the generated html, as opposed to using <div> for everything) I may be misunderstanding but I think the USP of scaffold is the ‘planks’ that are already configured to let you automate a wide variety of package components.
I think the Dali template engine might become more valuable in a RacketScript context as javascript templating seems to be the place where handlebars/ moustache is used. (I’m not sure as this is way out of my wheelhouse)

I seen mmm to recall someone doing some kind of work/package/paper that involved embedding/translating redex languages/judgments/etc into cur, but I can’t seem to find it. Is that a thing or did I dream it?

I just produced some Scribble output and thought, Oh No, what if I doesn’t look Ok on a mobile phone? But I can relax, it looks great! Whoever figured out that little (or not so little) bit of responsive design, THANK YOU!

> How would you improve it? • how to set %Path% or $PATH • how to uninstall

These are good points. Maybe these would be better in a central place, and the readme would link to them?

Now 17 days have passed and the server is operating as usual, quietly. No more 100% CPU. I did not get far into reproducing the problem precisely, but @badkins’s idea of using nginx to handle SSL seems to have eliminated the problem. Thank you, @badkins and @samth for kindly leading me up to a solution that lets me sleep much better.

By the way, Brian, I implemented the load balancing in another server — and it’s working very nicely. I added an HTTP header to identify which server has answered and so I can see that it gets distributed. I’m gonna think of a way to severely hit the server and measure the performance. Thank you so much for the help!

This stuff is already on ‘how to get started’ in the wiki

@laurent.orseau there’s no “Add Emoji” in the web interface?

Web interface ? (Not mobile)

Ohhh, I misread your comment. You said “there should be”

Maybe try another browser

I’m not sorry the punchcard emoji didn’t work. Maybe papertape… I missed punchcards, but just barely. Our PDP–8 bootstrap loader was via papertape on a teletype. You toggled in 70 or so instructions (70 x 12bit words) on the front panel, that started the paper tape reader, which loaded enough code to get the magtape reader going, and that’s what really loaded the OS. Except our genius fellow high school student Phil Chou (who went on to Princeton and is now at Microsoft Research) reduced that 70 word sequence down to about 10, which we then memorized. That was one of the greatest hacks I have ever witnessed. If some day I ever end up in a nursing home murmuring mysterious octal sequences and nothing else, you’ll know why.


@ryanc This code works:
(require syntax/parse/define
(for-syntax syntax/stx))
(begin-for-syntax
(define-syntax-class pat
(pattern x:expr #:fail-when (stx-list? #'x) "expect non-list")))
(define-simple-macro (test :pat)
1)
;; (test 1) should be OK
;; (test ()) should error
But initially, I wrote it as:
(begin-for-syntax
(define-syntax-class pat
(pattern (~! _ ...) #:fail-when #t "expect non-list")
(pattern :expr)))
(define-simple-macro (test :pat)
1)
and somehow it’s not OK. In particular, (test 1)
fails with the error expected pat
. Do you know why?

Hmm. Even
(begin-for-syntax
(define-syntax-class pat
(pattern (~! _ ...))
(pattern :expr)))
doesn’t work on (test 1)
either. I must be misunderstanding how the cut operator works.

Very similar. Let me find an actual picture of our computer (high school computer club, 1970s) …

Here’s our club computer in 1978. Spock is the name we gave the computer, that’s my artwork at the top. My classmate Bill Cattey was the hardware guy and went to MIT. (He’s now at Akamai.) By 1978 we had upgraded from 4 teletypes to two or more ADM–3a CRT terminals. I remember the sheer wonder of seeing characters display on the screen without having to wait for the teletype, and also … lowercase letters! That was just magical. Bill, by the way, in 1975 could “speak modem” back when we were using acoustic couplers and the speed was only 110 baud. Once we got 300 baud modems he couldn’t keep up. He literally could make screeching noises into the telephone handset and the correct characters would come out on the teletype on the other side. A few years ago I downloaded the app Cathode https://www.jwz.org/blog/2011/01/cathode-vintage-terminal-emulator/ so I could feel again for a few minutes what it was like in the late 1970s with the newest (!) wizbang CRT terminals.

Great story! What’s the magic number on the machine?

I was just trying to remember that. We did everything in octal. It makes sense if I change 05 to 06. Bill’s a great guy. I think he was having a laugh at the censors.

Also, what happened to atom?
I see it’s only available in package heresy
now. Where did it go?

atom?
has never been provided by racket

It must be somewhere in Scheme’s history? :slightly_smiling_face:

How do Racketeers tell something is not a s-exp? Or however the language should be here? Compound expression?

I think “not an s-exp” is not a well-defined concept in Racket

What’s #s(foo 1 2)
? Or #hash()
? Or a regular struct?

Good point. I probably don’t know what I’m talking about. (I would be inclined to say #hash() is an atom, but I think that would be strange. But this is what I would say — something not built out of a list that the usual syntax ’(a b c …)).

So I guess I’m saying atom? is equivalent to (not (cons? ...))

That is indeed the traditional definition, but I don’t think it’s that useful to have a built-in name for (compose not cons?)
and I definitely don’t think that calling vectors, procedures, hash tables, and structs “atoms” is good terminology.

hi @spdegabrielle I made a tiny slideshow / ppict repo — can you add this to racket-templates? https://github.com/bennn/ppict-slideshow-template

That reminds me — I really want a combination of slide
and ppict
where I get the normal slideshow behavior and then can just use #:go
whenever I want.

@ben great idea for the template project!