ChanServ changed the topic of #picolisp to: PicoLisp language | Channel Log: https://irclog.whitequark.org/picolisp/ | Picolisp latest found at http://www.software-lab.de/down.html | check also http://www.picolisp.com for more information
orivej has quit [*.net *.split]
DerGuteMoritz has quit [*.net *.split]
DerGuteMoritz has joined #picolisp
orivej has joined #picolisp
orivej has quit [Ping timeout: 240 seconds]
nonlinear has joined #picolisp
alexshendi has quit [Ping timeout: 268 seconds]
rob_w has joined #picolisp
rob_w has quit [Changing host]
rob_w has joined #picolisp
aw- has joined #picolisp
bene|off is now known as beneroth
<beneroth> hi all
<Regenaxer> hi beneroth
<beneroth> m_mans, in my system I also work with every user having a list of roles
<beneroth> not sure yet if this will be the final concept. I'm still pondering about more granular permission settings.
<beneroth> hi Regenaxer :)
<Regenaxer> The problem is more to find meaningful permissions
<beneroth> T
<beneroth> I only work with roles so far. was good enough.
<beneroth> meaning some code does check if the user has a certain role
<beneroth> do you also have permissions Regenaxer ? and roles are groups of permissions?
<cess11_> Same. Pondered adding some 'be mechanism for smaller adjustments to permissions but haven't got around to trying it out.
<beneroth> hm..(be).. good idea!
<cess11_> It is quite powerful as it is done in the demo app.
<Regenaxer> Yes, +Role has a list of permissions
<beneroth> I see. more powerful than my current system.
<Regenaxer> And the code has (may ThisPermission) all over
<Regenaxer> no check for role
<beneroth> yeah, of course.
<Regenaxer> As in app/ or wiki/
<beneroth> Role is then only for simpler configuration of user
<beneroth> nice
<beneroth> will probably switch to your system
<Regenaxer> yes, role is just a container for permissions
<Regenaxer> I think m_mans uses the same
<beneroth> I don't think it is meaningful to make this more complicated.
<beneroth> Well you could of course implement Role inheritance to make some things simpler to configure
<beneroth> but it can't become more granular than permissions.
<Regenaxer> T
<beneroth> you just create more permissions then.
<Regenaxer> The user must understand it, this is the main problem
<beneroth> well, only the user who configures the roles/permissions. not every user, I think.
<Regenaxer> What consequences it has if he gives permissions to a role
<beneroth> T
<Regenaxer> yes, only "Admin" user normally
<beneroth> so permissions should have a description which is displayed on the configuration page :)
<cess11_> If it fits security policies.
<beneroth> cess11_, if what fits?
<cess11_> Describing security settings on the configuration page. Perhaps it ought to be more hidden.
<beneroth> well I would only display this to the guy doing the permission configuration.
<beneroth> he has to know everything anyway
<beneroth> also, not all security policies improve security. often it is more about security theater - making the impression of security and initiative, to have plausible deniability and/or insurance
miskatonic has joined #picolisp
<beneroth> bbl
beneroth is now known as bene|off
<aw-> hi all
<Regenaxer> Hi aw-
<aw-> Regenaxer: how do i use (patch) to append some code to the end of a function?
<aw-> i've tried many variations and couldn't get it working
<tankfeeder> i give up with primes and combinations.
<tankfeeder> enough is enough.
<aw-> ¯\_(O_o)_/¯
<Regenaxer> aw-, probably modify the whole expression?
<Regenaxer> Or just 'conc'
<Regenaxer> (conc foo '((bar) (mumble))
<aw-> ok thanks!
<Regenaxer> tankfeeder, agree
<Regenaxer> getting crazy with all the primes
<tankfeeder> http://picolisp.com/5000/!wiki?99p98
<tankfeeder> i will adopt version to rosetta
<Regenaxer> great, looks like a fit
<miskatonic> now combine the whole prime thing with eval
mtsd has joined #picolisp
karswell_ has joined #picolisp
karswell has quit [Ping timeout: 248 seconds]
aw- has quit [Quit: Leaving.]
orivej has joined #picolisp
miskaton` has joined #picolisp
miskatonic has quit [Remote host closed the connection]
miskaton` has quit [Client Quit]
miskatonic has joined #picolisp
<tankfeeder> work slow or hanged.
<tankfeeder> first picture show, second 100% cpu usage
rob_w has quit [Ping timeout: 260 seconds]
mtsd has quit [Ping timeout: 240 seconds]
mtsd has joined #picolisp
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 258 seconds]
alexshendi has joined #picolisp
mtsd has quit [Remote host closed the connection]
miskatonic has quit [Read error: Connection reset by peer]
miskatonic has joined #picolisp
<tankfeeder> hell is recursive hell
alexshendi has quit [Ping timeout: 250 seconds]
orivej_ has quit [Ping timeout: 240 seconds]
rob_w has joined #picolisp
<tankfeeder> Regenaxer: here ?
alexshendi has joined #picolisp
<Regenaxer> ret
<tankfeeder> to use xchg
<tankfeeder> The only difference between this and the Knuth shuffle, is that {\displaystyle j} is chosen from the range 0 {\displaystyle \leq } j < i, rather than 0 {\displaystyle \leq } j {\displaystyle \leq } i. This is what ensures that every element ends up in a new position, as long as there are at least two elements.
<tankfeeder> oops
<Regenaxer> uh
<Regenaxer> I don't remember the details of Knuth shuffle
<Regenaxer> And, sorry, I'm a bit in a hurry
<Regenaxer> bbl
<tankfeeder> ok
orivej has joined #picolisp
<tankfeeder> i believe this real knuth.
<tankfeeder> they are brothers.
<tankfeeder> difference (rand 1 N) and (rand 1 (dec N))
_whitelogger has joined #picolisp
<Regenaxer> ret
<Regenaxer> Great, does it give correct results?
<tankfeeder> i think so
<Regenaxer> Perfect
freeemint_ has joined #picolisp
<freeemint_> Hi
<freeemint_> I did my first build and use my first recursive function which generates code yesterday.
bene|off has quit [Read error: No route to host]
cess11_ is now known as cess11
<Regenaxer> Shouldn't (de cipher (Lst D) rather be (de cipher (Str D) ?
<Regenaxer> or Txt if you don't want to exclude chopped lists
<tankfeeder> :)
<tankfeeder> ok
<tankfeeder> committing, right ?
<Regenaxer> one moment
<Regenaxer> let me try something
cess11 has quit [Quit: leaving]
<Regenaxer> It tried to avoid the index
cess11 has joined #picolisp
<Regenaxer> Hmm
<Regenaxer> not shorter, but without first counting with 'index' and then traversing with 'get':
<Regenaxer> (mapcar
<Regenaxer> '((N)
<Regenaxer> (or
<Regenaxer> (pick
<Regenaxer> '((A K) (and (= A N) K))
<Regenaxer> A K )
<Regenaxer> N ) )
<Regenaxer> What do you think?
<Regenaxer> I'm not sure which I like more
<tankfeeder> i take yours for fun and profit.
<Regenaxer> ok
<Regenaxer> yep, fun :)
<Regenaxer> Normally I prefer the shorter solution
<Regenaxer> But 'index' always feels wrong to me
<freeemint_> list is not big enough for idx to make sense.
<Regenaxer> Most probably though 'index' is faster here
<Regenaxer> yes, for short lists 'assoc' is better
<freeemint_> It did just roughly benchmark it. Even if the cypher comes sorted the building is not worth it
<miskatonic> are there still people complaining about the lack of arrays in picolisp?
<freeemint_> Not me
<Regenaxer> miskatonic, yes, sometimes
<freeemint_> I can build my own arrays if i want to.
<freeemint_> from Picolisp.
<freeemint_> Regenaxer: Are you mad at me?
<Regenaxer> why?
<freeemint_> Our interaction in the last two days was not as joyfull as it is normally
<Regenaxer> I just don't have so much time
<freeemint_> i see
<freeemint_> I was not able to save the algorithm you helped me with yesterday. So i wrote a function generated a finite number of nested loops which do the same work
rob_w has quit [Quit: Leaving]
miskatonic has quit [Quit: ERC Version 5.3 (IRC client for Emacs)]
beneroth has joined #picolisp
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #picolisp
karswell_ has quit [Read error: Connection reset by peer]