Re: [racket-users] syntax woe with typed Racket 'let'

2020-06-01 Thread Hendrik Boom
On Mon, Jun 01, 2020 at 10:28:55PM -0500, Shu-Hung You wrote: > FWIW, because `.` is just cons, the program > (define (F [X : T1] . [Y : T2]) 'e) > is being read as: > (define (F [X : T1] Y : T2) 'e) > I guess that's the reason for having an extra '*' in the syntax. Indeed. It works for

Re: [racket-users] syntax woe with typed Racket 'let'

2020-06-01 Thread Shu-Hung You
FWIW, because `.` is just cons, the program (define (F [X : T1] . [Y : T2]) 'e) is being read as: (define (F [X : T1] Y : T2) 'e) I guess that's the reason for having an extra '*' in the syntax. On Mon, Jun 1, 2020 at 10:16 PM Sam Tobin-Hochstadt wrote: > > The syntax looks like this: >

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread George Neuner
On 6/1/2020 4:21 PM, Bogdan Popa wrote: George Neuner writes: > But Python's DB pool is threaded, and Python's threads are core > limited by the GIL in all the major implementations (excepting > Jython). Python's Postgres pooling does not[1] use POSIX threads under the hood to manage the

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread Brian Adkins
I may look into this in more detail later, but I ran a simple benchmark comparison on my modest AWS EC2 server (ApacheBench can behave poorly on MacOS). 1) I ran ApacheBench w/ 6 processes to fetch a simple "hello world" static html file using only nginx. I got roughly 650 requests per second.

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread Bogdan Popa
George Neuner writes: > But Python's DB pool is threaded, and Python's threads are core > limited by the GIL in all the major implementations (excepting > Jython). Python's Postgres pooling does not[1] use POSIX threads under the hood to manage the connections if that's what you mean, nor is

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread George Neuner
On 6/1/2020 3:40 PM, Sam Tobin-Hochstadt wrote: I'm skeptical both of the DB explanation and the multi-core explanation. As you say, the difference between something like Django and Racket is much too large to be explained by that. For example, on the "plaintext" benchmark, Racket serves about

Re: [racket-users] Some stuff about "case".

2020-06-01 Thread Jon Zeppieri
On Mon, Jun 1, 2020 at 3:52 PM Jens Axel Søgaard wrote: > > Den man. 1. jun. 2020 kl. 20.53 skrev Christopher Lemmer Webber > : > > > I think `case` were more important before `match` arrived. > If you want to see how `case` can be implemented without hash-tables, look at > William D Clinger's

Re: [racket-users] Some stuff about "case".

2020-06-01 Thread Jens Axel Søgaard
Den man. 1. jun. 2020 kl. 20.53 skrev Christopher Lemmer Webber < cweb...@dustycloud.org>: > As I started typing this email and looking into the definition of case, > I realized my assumptions are wrong. > > What I needed: something like case which dispatches on symbols, except > not auto-quoting

Re: [racket-users] syntax woe with typed Racket 'let'

2020-06-01 Thread Sam Tobin-Hochstadt
The syntax looks like this: (define (f [x : Number] . [y : String *]) : Number (+ x (length y))) See the documentation for `define` in Typed Racket here:

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread Sam Tobin-Hochstadt
I'm skeptical both of the DB explanation and the multi-core explanation. As you say, the difference between something like Django and Racket is much too large to be explained by that. For example, on the "plaintext" benchmark, Racket serves about 700 req/sec (I get similar results on my machine).

Re: [racket-users] syntax woe with typed Racket 'let'

2020-06-01 Thread Hendrik Boom
On Mon, Jun 01, 2020 at 10:58:09AM -0400, Sam Tobin-Hochstadt wrote: > Do you perhaps have some other binding shadowing the binding of `:` > from Typed Racket? That produces the error message you get when I try > it. Not intentionally. I'll have to look carefully for possible candidates. Or ask

[racket-users] Re: Some stuff about "case".

2020-06-01 Thread Christopher Lemmer Webber
Except maybe for one thing: I wonder if the version of case defined here is written in such a way that is smart in that it never has to make said hash table / alist more than once, at compile time. I'm guessing so? Christopher Lemmer Webber writes: > As I started typing this email and looking

[racket-users] Some stuff about "case".

2020-06-01 Thread Christopher Lemmer Webber
As I started typing this email and looking into the definition of case, I realized my assumptions are wrong. What I needed: something like case which dispatches on symbols, except not auto-quoting the arguments... I needed to evaluate them from the lexical environment. So: (let ([x 'foo])

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread George Neuner
On 6/1/2020 1:40 PM, Bogdan Popa wrote: I replied earlier today off of my Phone, but, for whatever reason (caught in the moderation queue?), it's not showing up in this thread. Here's what it said: The reason for poor performance relative to the other langs/frameworks is that there

[racket-users] Racket News - Issue 32 is here!

2020-06-01 Thread Paulo Matos
Racket News - Issue 32 is here! No time to wait, go grab a coffee and enjoy! https://racket-news.com/2020/06/racket-news-issue-32.html -- Paulo Matos -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread Bogdan Popa
I replied earlier today off of my Phone, but, for whatever reason (caught in the moderation queue?), it's not showing up in this thread. Here's what it said: The reason for poor performance relative to the other langs/frameworks is that there is currently no easy way to take advantage

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread George Neuner
On 6/1/2020 11:12 AM, Sam Tobin-Hochstadt wrote: I think the biggest thing is that no one has looked at optimizing these benchmarks in Racket. If you tried out running one of these benchmarks and ran the profiler it would probably show something interesting. Sam The code[1] itself isn't bad. 

Re: [racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread Sam Tobin-Hochstadt
I think the biggest thing is that no one has looked at optimizing these benchmarks in Racket. If you tried out running one of these benchmarks and ran the profiler it would probably show something interesting. Sam On Mon, Jun 1, 2020 at 6:43 AM hashim muqtadir wrote: > > A new version of these

Re: [racket-users] syntax woe with typed Racket 'let'

2020-06-01 Thread Sam Tobin-Hochstadt
Do you perhaps have some other binding shadowing the binding of `:` from Typed Racket? That produces the error message you get when I try it. Sam On Sat, May 30, 2020 at 1:32 PM Hendrik Boom wrote: > > I'm sorry to keep pestering this list, but I'm out of my depth with the > detailed syntax

Re: [racket-users] "is not in my domain"

2020-06-01 Thread Ben Greenman
On 5/29/20, Beatriz Moreira wrote: > > > Hi, im a beginner with racket and im using it to implement a language in > order to test its operational semantic rules. > > This is the function where i keep having the error: > > (define-metafunction FS > > call : env-ß classes address f ((x v)...) -> e

[racket-users] Re: [racket] Web Framework Benchmarks

2020-06-01 Thread hashim muqtadir
A new version of these benchmarks was just published ("Round 19"): https://www.techempower.com/benchmarks/#section=data-r19 Racket scores rather poorly (0 errors is nice, though). Anybody has any guesses as to why this is? Racket performs well enough as far as I'm concerned, and while I don't

Re: [racket-users] Re: GUI executable creating an annoying command line window

2020-06-01 Thread Philip Benade
Hi Andre This was 100% caused by using an outdated version of DrRacket. In my case the terminal window was just empty, no messages. It seems that If any of your code produces an output in the REPL window of DrRacket that will cause the terminal window to show. Regards Philip On Monday, 1