ChanServ changed the topic of #picolisp to: PicoLisp language | Channel Log: https://irclog.whitequark.org/picolisp/ | Check also http://www.picolisp.com for more information
xkapastel has quit [Quit: Connection closed for inactivity]
<tankf33der> ok
<m_mans> Hi all!
<Regenaxer> Cheers m_mans!
rob_w has joined #picolisp
masak has joined #picolisp
mtsd has joined #picolisp
f8l has quit [Ping timeout: 265 seconds]
stultulo has joined #picolisp
stultulo is now known as f8l
_whitelogger has joined #picolisp
mtsd_ has joined #picolisp
lman has joined #picolisp
mtsd has quit [Ping timeout: 265 seconds]
<lman> hi
<Regenaxer> Hi lman!
<lman> how are you doing?
<Regenaxer> good
<lman> how is picolisp going?
<Regenaxer> Very good ;)
<lman> no osx port yet?
<Regenaxer> no
<lman> why so
<Regenaxer> wait for llvm version
<Regenaxer> Follow the discussions
<lman> ok
<lman> do you have libraries to manage rest and json?
<Regenaxer> lib/http.l lib/json.l
<lman> cool thanks
<beneroth> Hi Regenaxer, hi lman
<lman> hi beneroth
<Regenaxer> Hi beneroth!
<lman> have you considered creating a javascript version of picolisp?
<Regenaxer> I did not, but Jon Kleiser made a (partial) one several years ago
<lman> I guess the main problem is how to be efficient, you may need to use arrays for cell emulation
beneroth has quit [Ping timeout: 260 seconds]
<Regenaxer> right
<Regenaxer> like the Java version
<DKordic> JavaScript is a Weird Machine by design.
<DKordic> It's User-proof Exploit.
beneroth has joined #picolisp
<lman> unfortunately I'm very dependant on js
<lman> js has conquered the world btw
<beneroth> time to conquer it back
<Regenaxer> indeed
mtsd_ has quit [Quit: Leaving]
orivej has quit [Ping timeout: 264 seconds]
mtsd has joined #picolisp
<beneroth> Regenaxer, any pointers to common causes for an corrupted index? I have in one project a special "last-edit" index, which stores (+Aux +Date) (time). it regularly gets corrupted (the tree).
<beneroth> no problem to rebuild, bug ugly
<Regenaxer> hmm, happens seldom
<Regenaxer> might be a bad db model
<Regenaxer> sometimes in +Bag with several indexes
<Regenaxer> but then it gives only 'dangling'
<beneroth> yeah must be something like that..
<Regenaxer> how much corrupted?
<beneroth> dbCheck reports bad symbol
<Regenaxer> oh
<beneroth> always same index, always same pattern
<Regenaxer> must be something
<Regenaxer> can you pastebin a relevant piece?
<Regenaxer> e/r
<beneroth> I suspect my last-edit code (which is part of 'upd>) gets called multiple times for the same object (not really intended this way), and that breaks the tree
<Regenaxer> or just paste here perhaps
<Regenaxer> multiple times should be ok
<Regenaxer> i.e. same value stored several times
<beneroth> ok. cannot paste really, it's pretty involved, would need to assemble all relevant parts..
<beneroth> ah
<beneroth> of course I use a parent class
<beneroth> maybe something to do with that...
<beneroth> (rel lastedit-d (+Aux +Ref +Date) (lastedit-t))
<beneroth> (rel lastedit-t (+Time))
<beneroth> (rel lasteditor (+Aux +Ref +Link) (lastedit-d lastedit-t) NIL (+User))
<beneroth> that's the relations
<Regenaxer> looks good
<beneroth> this is basically the parent class
<beneroth> maybe the issue is in method dispatching
<beneroth> no idea
<beneroth> will investigate in detail another time
<Regenaxer> no idea either
<beneroth> ugly, but no issue, I just correctly rebuild the index before doing things like dbgc ;-)
<beneroth> thanks anyway :)
<Regenaxer> should all not corrupt I think
<Regenaxer> "dbCheck reports bad symbol"
<Regenaxer> is it 'zap'ped?
<Regenaxer> it is perhaps not the index itself
<Regenaxer> dbCheck gives only "Bad Type" or "Bad Value"
<beneroth> I just run it once again
<beneroth> I just paraphrased before
<beneroth> I think it was "Bad Value"
<Regenaxer> ah, ok
<Regenaxer> So the object is of wrong type
<Regenaxer> oops
<Regenaxer> no, 'has>' mismatches
<Regenaxer> for "Bad Value"
<beneroth> ({C1446} 737805 42650 . {O21564}) -- Bad Value
<Regenaxer> ok
<beneroth> from log
<beneroth> haven't looked into the symbols
<Regenaxer> Could be a class mismatch
<Regenaxer> 'has>' for that attribute
<beneroth> yeah smells like that, would fit me, you know I like to build class hierarchies ;-)
<Regenaxer> yeah :)
<Regenaxer> multi-path inheritances :)
<beneroth> just tried to do the action which corrupted the tree before, but not corrupt this time
<beneroth> aye
<beneroth> not sure if I can reliably cause the bug
<Regenaxer> Somehow an object of the wrong class gets stored
<beneroth> well I also do set> operations, which even also update this lastedit relations
<beneroth> so.. could well be
<beneroth> I expect a stupid mistake in my code, not in pil ;-)
<Regenaxer> :)
<Regenaxer> {C1446} above does not have the attribute of the tree index
<Regenaxer> So best to inspect it if you have it the next time
<Regenaxer> (not just the log)
<beneroth> aye
<beneroth> I'm aware. Will do :)
<beneroth> thanks for the ideas!
<Regenaxer> I'm sure you will find quickly
<beneroth> low-level debugging in pilDB is actually quite doable. much less hazzle than C pointer stuff. and not comparable to hazzle with typical database systems which do so much magic you have never a chance to look behind.
<Regenaxer> glad to hear :)
<beneroth> well the value of this property of pilDB cannot be overstated, I think :)
<beneroth> lol
<beneroth> my bug seems really to be a Heisenbug
<Regenaxer> :)
<beneroth> but that doesn't make sense at all
<beneroth> it shouldn't be
<beneroth> but yeah... doing the action which previously prompted the bug a second time, no bug
<Regenaxer> oh
<beneroth> and the action is basically "change many objects, than change them back again"
<beneroth> (which prompts updates/puts to the lastedit relations)
<Regenaxer> so the order in which it happens?
<beneroth> that is the only variable, beside DB-internal structure of externals
<beneroth> or so I believe currently
<Regenaxer> Too bad. Once an error is reproducible in Pil, it is easy to debug
<beneroth> T
<beneroth> will ignore it for now, I have more urgent tasks, unfortunately
<Regenaxer> ok
<beneroth> it can be repaired and doesn't do damage, just looks ugly
<Regenaxer> true
<beneroth> thanks for the discussion Regenaxer :)
m_mans has quit [Quit: Leaving.]
<Regenaxer> welcome :)
<beneroth> ah noe
<beneroth> now no "Bad Value" but danglings
<beneroth> so maybe it IS reproducible :)
<Regenaxer> still strange, different things ;)
<beneroth> aye
mtsd has quit [Quit: Leaving]
xkapastel has joined #picolisp
rob_w has quit [Quit: Leaving]
Nistur has quit [Ping timeout: 256 seconds]
Nistur has joined #picolisp
orivej has joined #picolisp
xkapastel has quit [Quit: Connection closed for inactivity]
xkapastel has joined #picolisp
lman has quit [Ping timeout: 258 seconds]