whaack: trinque: I would like to catch errors that are being signaled from threads I've spawned off with ircbot-connect-thread. The errors are various but mostly I need to catch SIMPLE-STREAM-ERROR when I get booted from a server. lmk if you have a method for this or if you think it's a bad strat to begin with.
trinque: I mean, ircbot-connect-thread just does ircbot-connect in a thread
trinque: it's just a helper method, mostly for repl play
trinque: why would you not implement your error handling in ircbot-connect :around ?
trinque: probably wrapping read-message-loop
whaack: trinque: handling the error in ircbot-connect :around seems to be a good idea. I just need to know the threads will die gracefully. Maybe they do that on their own and think they're interfering with the rest of the process because my repl is firing the debugger up
trinque: if they gave ya a debugger, didn't exit gracefully
trinque: whaack: what's the idea, you fork a bunch of threads, then do something once they're terminated?
trinque: broadly, sounds like a list of threads you loop over periodically, taking action when they're all in a terminal state, or you're tired of waiting, w/e makes sense in context.
trinque: and just to point out, if you were pasting me context I would have a better idea of what you're trying to make
whaack: trinque: Let's say a network has 360 channels. I need to park a nick in all 360, but the network has a a 120 channel cap per nick. So I make 3 threads connecting to all the channels. If a thread drops I would like to be able to restart it.
trinque: got it, so you're actually going to have an ircbot in each thread.
trinque: so yep, implement error handling and reconnection as stated, and then w/e channel-joining as hooks in the connection lifecycle, should be about it
whaack: trinque: here are the "scribbles of my notebook" Idk if it's worth your time to read since it's an unpolished mess but since you asked for context. The function in question is "set-sail" but I am pretty sure i understand my problem, the handler-case has to be inside of the function that is passed to sb-thread:make-thread http://paste.deedbot.org/?id=vfsr
whaack: i'll also have to consider errors being thrown by the ping thread
whaack: diana_coman: EOD Report: Another long 12h+ grind on TheFleet that went into the night. I did my writing too but no Spanish. I can connect a fleet to small networks, but networks have a max-conn-per-host limit that when passed boots all my bots. So my max channels per ip is (max-conn-per-host * num-chans-per-nick) until I find some trick. Otherwise, I learned a bit about error handling and threading today in CL. I'll publish the det
whaack: ails tomorrow in my article.
ossabot: Logged on 2019-12-29 18:36:18 whaack: diana_coman: i see, they're the half baked notions i wish to be true that I leave in my head unchallenged
diana_coman: http://logs.ossasepia.com/log/ossasepia/2019-12-29#1014265 - possibly it gets confused by those < < that remained as such, try making them < since you do that for the rest anyway, right?
ossabot: Logged on 2019-12-29 19:32:46 dorion_road: http://logs.ossasepia.com/log/ossasepia/2019-12-27#1014149 << done. however, I seem to be tripping on a bizarre mp-wp bug. a </strong> tag is being dropped upon serving the comment. when I edit the comment it's there, but upon saving it, it's dropped. I've been banging my head for the last 90 mins without any
diana_coman: dorion_road: also, don't bang head alone for that long - come in here and someone will bang your head for you if needed - or otherwise help you out way faster, you know?
diana_coman: btw, you might want to use a html validator as it will point out unclosed tags and other such things that tend to end up in weird errors.
diana_coman: http://logs.ossasepia.com/log/ossasepia/2019-12-30#1014283 - what tends to be the range for those num-chans-per-nick and max-conn-per-host ?
ossabot: Logged on 2019-12-30 03:48:02 whaack: diana_coman: EOD Report: Another long 12h+ grind on TheFleet that went into the night. I did my writing too but no Spanish. I can connect a fleet to small networks, but networks have a max-conn-per-host limit that when passed boots all my bots. So my max channels per ip is (max-conn-per-host * num-chans-per-nick) until I find some trick. Otherwise, I learned a bit about error handling and threading today in CL. I'll
whaack: diana_coman: 3-5 connections per host and 120 max-chans-per-nick is what i've seen, but I have not iterated through the channels. there is no command afaik to get these numbers - i have to keep going until i hit an error.
diana_coman: whaack: what/why is the work on this so far eating that much time? It seems rather excessive from here.
whaack: diana_coman: Are you asking 'why put that much time in a single day?' or 'why is the logger not up and running yet?'
diana_coman: whaack: I'm asking what took 12h+ and why is it a grind?
ossabot: Logged on 2019-12-30 03:48:02 whaack: diana_coman: EOD Report: Another long 12h+ grind on TheFleet that went into the night. I did my writing too but no Spanish. I can connect a fleet to small networks, but networks have a max-conn-per-host limit that when passed boots all my bots. So my max channels per ip is (max-conn-per-host * num-chans-per-nick) until I find some trick. Otherwise, I learned a bit about error handling and threading today in CL. I'll
diana_coman: so neither of your guesses there, really :)
whaack: diana_coman: first, grind was a poor choice of words, since grind implies lots of tedious work (if i had manually connected to each network and figured out their connections-per-host etc. then that would be a grind)
diana_coman: well yes, that's what it suggested and part of why I asked the question.
whaack: diana_coman: What I did in the 12h was change trinque's bot to have a setting to connect with unauthed nicks and implemented make-fleetbot and fleetbot-connect-thread. One big time sink was I banged my head a bit on handling errors within threads. Another was then figuring out what was causing the errors sent by the networks
whaack: diana_coman: the discussion with trinque yesterday made me reevaluate my methodology with cl. cl+slime+emacs = the 'wonderful ability' to have a hotkey to take a function and put it inside the REPL so you can test it in isolation. but yesterday I bet I could point to hours lost 'masturbating' by firing off functions in the repl instead of reading my source and improving it
diana_coman: whaack: that's exactly what it sounded like, indeed; and your statement yesterday re looking for code doing this or that was also a red flag.
diana_coman: whaack: note that testing something is *not* going to do a whole lot re understanding that something, esp not by itself; there are quite a few layers on this, hm.
diana_coman: the point with using trinque's bot to start with was precisely to not end up with repeated 12h+ days on this but I suspect you have some very inefficient habits either programming in general or unknown language specifically.
whaack: diana_coman: it's a mixture of the two imo
diana_coman: whaack: now the question is whether the reason you find it more pleasant writing in lisp is precisely because it feeds those bad habits, you know?
ossabot: (trilema) 2019-12-29 whaack: trinque: First, I find it more pleasant writing in lisp. Second, I like the cultural aspect of a (present day) more niche language. Then for problems with python: i find the single line lambdas a strange requirement, and not having tail call optimization is lame (although i admit i can't think of many/any cases where that's been a problem)
whaack: mhm
whaack: trinque's qs were a good wake up call. ~ 'oh yeah you like lisp, are you going to bet your work/career/life/etc. on that feeling?'
whaack: and the 'machine gun' programming language is nice, for about 10 seconds before it finds a way to jam. i have my handicap autocomplete on + jump to func definition + repl etc. these help, kind of. but guess what happens when i fire off a thread to connect to a network and the network returns an error? all of the sudden I can't even edit the file i'm working on because my emacs is locking up when it searches the environment for symb
whaack: ols to autocomplete to
whaack: but a bigger problem than the above is that I turn a blind eye to problems like it because i've found the 'sekret weapon language' meant for the smart kids frustrated with the world
whaack: dorion_road and jfw: would you be able to meet for coffee if I came to Panama City sometime between Jan 14th-Jan19th? booking my border run is way overdue
whaack bbl, off to Santa Cruz
diana_coman: http://logs.ossasepia.com/log/ossasepia/2019-12-30#1014311 - heh, this sounds like you need a whole lot more experience to end up with the wisdom to simplify your own workbench.
ossabot: Logged on 2019-12-30 11:54:52 whaack: and the 'machine gun' programming language is nice, for about 10 seconds before it finds a way to jam. i have my handicap autocomplete on + jump to func definition + repl etc. these help, kind of. but guess what happens when i fire off a thread to connect to a network and the network returns an error? all of the sudden I can't even edit the file i'm working on because my emacs is locking up when it searches the envir
diana_coman: http://logs.ossasepia.com/log/ossasepia/2019-12-30#1014313 - yeah, too many blind eyes even, heh.
ossabot: Logged on 2019-12-30 11:59:11 whaack: but a bigger problem than the above is that I turn a blind eye to problems like it because i've found the 'sekret weapon language' meant for the smart kids frustrated with the world