libera/#sicl - IRC Chatlog
Search
15:06:38
jeosol
beach: missed your messages when my browser crapped. But I was able to pick them up from the logs
15:07:46
jeosol
beach: first, I don't set safety, debug, speed, and being using default. Never did since I was trying to get the application. Now it's done (code is never done, but it's functional now), I wanted to see what performance I get
15:08:56
jeosol
beach: I did take a course on algo and data structures, but had already written the bulk of my code. But I would not see it's elaborate on the use of data structures, likes queues, priority queues, etc, at this time.
15:09:27
jeosol
but one issue I am seeing now is memory issues. developing and trading time and space
15:10:30
jeosol
I opted for an approach that held lots of 3d arrays in memory. For my small problem instances, they work ok, but for the large cases, I need larger memory. I am now thinking of just loading the objects from disk when needed but that will take some performance hits
15:10:35
beach
When I mentioned algorithms and data structures, I didn't mean the traditional ones documented in the literature, but rather the more tricky ones that are application specific, so that they require some serious design.
15:12:18
jeosol
beach: I see what you mean. I think I have done a bit of that in the early stages. It can still use a bit of thinking and refactoring especially to keep memory footprint small
15:12:38
beach
drakonis: I don't follow links unless I am given a short summary of what they link to.
15:16:13
drakonis
it's probably going to get subsumed into guile steel since it uses prescheme and is inspired by E
17:16:11
moon-child
why would it be easier to implement kernel in scheme than in cl? Continuations? (Does kernel have them?)
17:30:59
Bike
the latest one is my attempt at a compiler, https://github.com/Bike/burke, but i haven't worked on it for a while
17:34:56
Bike
note that i haven't bothered with the continuation stuff, partly because it's annoying and partly because i don't think shutt's continuation hierarchy thing is actually a good idea
17:35:46
Bike
if i was going to do it i would just implement my own bytecode or something, i've done delimited continuations that way before
17:36:38
Bike
well, as i understood the spec, each kind of error has its own continuation, and when you hit an error you go to that continuation, and that's your substitute for e.g. the condition hierarchy in CL
17:37:08
Bike
but conceptually, all errors are probably going to the same continuation, the debugger
17:37:24
Bike
so to me it just seems like a weird workaround because you don't want to have ad hoc polymorphism
17:37:57
Bike
i like them as a theoretical construct but i haven't really been impressed by the practical uses versus what a chore they are to implement
17:40:14
Bike
not gonna lie, my impression of what schemers are doing is in large part what i read on angry blogs
17:45:37
Bike
the other thing with kernel is that it seems like you'd have to avoid vau a lot in practice. for example even in the standard library shutt uses a lot of apply, which ensures the combiner it's given isn't an operative, because if it was library internals could leak
17:46:27
Bike
and i think you might want to define an applicative "call", that's just like cl funcall, to do the same thing with just normal arguments
17:46:42
drakonis
basically, what i want to do with kernel is to write as much of scheme in it and then proceed into using scheme normally
17:46:49
Bike
to avoid leaks and also because it's impossible to compile otherwise, but that's a me problem
17:48:02
Bike
like you can't do better than eval pretty much. i think i explained my thinking in the burke readme
17:51:01
Bike
i don't think you understand what i'm saying. i don't mean "impossible to compile efficiently". i mean impossible to compile
17:53:34
Bike
also, this last one is really incomplete. the earlier ones do more of the library but they're just interpreters.
17:57:36
drakonis
by the way, kernel itself predates some of the more interesting scheme changes that started to release in the era
18:04:20
Bike
also kind of nicer to implement a basic interpreter for it than for usual scheme, in a way