freenode/#shirakumo - IRC Chatlog
Search
15:38:15
scymtym
screamer is cool and definitely fun but the constraints aspect is a bit fiddly in my (limited and years ago) experience
15:39:34
scymtym
sensitive to solver parameters and maybe a bit buggy. i don't remember the details. let me check whether i still have my experiment
15:43:54
scymtym
in general, i think a good simplex implementation will be needed, but you are right, implementing that as part of a gui library doesn't seem like a good idea
15:44:33
Shinmera
well it could be a separate lib, but I don't want to dive into what I estimate to be another big project
15:48:21
scymtym
sure, but i would assume the goal is figuring out if/how well the approach works, not making something that satisfies all requirements, at this point
15:50:41
Shinmera
Well, given that Emeus layout thing for GTK you linked uses a linear constraint solver I would have thought it works pretty well.
15:54:37
scymtym
i don't want to be too pessimistic and i haven't looked into this too much, but screamer seems to use some kind of recursive range sub-division for variable values (not sure if that is true for integer (in)equalities as well). cassowary seems to be based on some form of simplex algorithm which is much more powerful (i think even z3 and other smt solvers use simple)
15:55:32
scymtym
"just" porting is the part where i thought prototyping with something like z3 first might make sense
15:58:36
scymtym
i did something like that once for a laying out columns with complicated constraints
16:19:43
Shinmera
Hmm, there's a header-file C implementation in about 1000 lines. Shouldn't be too bad to port that.
16:20:15
Shinmera
Especially since it seems to implement its own hash tables and memory pools, things we don't need to care about.
16:20:39
Shinmera
|3b|: I'd honestly rather do it manually and prune what's not needed / change what seems more sensible in Lisp
16:22:37
Shinmera
Anyway, not yet ready to jump on this. I want to get a day of clear thinking first to figure out what I should focus on
17:07:36
Colleen
github.com/starwing/amoeba/... Website (HTML), Title: amoeba/amoeba.h at master · starwing/amoeba · GitHub
17:08:54
Shinmera
from scanning the cassowary paper it seems that algorithm is a simplex variant optimised for incremental changes as seen in UI