IRC channel logs


back to list of logs

<davexunit>ACTION really wishes GOOPS had method combination
<davexunit>could really use the equivalent of :around in CLOS right now
***do is now known as w1gz
<solene>hello, in this page HOSTNAME is used but it's not an environment variable exportd (maybe on some system) this cause the example to just return #f
<ArneBab>short info: the website still references 2.2.0 (not 2.2.2) and the snapshot-links for 2.2 don’t work:
<ArneBab>if you’re interested in some so-far-undocumented guile datatype and operations benchmark graphs:
<ArneBab>created with
<ArneBab>created with
<dustyweb>ACTION is a troublemaker
<davexunit>dustyweb: if only canonical sexps could take over...
<davexunit>I wasn't making trouble, but I did write a general purpose A* pathfinding algorithm
<dustyweb>davexunit: ooh awesome
<dustyweb>davexunit: yeah and canonical sexps are just so nice
<dustyweb>did you see I built guile-csexp using your json library as a guide?
<davexunit>I didn't know! awesome
<davexunit>I appreciate their existence so much more after learning that PEM is just so terrible
<dustyweb>recursive descent parsing is so nice
<dustyweb>oh yeah
<dustyweb>is the fucking worst
<dustyweb>I mean it's not PEM itself
<dustyweb>but ASN.1 and all the terrible layers beneath it
<dustyweb>and there are many
<dustyweb>but I think canonical sexps are very nice in general
<dustyweb>I am advocating them as the canonicalization method for Smarm
<dustyweb>I think they're also very nice in general as a data serialization format
<davexunit>ooh yeah you're right
<davexunit>since every Lisp's 'write' is different
<dustyweb>I intend to use them for inter-process / networked actor communication in 8sync
<davexunit>I read some of the 8sync code for some inspiration for a little game thing I started
<dustyweb>oh nice :)
<davexunit>it's actorish
<dustyweb>I hope it was in some way helpful... of course once someone says "I read your code for inspiration" you immediately think of all the flaws it has ;)
<davexunit>but not share nothing.
<davexunit>hehe don't worry about all that
<davexunit>it was very useful
<dustyweb>I'm glad :)
<davexunit>I took some ideas from 8sync and fibers to make a game object system
<dustyweb>I still need to push out my 8sync + fibers branch
<davexunit>also read godot docs and code
<dustyweb>all cool projects there
<davexunit>and Xelf
<dustyweb>that too :D
<davexunit>I think that's it :)
<dustyweb>cool project overload!
<davexunit>game objects form a tree, parent/child relationships and all that, but they communicate with each other over channels that are sort of like what fibers has
<dustyweb>cool :)
<davexunit>it's strictly a tree
<dustyweb>I guess trees are a subset of DAGs :)
<davexunit>I guess so :)
<davexunit>you couldn't, say, attach the player object to 2 different nodes
<dustyweb>ACTION nods
<davexunit>a single-parent DAG ;)
<davexunit>sounds much fancier than "tree"
<davexunit>if I get enough to finish it I'm going to submit something to the lisp game jam
<davexunit>enough time*
<dustyweb>I was thinking the other day about how "oh right merkle-tree'ish/append only systems are always inherently DAGs" and then thinking
<dustyweb>"dang if you could break sha1 collisions to introduce a cycle, how much git software would you break"
<dustyweb>or maybe
<davexunit>*dustyweb consumes all available RAM*
<davexunit>damn guile 2.2!
<dustyweb>guile 2.2 is pretty great in general! but yeah hopefully the compilation memory issues can be fixed :) it seems like ludo got (a lot of it) narrowed down to weak hash table reimplementation mostly
<dustyweb>I still wonder if swapping out the api would fix things then, but of course I'm doing nothing but armchair commentary while I'm swamped over here getting ActivityPub out the door
***bmansurov is now known as bmansurov_away
<whaleflower>davexunit: just chiming in here to agree, I think your A* pathfinding algorithm is the best way to abstract graph traversal using different data structures
<whaleflower>it abstracts nicely for bfs, dfs, and everything in between
<whaleflower>while still giving you the flexibility to use efficient datastructures
<stis>yeehaa, got pythons eval/compile/exec working in my python implementation in guile
<stis>also tab completions x.fa TAB now works
<stis>string operations on bytestrings as also far in implementation
<davexunit>whaleflower: hey thanks!
<davexunit>I took the pseudocode from here and translated it
<whaleflower>cool, can't wait to read through that
<davexunit>I like that the resulting code doesn't care at all what the graph actually looks like
<davexunit>I will be plugging 2d tile-based maps into it, but you can use anything.
<whaleflower>yeah, it's super elegant and generalized :)
<davexunit>I will probably add a data structure that holds the queue and hash tables so that you can keep reusing them for repeated path finding instead of allocating memory constantly, but as is it seems to be a decent start.
<ArneBab>Wisp 0.9.7 released with bugfixes: