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
_whitelogger has joined #picolisp
xkapastel has quit [Quit: Connection closed for inactivity]
orivej has quit [Ping timeout: 272 seconds]
NB0X-Matt-CA has quit [Ping timeout: 244 seconds]
NB0X-Matt-CA has joined #picolisp
orivej has joined #picolisp
freemint has joined #picolisp
<freemint> Guten Morgen
<Regenaxer> Hi freemint
aw- has quit [Remote host closed the connection]
<freemint> catching up on the IRC logs
<freemint> beneroth The great accomplishment and reason for management existence is the reduction of procrastination
<Regenaxer> Procrastination is a good thing. Important. It stimulates creativity.
<freemint> I read an article by a German investor who founded an software house with minimal oversight and everyone started playing shooters on the powerful rigs all day and no work got done
<Regenaxer> yes, this is possible too
<freemint> the accomplishment of management is to keep everybody so busy that the company surivives
<Regenaxer> busy is not enough
<Regenaxer> or even bad
<freemint> i tried to not phrase it overly productive
<freemint> positive
<freemint> other question. If i were paid to model a train system would it be better to go with a language which already has library for such a thing, or better to write my own system?
<Regenaxer> What kind of libraries exist to model train systems?
<freemint> implementation of all the signaling systems
<Regenaxer> nice
<Regenaxer> I would do both
<Regenaxer> Study existing systems and at the same mime build my own
<Regenaxer> or merge them
<freemint> i see
<Regenaxer> I could not do it out of nothing
<freemint> if you were tasked to write an large simulation software with optimization features for scheduling for train networks, what parts would you write in PicoLisp and which parts in C?
<Regenaxer> Initially I see no use for C, unless there are native libs to be called
<freemint> it is not like this is something i need to do. But it is something that i might want to do in half a year or so.
<Regenaxer> Surely interesting
<freemint> some erlang like system could work for simulating systems like that.
<freemint> have you thought about inp
<freemint> implementing a "thousand independent actors executed by one process per core like system
<freemint> might also be called "green threads"
shpx has joined #picolisp
<freemint> a library for that would probably called er.l but name has already another meaning
shpx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
xkapastel has joined #picolisp
<Regenaxer> I think for such cooperative threading you need no lib
<Regenaxer> Pil has the necessary mechanisms
<Regenaxer> IPC, tasks and coroutines
<freemint> you could even write something preemptive (by the way erlang is preemptive)
<razzy> you mean some non-deterministic programming?
<freemint> razzy, who are you talking to?
<freemint> ans what are you talking about
<tankf33der> hi all
<tankf33der> i want try to implement demo client server networking code to securily send something on picolisp. is ping pong counts? any ideas?
<tankf33der> maybe add handshake proto to this code?!
<razzy> freemint: to you
<freemint> razzy i may want to model a non deterministic system.
<freemint> tankf33der how about sending "password"
<freemint> or a remote DB client with that
<tankf33der> ok
<razzy> freemint: so statistic modeling is your answer
<razzy> bayesian or othervise
<Regenaxer> tankf33der, yes, handshake can easily be added
<tankf33der> i will do it for this rosetta task
<Regenaxer> I have lots of such code, often between mobile devices and server
<tankf33der> looking forward
<Regenaxer> good :)
<Regenaxer> The example does send a response
<Regenaxer> in the "reply"
<freemint> razzy not really since i want to model processes with memory
<razzy> freemint: how can you model memory processes other than deterministic?
<razzy> yuck
<razzy> freemint: how can you model memory processes other than with statistic?
* razzy is still having problem understood picolisp-chess :]
aw- has joined #picolisp
aw- has quit [Client Quit]
<Regenaxer> razzy, I suggest to inspect the objects with 'show' to understand the data structures
<tankf33der> razzy: i was always wonder why you take so huge tasks
aw- has joined #picolisp
<tankf33der> insane.
<Regenaxer> : (show 'c3)
<Regenaxer> c3 ((b3 . d3) c2 . c4)
<Regenaxer> whAtt ("WhiteKnight" "WhitePawn" "WhitePawn")
<Regenaxer> y 3
<Regenaxer> color
<Regenaxer> x 3
<Regenaxer> -> c3
<razzy> show i underuse,.. thx
<razzy> tankf33der: it is just chess
<Regenaxer> yeah
<Regenaxer> : (show 'd1 'piece)
<Regenaxer> "WhiteQueen" (+White +Queen)
<Regenaxer> attacks (c1 e1 d2 c2 b3 e2 f3)
<Regenaxer> cnt 0
<Regenaxer> field d1
<Regenaxer> ahead ((This) (: 0 -1 -1))
<Regenaxer> -> "WhiteQueen"
<Regenaxer> But tankf33der is right, the chess stuff is not one of the simpler examples
<tankf33der> indeed.
<tankf33der> small steps on long road...
<razzy> chess is simple example. chess.l is overcomplicated to show picolisp features
<tankf33der> no its not.
<razzy> ok,. my simple road is make queen go max 2 squares
<razzy> so change queen movement
<Regenaxer> Instead of 'show' you can also (edit 'd1) and then klick through the objects with K
<Regenaxer> yes
<razzy> tankf33der: computationally effective chess are difficult. chessAI is difficult.
<razzy> simple chess engine with unoptimizes alfa-beta search and terribly simple value|cost function should be easy
<freemint> razzy by doing statistics over simulation results
<razzy> freemint: using statistics to prune possible simulations
<freemint> you can do that only if you you have certain situations
<freemint> not all distributions can be modeled in a sensible way
<razzy> statistics can be done for every posibility, that is why it is called statistics :]
<razzy> ugly and unprecise
<tankf33der> afk
<razzy> freemint: if you have small number of examples to make statistics from, you need to simulate heavily, or make some xperiments
<freemint> razzy no that won't work. The state dependent processes maybe influence each other in non continous ways. you can throw all mathematics out of the window when you have such processes
<freemint> (or you need elliptic integrals and have fun with those and non continous functions)
<razzy> ah,.. ok :] if you want to make predictions for non-predictable enviroment i wish you good luck
<razzy> basic statistic is always good start.
<razzy> freemint: do you have some use-case?
<freemint> i am looking into train scheduling
<razzy> like warp travel, or superconducting fluids?
<freemint> nope... just plain metal trains
<razzy> and you want to predict them in 100%?
<freemint> no i want see how mathematical modeling compares to an better approximation of reality
<razzy> freemint: trains provide lots of data and are good for studying complex systems :]
<razzy> i am still stuck at trying to walk my queen
<freemint> ;)
<razzy> aaaah, (show class) makes much more sense,.. if i do not have () the source drives me mad :]
<Regenaxer> (show class) is useless
<Regenaxer> (show 'class) ?
<razzy> i meant (show +piece)
<Regenaxer> hmm
<Regenaxer> Same a just +piece
<Regenaxer> 'show' is more for objects, properties
<razzy> hmm
<Regenaxer> : (show 'd1 'piece)
<Regenaxer> ie runtime inspection
<Regenaxer> not static definitions
<Regenaxer> they are better viewed in the source
<Regenaxer> (vi '+piece)
<razzy> hmm hmm :]
<tankf33der> Regenaxer: have 5min? im about tcp client server
<Regenaxer> yes
<tankf33der> i need send receive lists
<tankf33der> lists of bytes
<tankf33der> so
<tankf33der> i need send over tcp this: (sendme (chacha20 (mapcar char (chop "abc"))))
<Regenaxer> PLIO is best
<Regenaxer> 'pr' and 'rd'
<tankf33der> PLIO ok
<Regenaxer> is both server and client pil ?
<tankf33der> of course.
<Regenaxer> ok :)
<tankf33der> another question:
<Regenaxer> So sending "abc" (transient) is shorter than a list of numbers
<tankf33der> (pr "abc") and (pr (mapcar char (chop "abc"))) are both ok
<Regenaxer> ie the receiver does the mapcar
<tankf33der> right ?
<Regenaxer> yes
<tankf33der> chacha returns list
<Regenaxer> (pr "abc") uses less bandwidth
<tankf33der> so abc becames (56 55 121)
<Regenaxer> similar :)
<Regenaxer> 97 ...
<tankf33der> actually chacha will returns (56 55 121) and plus 16 bytes as MAC for auth
<tankf33der> so 3 + 16 bytes
<Regenaxer> ok
<tankf33der> on receiver i will read 19 and check last 16 for auth
<tankf33der> all this ok for PLIO, right ?
<Regenaxer> yes, but best is to send the whole list
<tankf33der> yes, of course.
<Regenaxer> not individual numbers
<Regenaxer> ok
<tankf33der> ok
<tankf33der> thats all for today
<Regenaxer> great! :)
<tankf33der> i will spent all my time for this task
<tankf33der> looking forward.
<Regenaxer> :)
alexshendi has joined #picolisp
alexshendi has quit [Read error: Connection reset by peer]
alexshendi has joined #picolisp
alexshendi has quit [Ping timeout: 244 seconds]
shpx has joined #picolisp
shpx has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<razzy> tankf33der: all your free time?
<tankf33der> yea
<tankf33der> picolisp is a trap
<tankf33der> razzy: run!
shpx has joined #picolisp
<tankf33der> ibm buying redhat
<tankf33der> damn.
<razzy> :D certainly feels like it :]
ubLIX has joined #picolisp
<razzy> i think picolisp is good. but god damm unreadable :]
razzy has quit [Ping timeout: 272 seconds]
razzy has joined #picolisp
<Regenaxer> A language you don't know is always unreadable
<razzy> good way i can think of is make my own picolisp library with changed syntax
<razzy> Regenaxer: T
razzy` has joined #picolisp
razzy has quit [Read error: Connection reset by peer]
xkapastel has quit [Quit: Connection closed for inactivity]