libera/#commonlisp - IRC Chatlog
Search
1:10:35
aeth
I usually use multiple values for that sort of thing if you don't actually want a subsequence, especially for 2D
4:58:35
char[m]
Maybe I could add it. Would you opposed to other extensions in a similar vein for hash-table and vector and so on? They could all share a system.
5:06:58
Bike
char[m]: i have not had much ability to use ctype for what i originally wanted it for (though i'm inching closer to that). if people want to use it to experiment with typing i'm all for that.
5:10:50
Bike
originally i wanted to use it for clasp, but i can't right now for boring reasons. so it's pretty much been staying where it is, i.e. a basically correct but not especially performant or extensible type system
5:14:33
char[m]
Seems pretty extensible to me. I have a somewhat working extension (that probably shouldn't be upstreamed). How would you it to be more extensible?
5:15:20
char[m]
It is sad you can't use it in clasp. Do you mean it is not performant because it makes heavy use of CLOS?
5:15:48
Bike
it's not performant because it doesn't cache anything (or at least i imagine that's the main problem)
5:17:40
Bike
as for extensibility, the API for introspecting on types needs some thought (or really any thought - the one that's there is basically just the slot accessors)
5:18:17
Bike
for example it's kind of not easy to ask questions like "what is the upgraded array element type of this arbitrary (e.g. disjunction) type"
5:18:39
Bike
and i should probably have it use the client dispatch pattern rather than having a bunch of special files
8:14:28
zacque
Hi, question: Why does `(apply (car '((lambda (x) (= x 2)))) (list 2))` give type error? I'd expect it to return T
8:16:59
beach
You would have to convert the lambda expression to a function, so you would have to use EVAL or COMPILE.
8:21:02
zacque
Hmmm, right now, the lambda predicate is supplied by my own, I'm storing these predicates inside a list
8:21:35
zacque
What I have in mind is to apply them one by one against a data until one that returns T
8:21:54
beach
If you construct the list to contain functions in the first place, you should be fine.
9:02:55
hayley
Has anyone got any favourite benchmarks? I'm aware of cl-bench, but am looking for more garbage collector-intensive programs, and perhaps parallel programs too.
9:08:16
hayley
Hm, could be interesting to test a web server, but there's usually very little that survives between collections. My Regrind fuzz tester already has that kind of allocation behaviour.
9:14:15
hayley
ACTION needs to ask for a license for one of the benchmarks she used. Whoops. Can't un-remember how that code works now.
10:09:10
splittist
There are problems that can only be solved by staring out a train window or walking in the woods. There are problems that can only be solved at the keyboard and letting your fingers do the thinking. I wish I knew ahead of time which is which.
10:45:53
jcowan
hayley: rather than a web-ized file server, a stateful app server might be the thing fwiw
10:46:36
hayley
Sure, but what application? Shouldn't be too hard to interact with, since I need to automate that, but it should do interesting work.
11:42:40
hayley
I've recorded pause times for Kandria and made some pretty graphs, but not sure how to automate it.
11:45:14
hayley
The ideal would be to run through some kind of recording of inputs, so that it does roughly the same work in each test, and have it print out "#.MOST-POSITIVE-FIXNUM ticks in 0.0001 seconds". Except maybe not the last part.
11:50:49
hayley
Then it should be fine. Next question, for myself to figure out, is how to meaningfully combine measurements of pauses. Gil Tene says thou shall not take averages of percentiles.
11:52:20
hayley
There was a joke about someone suggesting to add Minecraft to the DaCapo benchmarks (for Java). That someone denied having said it, but appears we can have video games in benchmark suites for CL.
11:53:50
hayley
Minecraft refused to run under Azul's JVM. And there was a bug report for OpenJ9 about poor performance there. Close enough!
11:56:37
hayley
https://github.com/eclipse-openj9/openj9/issues?q=minecraft but I'm getting off topic. Thanks, I'll have a see about making a Kandria demo to benchmark.