Posts by fosskers@emacs.ch
(DIR) Post #AYwwbhoIrXJaoJnbdI by fosskers@emacs.ch
2023-08-21T01:37:08Z
0 likes, 1 repeats
Turns out that by pre-serializing the JSON data for every possible package the user could request, I was able to double my server's throughput:https://git.sr.ht/~fosskers/faur/commit/colin/common-lisp#commonlisp
(DIR) Post #AYwwbjZ8KuMwFqiWGW by fosskers@emacs.ch
2023-08-21T01:39:56Z
0 likes, 0 repeats
For a simple package name lookup, I'm processing about 2k requests per second on a 4-core machine (when the thing doing the stress test is also running on the same machine). 2k requests per second is probably well well above what this server will ever realistically see, so I probably don't need to optimize further.
(DIR) Post #AZ1bA4fj8wT2MLZQjw by fosskers@emacs.ch
2023-08-22T01:37:37Z
1 likes, 0 repeats
@civodul I've been using the Rust implementation for two years or so, it's great.
(DIR) Post #AZ2OwQ9lSm6Ae8IrVw by fosskers@emacs.ch
2023-08-23T23:35:11Z
0 likes, 0 repeats
@louis I hope it stays casual and doesn't get too big.
(DIR) Post #AZ7SsORnFNl9nHs2jI by fosskers@emacs.ch
2023-08-26T10:12:49Z
0 likes, 0 repeats
@louis Going through "Design in Practice" again and then making progress with Transducers.
(DIR) Post #AZBMCa1I0ZWMQjzZLs by fosskers@emacs.ch
2023-08-28T02:23:55Z
0 likes, 0 repeats
If you have ecl installed and a moment to spare, could you try:(ql:quickload :slynk)as well as tell me the result of:gcc --versionPlease and thank you ๐ #commonlisp
(DIR) Post #AZiy675EehCpYjmvcO by fosskers@emacs.ch
2023-09-13T12:14:49Z
0 likes, 0 repeats
Is there truly no generalized way to iterate over an #emacslisp hash-table than maphash? What if I don't want to iterate over all the elments? What if I want to drive the iteration myself?
(DIR) Post #AZiyhTLcq8RXKFGihs by fosskers@emacs.ch
2023-09-13T12:33:43Z
0 likes, 0 repeats
@louis This is for my #emacslisp port of Transducers though. CL has with-hash-table-iterator which makes this easy, since I can drive the iteration myself and stop when I want, but I don't see an analog in Elisp.
(DIR) Post #AZlvs1XGWcwj2eVdFw by fosskers@emacs.ch
2023-09-14T22:46:09Z
0 likes, 0 repeats
@louis Evil, but plausible.
(DIR) Post #AZmAkbukssyUrfQ4Dg by fosskers@emacs.ch
2023-09-15T01:32:52Z
0 likes, 0 repeats
@louis This did the trick: https://git.sr.ht/~fosskers/transducers.el/commit/9edd7f76e51f58b231b4524c37c113c7a0d99817#transducers.el-4-15
(DIR) Post #AZmhB2FQnRzAbBjbeK by fosskers@emacs.ch
2023-09-15T02:03:16Z
0 likes, 1 repeats
What's your #shell ?
(DIR) Post #AZztswls5GqK8jaBLE by fosskers@emacs.ch
2023-09-21T16:29:52Z
0 likes, 0 repeats
@louis Do you kneel on it?
(DIR) Post #Aa5kSlhisHn5eFqOEi by fosskers@emacs.ch
2023-09-24T11:55:59Z
0 likes, 0 repeats
I am calling the Faur done for now. Now to actually get #aura 4 out the door. #archlinux https://git.sr.ht/~fosskers/faur
(DIR) Post #Aa5kSmX7nAuKDftRM8 by fosskers@emacs.ch
2023-09-24T12:01:02Z
0 likes, 0 repeats
I had experimentally rewritten a large chunk of it in #commonlisp to see how it compared to #clojure . Takeaways:The perf of both SBCL and Clojure was more than sufficient to handle the amount of load I expect the server to get.woo for CL is very fast but doesn't support HTTPS out of the box (yet). I would have had to put nginx in front of it, but with the Clojure already working (and with HTTPS support), I felt fine to stop there.Clojure's concurrent atom is just way too convenient.I'll do my next server project in CL. For now Faur will stay in Clojure.
(DIR) Post #Aa5kbXvhSQCrX8ZEY4 by fosskers@emacs.ch
2023-09-24T12:01:38Z
0 likes, 0 repeats
@cxxxr You ใใฃใจ drink ใใชใใจ no good ใงใ๏ผ
(DIR) Post #Aa5kpjlWFUwYIOZWr2 by fosskers@emacs.ch
2023-09-24T12:16:44Z
0 likes, 0 repeats
@galdor That's mostly offloaded to Woo in this case. But yeah Clojure also makes basic concurrent stuff extremely simple.
(DIR) Post #Aa5kumtU2qIFRjhoDw by fosskers@emacs.ch
2023-09-24T12:17:38Z
0 likes, 0 repeats
@louis @cxxxr It's my second language, I live in Tokyo.
(DIR) Post #Ac3CQc7xi5GM03qigK by fosskers@emacs.ch
2023-11-22T02:25:58Z
0 likes, 0 repeats
@galdor I was surprised by:While this property allows implementations to handle structures in a more efficient way than classes, it makes structures unsuitable for incremental development. As such, they should only be used as a last resort, when a regular class has been proved to be a performance bottleneck.
(DIR) Post #Ac41sVOrPZ2GuDoJIO by fosskers@emacs.ch
2023-11-22T12:02:27Z
0 likes, 0 repeats
@galdor Both! I've always reached first for structs (out of mistrust of the greater OO system). But I am admittedly not a CL expert.
(DIR) Post #AdS9oE3FluRuMUQTeC by fosskers@emacs.ch
2024-01-03T01:16:17Z
0 likes, 2 repeats
Hey #commonlisp folks, I put together a Sly extension that enables evaluation overlays for CL in the spirit of CIDER and EROS. Check it out!https://git.sr.ht/~fosskers/sly-overlay