freenode/#clim - IRC Chatlog
Search
3:14:24
bugrum
I seem to be having some trouble. I followed the steps as specified in Issue #64 on github, but those steps didn't seem to work
3:14:51
bugrum
if I load the backend's asd file separately it seems to successfully load into my REPL but I can't seem to get it load when I load McCLIM proper
3:18:05
nsrahmad
bugrum: See CLXv3 or CLX-fb example here https://github.com/robert-strandh/McCLIM/wiki/CLX-backend(s)
4:21:03
bugrum
clim-standard seems to be broken on CCL on Mac OS X (I haven't tried ccl on Linux so I don't know if this works there). When I try to load :clim-examples I receive the following error: "Unbound variable: XLIB::+RR-CONFIG-STATUS+". It seems that clim-examples expects an X server running
4:23:24
bugrum
but before submitting my pull request, I thought I should try loading McCLIM proper with it
4:25:11
nyef``
Stale CLX. I had that exact error message, and was told to (QL:UPDATE-ALL-DISTS) to clear it.
4:27:53
nyef``
Yup. Missing EVAL-WHEN on a DEFCONSTANT. SBCL evaluates DEFCONSTANTs at compile-time, CCL doesn't.
4:29:23
nyef``
Vulnerable window in terms of CLX versions is a month and a half to two months. (20170830 is not affected, 20171019 is, 20171023 has it fixed.)
4:34:16
bugrum
well the good news beagle is loading... Now comes the fun part: Objective-C error :-\
4:35:52
bugrum
nyef``: Originally, I was thinking of implementing a backend in Qt (since I'm familiar with Qt), but that's adding Qt dependency
4:36:52
bugrum
then I thought maybe an SDL2 backend since SDL2 is C-based, is a minimal C wrapper, and won't provide too much overhead. Plus it's only a single so, dll, or framework on each platform
4:37:29
bugrum
but looking into the CLX backend, there are comments that only clim-backend needs to be implemented
4:38:45
bugrum
of course, you are correct that there is stuff a more complete UI toolkit will provide for free
4:41:32
bugrum
for the SDL2 idea, I did find a UI toolkit built entirely on SDL2 but I don't know heavyweight it is (it's a port of nanogui): https://github.com/dalerank/nanogui-sdl
4:43:38
bugrum
of course, this was all before I decided to take a step back and see how quickly one of the other backends that is CLX can be revived :-P
5:46:34
red-dot
Interesting, that SDL idea really. Seems simple enough (as mentioned, a single shared lib), multi-platform, device support, and there are already CL bindings for the API.
6:12:50
bugrum
I just don't know if clim-backend is the only package that needs reimplementing (still am going through the comments)
6:13:32
bugrum
however as nyef`` rightfully pointed SDL2 is a proper UI toolkit, so just it by itself may require a bit more work
6:39:46
jackdaniel
what you need to do with SDL is to glue input with event abstractions and plug rendering to sdl (clx-fb is example of working with framebuffer)
6:40:48
jackdaniel
SDL is my favourite choice for custom backend, because while it is not UI toolkit itself, it is a perfect vehicle for McCLIM (which *is* toolkit) if we want something portable across windows, linux, osx and android
6:41:50
jackdaniel
whenever we want it or not, if we want to "talk" with foreign windowing servers, we have to be able to talk with foreign code - windows is c++, android is java/c++, osx is obj-c, unix is c
6:42:23
jackdaniel
we may pile abstraction on top of these languages, but that won't change the fact, that there is foreign bit. only exempt is mezzano, which is lisp os
6:44:17
beach
As long as there is a choice with a minimal amount of foreign code, I am fine with it. I would hate to HAVE TO depend on foreign code too much.
6:45:18
jackdaniel
yes, I'm talking explicitly about backend stuff (referring to the discussion earlier)