IRC channel logs

2019-08-22.log

back to list of logs

<daviid>manumanumanu: i was going to answer, that goops can handle 'defining a new iterator' on the fly like pinuts, but i now see that you want to be protable ...
<daviid>being portable is not a consideratin, afaic, unless the other scheme has goops
<daviid>i mean a strong clos like implementation, without it, many things are just impossible
<daviid>unless you rewrite, porrly, a order of mag inferior 'joke' that mimics it ... that is always posible of course ...
***siel_ is now known as siel
<daviid>I've had terrible internet connection problems today, not a single place I sit did work fine, and I see the last 4 or 5 msg I wrote, to str1ngs, re not in the log, where as those just before, to manumanumanu are ... maybe I shold resent those?
<daviid>str1ngs: did you see those last or not, commenting on your oan comment on guile 3.0, class redefinition ...
<str1ngs>daviid: I got your message about pushing goops instance cache
<daviid>hum, no i wrote more after what i wrote to manumanumanu
<str1ngs>but no I didn't get your commnets on redefinition
<daviid>ok i'll post these again
<str1ngs>thank you
<daviid>str1ngs: yes, the g-instance cache I added solves absolutely every occurrence of any 'situation' that comes to identifying and returning the correposnding goop instance, given a known g-instance pointer
<daviid>str1ngs: if it fails to fulfill the above, let me know
<daviid>str1ngs: wrt your goops realted 'change class' comment, I have a few comments to make : (a) consider guile 3.0 will be out tomorrow, it will, so prepare your s/w to be guile 3.0 compatible now; (b) there is no 'breackage' in using a class redefinition, just do the right thing, which is to give those a diffierent metaclass, provied by guile 3.0 already (and use eval-when/cond-expand if necessary
<daviid>this being said, I've always considered that class redefintion on the fly, although a wonderfull 'theoretical' thing, is, imo, suspicious of a dad design (no pun intended, just sharing my opinion)
<daviid>voilà :)
<str1ngs>so far it looks good to me in terms of goops cache
<daviid>good
<daviid>I need to add a remove! proc, from the cache I mean, which you (any user) would use to 'help' the gc, and 'relieve' unused instances, for example, if you know you delete/destroy a clutter actor or what ever ... till i find a solution, but it's not going to be 'tomorrow'
<str1ngs>The place I'm using redefinition is with emacsy text-buffer class. I could just add generic methods that do what I need to do. but by changing the class it makes it easier to assert the type and if it needs conversion. one thing with emacsy is it has a buffer protection an will create a buffer that might need assertion dynamically
<daviid>the above is far 'vague' so i could possibly help, but if you post a snipset, not using anything but goops, that mimic what you think is impossible without class redefinition, then at least i could try ..
<str1ngs>I'm just checking if my code is self explanatory. basically I use it to convert a plain text-buffer to a widget-buffer. the widget-buffer class handles displaying the text-buffer as a GTK widget
<daviid>thenuse a widget-buffer from the start
<daviid>anyway, don't use instance class changes 'on the fly' unless (1) you really really know what you are doing, and (2) not a single hacker on earth came up with anoter solution you could possibly use instead ... is my recommendation
<str1ngs>I don't have controls over the classes they are part of emacsy and *scratch* *messages* are special text-buffers that can be added dynamically to the emacsy/guile runtime
<daviid>emacsy have classes? is this goops already?
<str1ngs> http://git.savannah.nongnu.org/cgit/nomad.git/tree/scheme/nomad/buffer.scm#n118 is a simulated emacs like redisplay to handle updating text-buffers to widget-buffers and re displaying content
<str1ngs>yes, emacsy uses GOOPS to define buffer classes.
<daviid>so you have control
<daviid>and can enhance the class hierarchy as in source code, not on the fly
<daviid>str1ngs: anyway, i don't have much time for this now, janneke may help you with this i guesss
<str1ngs>I'm okay with the redefinition as of now so it's all good
<daviid>ok, but then prepare for 3.0, and don't asy there is 'breakage', it is unfair to andy, who works hard to make goops faster and better ... 3.0 explains what to do to allow class redefinition/class change, unless i mssunderstood something
<daviid>having class redefinition as a feature makes it very hard for the compiler to produce fast goops code
<daviid>hence andy thought about a solution and explain what you have to do, in 3.0, if that is what you want
<daviid>then be aware that that code will be quite a lot slower then in you didn't use that feature, and sepaking og text-buffers, i beeive speed is a majorfactor of decision in design ...
<daviid>now i'm gona hack, do as you wish of course
<str1ngs>I will think more on how to avoid redefinition though
<str1ngs>daviid: the API breakage was not intended as criticism, the breakage is on my end to be clear
***Guest64341 is now known as nalkri
<rekado_>str1ngs: just read the README and noticed that you’re refering to ci.guix.info. Could you please change that to ci.guix.gnu.org?
<lloda>how does one read a dissassembly such as this https://paste.debian.net/1096941/
<lloda>I mean the branch numbers, for example
<lloda>is the 8 in (jne 8) counted how?
<lloda>I'm looking at https://www.gnu.org/software/guile/manual/html_node/VM-Programs.html#VM-Programs
<wingo>lloda: in terms of 4-byte words
<wingo>could be we should use byte offsets instead when displaying these things
<wingo>lloda: but the label target is printed in the comment on the right
<lloda>oh I'm stupid
<lloda>and I'm looking at the web manual which is only for 2.2.6
***lucasb_ is now known as lucasb
<dsmith-work>Hey Hi Howdy, Guilers
<lloda>hi
<lloda>who knows anything about gdb & guile
<lloda>debian buster gdb comes without guile support and when I tried to build it myself it only supports 2.0
<lloda> https://sourceware.org/bugzilla/show_bug.cgi?id=21104
<lloda>I wasn't planning to use it for anything, just checking it out
<lloda>I hoped I could step through vm code (??)
<civodul>lloda: indeed, we never updated GDB to the Guile 2.2 port API
<civodul>also, it does not support stepping through VM code
<civodul>that said, even though it uses Guile 2.0, GDB can pretty-print Guile 2.2 objects
<civodul>re port API: https://lists.gnu.org/archive/html/guile-user/2017-03/msg00115.html
<str1ngs>rekado_: the README is completely out of sync. thanks for reporting this
***dongcarl_ is now known as dongcarl
<rekado_>FYI: I could restore the old logs for #guile, but there’s a large range that’s missing from the legacy logs. I’m trying to get those first.
<rekado_>oh, got an answer. Some logs are indeed missing from the archive. Oh well.
<str1ngs>rekado_: I have a version bump to resolve the README and some other small fix's do I need to mail the whole series? or can I just mail 0006 in the series?