Search
Thursday, 1st of April 2021, 2:52:49 UTC
3:00:21
beach
Good morning everyone!
3:06:48
caoliver
It's hard to wreck a nice ...
4:47:24
dmiles_afk
** NICK dmiles_afk
4:54:13
jcowan
Maiko, the Interlisp VM, also runs on both Mac and Linux (and Solaris and of course Linux for Windows)
4:54:46
jcowan
As for Elisps, it's true that Guile and Kawa don't provide the editor-specific data structures, but they do provide the Elisp language as such.
6:40:34
ldbeth
jcowan: wait, interlisp vm?
6:40:45
ldbeth
where can I find that then?
6:40:58
moon-child
ldbeth: https://github.com/Interlisp/maiko/
7:45:32
keeperasmexcalib
** NICK keeperegp_
7:45:47
keeperegp_
** NICK keeperasmexcalib
11:03:54
jmercouris
phoe: how can I show restarts to users in Nyxt?
11:04:24
jmercouris
Is there a portable way to do this?
11:04:45
phoe
jmercouris: what do you mean, show?
11:04:45
no-defun-allowed
clhs compute-restarts
11:04:45
specbot
http://www.lispworks.com/reference/HyperSpec/Body/f_comp_1.htm
11:05:13
no-defun-allowed
The example provides a text interface-based example for what you want.
11:05:16
phoe
like do what the debugger does, show a series of like [FOO] Perform a FOO operation."
11:07:04
phoe
because then what no-defun-allowed said - get a list of restarts available in the current dynenv this way via COMPUTE-RESTARTS, get restart names via RESTART-NAME, get restart reports via princ-to-stringing the restart objects, call them via INVOKE-RESTART-INTERACTIVELY after binding *query-io* in a proper way
11:07:32
phoe
;; or y'know you can read my book instead
11:07:44
phoe
you could take a look at the debugger of portable-condition-system as well
11:07:55
phoe
because this directly operates with restarts and displays them to the user
11:08:22
phoe
https://github.com/phoe/portable-condition-system/blob/master/src/debugger.lisp
11:08:46
phoe
in particular DEFINE-COMMAND :RESTARTS and below
11:24:33
phoe
jmercouris: basically this sounds like you want to write your own Lisp debugger, which kind of makes sense because nyxt aims to be a Lisp environment
11:24:40
ldbeth
someone asked me if it is a good idea to modify *print-case* for readability
11:25:51
ldbeth
globally, he encountered the problem that setting *print-case* would cause trouble for cl-base64's macro
11:26:36
ldbeth
which uses (intern (format nil "~A" ... something
11:27:14
phoe
;; I think that at least one of my own libraries is going to fall apart the same way if print-case is modified
11:27:34
phoe
;; I need to verify this someday
11:27:40
jmercouris
phoe: yes, we are going that direction
11:28:48
phoe
I actually cannot see INTERN over FORMAT NIL in there
11:29:02
ldbeth
personally I feel IT IS NOT A BIG PROBLEAM READING UPPERCASED INDENTIFIERS.
11:29:32
phoe
what's the exact error you are getting? cl-base64 seems actually immune to this sorta error
11:30:58
ldbeth
he added (setf *print-case* :downcase) in his .sbclrc and using cl-base64-20201016-git
11:32:46
ldbeth
and it's acually loading another package complains "The function cl-base64:base64-string-to-usb8-array is undefined."
11:34:31
phoe
show me that another package
11:35:00
phoe
because cl-base64 seems to define symbols with upcased names, like, always
11:39:10
ldbeth
phoe: "crypto-shortcuts", in package nice-school
11:40:25
ldbeth
might need to empty fasl files first
11:43:13
ldbeth
probably nice-school is the package he's developing
12:50:58
beach
Bike: How is work on Cleavir going?
12:51:33
Bike
think i'm going to have to work on trucler like i mentioned before i get much farther with it.
12:57:26
jmercouris
ferada: how do I add Gboxed types to cl-cffi-gtk?
12:57:31
jmercouris
such that get-g-boxed-foreign-info-for-gtype functions properly?
12:57:52
jmercouris
Ive tried to use the DEFINE-G-BOXED-* macros to no avail
12:58:00
jmercouris
perhaps I am not using them properly
12:58:09
jmercouris
http://dpaste.com/64J5BUCMJ
13:05:09
jmercouris
looking at the documentation here: https://webkitgtk.org/reference/webkit2gtk/stable/WebKitNavigationAction.html I cannot for the life of me figure out what the struct fields are
13:05:45
jmercouris
which makes me think that it should be defined via define-g-boxed-opaque
13:05:53
jmercouris
however, how to use this is incredibly unclear
13:10:41
ferada
jmercouris: hi, ...boxed-opaque looks correct to me like you said and how to use it, just look at the existing cases, like gtk-widget-path for example, function parameters use (object (g-boxed-foreign gtk-widget-path)) e.g.
13:13:01
jmercouris
ferada: I see, thanks
13:13:47
jmercouris
you mean (g-boxed-foreign gtk-widget-path) for specializing my defcfun
13:13:53
jmercouris
why could i not just treat it as a pointer?
13:14:08
jmercouris
what is the point of wrapping in g-boxed when it is opaque?
13:14:35
ferada
you can pass raw pointers around, then you just have no idea what's in it
13:14:48
jmercouris
ferada: that's usually what I am doing
13:14:51
jmercouris
here is where the problem comes in
13:15:07
jmercouris
when you use g-signal-connect it tries to do some magic and convert the results into appropriate objects
13:15:21
jmercouris
let me show you what I mean
13:16:45
jmercouris
ferada: http://dpaste.com/77CSNHPE8
13:17:46
ferada
jmercouris: and what's the problem?
13:17:53
jmercouris
the problem is that "t" is passed somewhere
13:17:58
jmercouris
the result of my lambda
13:18:02
jmercouris
and cl-cffi-gtk loses its mind
13:18:04
jmercouris
let me show you a trace
13:19:17
jmercouris
http://dpaste.com/6R72G9TG2
13:22:34
ferada
jmercouris: that's this signal https://webkitgtk.org/reference/webkit2gtk/2.4.2/WebKitWebView.html#WebKitWebView-create ?
13:22:46
ferada
T isn't a valid return value anyway
13:22:56
jmercouris
it isn't, that's true
13:23:05
ferada
so, return NIL or a widget
13:23:14
jmercouris
a good point, maybe NIL will help it survive
13:23:26
ferada
i can't find an example with return value gboolean right now, might be that it's not supported
13:24:55
jmercouris
I would have /never/ thought
13:25:09
jmercouris
many of my assumptions have been now broken
13:25:37
jmercouris
strange, because I thought in other signal handlers I was returning incorrect values and it was handling it gracefully
13:25:46
jmercouris
maybe I was never doing that, and just imagined I was
13:26:39
ferada
maybe, maybe not, it's a bit hard to search for this case since the return type isn't indicated in the lambdas unfortunately
13:26:46
ferada
not the greatest design i guess
13:27:33
ferada
let me know if you encounter other issues, i've seen the tickets, i just can't easily reproduce things at the moment
Thursday, 1st of April 2021, 14:52:49 UTC