rob_w changed the topic of #picolisp to: PicoLisp language | Channel Log: https://irclog.whitequark.org/picolisp/ | Check also http://www.picolisp.com for more information || Attention due to latest spam floods this channel will only allow registered users to send messages - check https://freenode.net/kb/answer/registration
<pierpal> nope
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
<aw-> freemint: yes
Pugabyte29 has joined #picolisp
Pugabyte29 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
richvdh8 has joined #picolisp
richvdh8 has quit [Remote host closed the connection]
wiggle has joined #picolisp
orivej has quit [Ping timeout: 268 seconds]
<Regenaxer> razzy, np, usually I'm here
wiggle has quit [Remote host closed the connection]
groovy2shoes has quit [Quit: moritura te salutat]
groovy2shoes has joined #picolisp
Ellenor10 has joined #picolisp
Ellenor10 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
fossxplorer22 has joined #picolisp
fossxplorer22 has quit [K-Lined]
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
erkin has joined #picolisp
<freemint> Regenaxer Does the PilBox support 'intents'?
erkin has quit [Read error: Connection reset by peer]
<freemint> pierpal thanks
<Regenaxer> freemint: yes, intents are essential of course
<Regenaxer> See @lib/android.l
erkin has joined #picolisp
<aw-> hi all
<Regenaxer> Hi aw-!
Victorsueca14 has joined #picolisp
<aw-> Regenaxer: good WebSockets article
AimHere27 has joined #picolisp
Victorsueca14 has quit [Remote host closed the connection]
<aw-> i also use WebSockets for one project, but i use the implementation that's built into Nginx and Mosquitto (MQTT server)
<Regenaxer> Thanks!
<aw-> so in PicoLisp I only handle the receiving/sending of messages
<Regenaxer> ok
AimHere27 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
<aw-> i love the idea of having terminal access in the browser through websockets/picolisp
<aw-> i might want to copy that functionality
<Regenaxer> yeah, lots of use cases probably
<aw-> just worried about security ;)
alexshendi has joined #picolisp
<Regenaxer> Well, a full shell is not a good idea ;)
<aw-> why not? I've used many web-based shells, all good
<aw-> i would try to limit the program to User@FIXEDHOST
<Regenaxer> In an end-user GUI I mean
<alexshendi> Hi, picolispers!
<Regenaxer> Hi alexshendi!
<aw-> i don't like the idea that the UI can ssh into *any* host
<alexshendi> How are you?
<aw-> alexshendi: hi
<aw-> wow we have 3 Alex's talking now
<Regenaxer> Fine! I hope you too!
<Regenaxer> haha, indeed
<alexshendi> Yes, I am fine too...
<freemint> Regenaxer so Intents are just some class like any other?
<Regenaxer> freemint, correct
<freemint> ok that makes me less worried
<Regenaxer> Why were you worried?
<freemint> because it looked like a keyword
<freemint> to me but my Java is just rusty
<Regenaxer> ok, yeah, no worry then
<freemint> can you explain a little how you made Java look like a database and what gave you this idea?
<Regenaxer> It came automatically as the most natural way
<freemint> wjat makes it so natural?
<Regenaxer> Java objects are simply "remote" DB objects
<Regenaxer> hmm, harder to explain than it actually is
<Regenaxer> The *Ext mechanism is exactly for such things
<freemint> i need grok the remote dB interface (and the normal one too) . are there some resources?
<Regenaxer> accessing external symbols by specifying functions
<Regenaxer> I would start with (doc '*Ext)
<Regenaxer> Not sure if well explained there though
<Regenaxer> Whe point is that an external symbol is specified by two parts
<Regenaxer> 1. A file
<Regenaxer> 2. An offset into that file
<alexshendi> Does anyone here know if a Snapdragon 430 (ARM A53 core) is 64bit?
<Regenaxer> The "file" can be anything, not necessary a local file
<Regenaxer> alexshendi, I would think so. Coretex A53
<aw-> alexshendi: yes it is
<aw-> alexshendi: i'm using it now
<alexshendi> So it will run 64bit pil?
<Regenaxer> yes
<Regenaxer> What OS?
<alexshendi> Android
<aw-> alexshendi: yes
<aw-> runs on Android and regular 64-bit ARM Linux
<alexshendi> With Termux
<Regenaxer> So you could easily test by installing PilBox
<Regenaxer> yes, Termux is even better
<aw-> my phone has the exact same CPU as my work computer, both have PicoLisp
<aw-> without Termux
<alexshendi> Does your Phone run Linux?
<Regenaxer> $ pil -version -bye
<aw-> alexshendi: no, Android (LienageOS 7)
<Regenaxer> 18.6.28
<aw-> LineageOS*
<Regenaxer> Termux is also available from f-droid
<Regenaxer> in LineageOS
<aw-> Regenaxer: termux isn't required for PilBox
<Regenaxer> right, separate
<Regenaxer> But useful to write PilBox apps
<alexshendi> So I could try LineageOS,...
<Regenaxer> using zip and termux-share
<Regenaxer> alexshendi, yes, that's best
<aw-> alexshendi: not all devices have available LineageOS builds
<Regenaxer> Or just go with plain Google Android
<Regenaxer> less risky
<Regenaxer> I did both, LineageOS and Google
<Regenaxer> I Google disabled most apps
<aw-> Regenaxer: haha yes risky! i bought this smartphone specifically to install LineageOS so there was no risk in my case
<Regenaxer> ok, same here, but at some point LinOS did not install
<aw-> didn't realize the CPU was the same as my rock64. Happy coincidence haha.
<alexshendi> It seems the device I'm contemplating (Motor G6 Play) has no support.
<Regenaxer> Just after CyanogenMod closed down
<alexshendi> s/Motor/Moto/
<aw-> alexshendi: it's too new
<Regenaxer> yes, only G4 Play it seems
<alexshendi> aw-: Seems so.
<freemint> Regenaxer you develop on Android tablets sometimes, how does that go?
<Regenaxer> I like it very much
<aw-> alexshendi: before thinking about LineageOS though, you need to know if it can be unlocked, and if TRWP can be installed.
<freemint> ok and how do you do it?
<Regenaxer> Work on tablet only, no notebook any more
<Regenaxer> freemint, I described it in https://picolisp.com/wiki/?TermuxPentiPicolisp
<Regenaxer> Connecting to production servers via ssh and tmux on both sides
<aw-> alexshendi: check the Devices List on https://twrp.me - that should be the first place to look for phone support. If it's listed there, then there's likely also Unofficial builds of LineageOS for it.
<freemint> ok, so your way if working is not friendly towards beginners
<Regenaxer> no idea
<freemint> there seems to be a lack of android optimized (touch input) IDEs
<aw-> alexshendi: if you only want PilBox, i think it runs on regular Android as Regenaxer suggested
<freemint> afp
freemint has quit [Ping timeout: 240 seconds]
orivej has joined #picolisp
tankf33der has joined #picolisp
<aw-> m_mans: here?
<aw-> away since May 28 :\
freemint has joined #picolisp
freemint has quit [Client Quit]
<tankf33der> aw-: try email
freemint has joined #picolisp
freeemint has joined #picolisp
freemint has quit [Ping timeout: 256 seconds]
freeemint has quit [Ping timeout: 256 seconds]
freemint has joined #picolisp
<aw-> tankf33der: good idea, email sent, thanks.
jibanes has quit [Ping timeout: 260 seconds]
jibanes has joined #picolisp
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
freemint has quit [Ping timeout: 240 seconds]
modin2 has joined #picolisp
modin2 has quit [K-Lined]
kepler_mach16 has joined #picolisp
kepler_mach16 has quit [Remote host closed the connection]
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
jamesl has joined #picolisp
jamesl has quit [Killed (Sigyn (Spam is off topic on freenode.))]
Zanzibar21 has joined #picolisp
Zanzibar21 has quit [Remote host closed the connection]
jibanes has quit [Ping timeout: 256 seconds]
jibanes has joined #picolisp
lynxis1 has joined #picolisp
lynxis1 has quit [Ping timeout: 240 seconds]
Dwarf14 has joined #picolisp
razzy has quit [Read error: Connection reset by peer]
Dwarf14 has quit [Ping timeout: 248 seconds]
<tankf33der> Regenaxer: what options exists to run any versions of pil on macos?
<tankf33der> im about Matz email and patch
alexshendi has quit [Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org]
<Regenaxer> Hmm, options? You mean Ersatz?
<tankf33der> yea
<Regenaxer> Matz patch is supposed to get pil32 running
<tankf33der> so pil64 already works, right?
<Regenaxer> No, not at all
<Regenaxer> position independent code needed, old problem
<tankf33der> so patch offers first time ever run pil on macos
<tankf33der> correct?
<Regenaxer> not ever, as it worked before they switched to clang
<tankf33der> i see
<tankf33der> no gcc on macos?
<tankf33der> i can have clang and gcc and whatever i want on linux
<Regenaxer> Good question
<Regenaxer> yeah
<tankf33der> i can compile pil32 on old gcc 4.XX
<Regenaxer> ok, so if it were available on MacOS it would be fine? Needs also libs etc
<tankf33der> if gcc works i suggest dont touch pil32
<Regenaxer> I see. Perhaps ask Matz if he can install gcc?
<Regenaxer> On the other hand, there are more people asking for pil32 on Mac
<Regenaxer> So the patch would be good if it worked
<tankf33der> maybe include patch and readme to distribute
<Regenaxer> yes, also a good idea
<tankf33der> as i can read it already cought a crash
<Regenaxer> I don't want to bother with pil32 so much, waste of time ;)
<tankf33der> i know, thats why i dont want you patch pil32
<Regenaxer> T
<tankf33der> patch only + wiki
<tankf33der> Matz could support both above
<Regenaxer> Hmm, but in the long range not good
<tankf33der> long range of what?
<Regenaxer> If the sources ever change, we need to fix the patch
<Regenaxer> pil32 sources
<tankf33der> of course, i call it support
<Regenaxer> hmm
<tankf33der> i can try apply patch and compile once a year
<tankf33der> not big deal
<Regenaxer> But if new functions using bindFrames are added, oa the order changes, the patch becomes useless
<Regenaxer> In the long range it would be better to change the sources to such arrays
<Regenaxer> ugly code though
<Regenaxer> And mini needs to be changed too
<Regenaxer> So indeed using gcc on Mac would be much better ;)
orivej has quit [Ping timeout: 268 seconds]
<tankf33der> Regenaxer: strange Matz cant install gcc
<tankf33der> you should post issues to ML
<Regenaxer> He can't install? Have you asked him?
pierpal has quit [Quit: Poof]
pierpal has joined #picolisp
<Regenaxer> I think we should test his patch, and then release it as the future pil32
<tankf33der> ok
<tankf33der> my english is dead
<tankf33der> cant write mails
<Regenaxer> No problem
<Regenaxer> I wrote to the list to find out what the abort test failure means
<Regenaxer> If you had time, you could apply the patch to some local pil32 installation (on Linux or whatever) and see if the unit tests pass
<Regenaxer> No hurry though
<tankf33der> next week
<tankf33der> im on vacation
<Regenaxer> Sure!
<Regenaxer> Where is that?
<Regenaxer> Also so hot? (we had 34 C today)
<tankf33der> the same
<tankf33der> on baltic sea
<tankf33der> im from Riga
razzy has joined #picolisp
<Regenaxer> yes, I know
<razzy> hi people, i have problem. when i pul 100MB file into list in picolisp it seems to break down
<tankf33der> razzy: break down?
<tankf33der> memory issue?
<tankf33der> maybe you want mmap on file?
<tankf33der> blake checksum on file
<tankf33der> checked on 7GB iso
<tankf33der> and works as original b2sum too
<razzy> tankf33der: when i put big file in it,it consume 100percent of processor core for a while, than do nothing. 100KB subsets of same file works fine.
<tankf33der> yea
<razzy> using (setq wikina2 (in "enwiki8-start" (till NIL)))
<razzy> standard apt-get installation
<tankf33der> its the same (need 100000000 0)
<razzy> tankf33der: ?
<tankf33der> laptop is busy
<tankf33der> cant repeat
<tankf33der> 100mb file was not issue this spring
<tankf33der> what is your memory size on pc?
<tankf33der> what is pil process size after read 100mb file?
<tankf33der> so reading 100mb file to list is the same as create a list with 100M items
<tankf33der> (need 100000000 0)
<tankf33der> creates 100M zeroes in list
razzy has quit [Ping timeout: 255 seconds]
razzy has joined #picolisp
<razzy> tankf33der: i am using raspberry3 ARM architecture, classic rapsbian/debian cca 900MB ram 1900MB swap on SSD (fast). 4cores. never all busy. pil process eat up 600MB
<Regenaxer> razzy, how does your code look like?
thunderrd24 has joined #picolisp
thunderrd24 has quit [Remote host closed the connection]
<Regenaxer> Ah, sorry, is it (in "enwiki8-start" (till NIL)) ?
<Regenaxer> I think you get lots of garbage collections by growing the heap slowly
<Regenaxer> if it is a 64-bit system, a 100MB file gives 1.6 GiB of list data
<Regenaxer> If you have such a big memory, do (gc 1600) to pre-allocate. It is a lot faster then
<Regenaxer> But on a raspi the memory simply is too small, and you get a lot of swapping
<Regenaxer> So it doesnt make sense at all to read such a long list
<Regenaxer> What to do with such a list?
<razzy> Regenaxer: it looks (setq wikina2 (in "enwiki8-start" (till NIL))); in repl
<Regenaxer> yes
<Regenaxer> See what I wrote
<tankf33der> Regenaxer: (gc 1600) will not help.
<Regenaxer> yes, he has only 900MB ram
<Regenaxer> too small
<tankf33der> yeap.
<Regenaxer> It is a bad idea to build such a huge list. Nothing useful to do with it :)
<Regenaxer> At least nothing you can do on the file directly
<Regenaxer> bbl
<tankf33der> razzy: try mmap then, look at my b2sum example.
<razzy> Regenaxer: you are wrong :]
<razzy> i want random acces
<tankf33der> razzy: you cant, list dont set in your memory
<tankf33der> do you want compare random access on list?
<tankf33der> :)
razzy has quit [Read error: Connection reset by peer]
milky22 has joined #picolisp
milky22 has quit [Killed (Unit193 (Spam is not permitted on freenode.))]
razzy has joined #picolisp
<razzy> tankf33der: Regenaxer: you was right. when i reach 600MB in ram and start swapping, it brek down everything.
<Regenaxer> razzy, a hundred million cells long list is absolutely not the way for "random access"! :D
<Regenaxer> What do you want to do with these data?
<Regenaxer> Normally, you read small chunks of data and operate on them
<Regenaxer> Such a long list is completely useless
<Regenaxer> Operating on it non-destructively needs the same amount of space several times
<razzy> tankf33der: when i put file in list, it lives in my ram
<Regenaxer> Well, not "lives" :)
<Regenaxer> it is rather dead
<Regenaxer> What do you want to do?
<Regenaxer> search? transform?
<Regenaxer> For complicated stuff, import them into the database
<Regenaxer> to get structures, indexes etc.
<Regenaxer> bbl
<razzy> Regenaxer: i want to transform :] ,.. i guess i want FIFO buffer 1KB long :]
<Regenaxer> ret
<Regenaxer> Good, then you could use the 'fifo' function
<Regenaxer> But better is in my experience to read small chunks
<Regenaxer> (char) (skip) (from) (till) (line) and (peek) etc
<Regenaxer> Do these data in the file have any structure?
<Regenaxer> Lines?
<Regenaxer> or parsable?
<Regenaxer> For an example of a parser, look at e.g @lib/xm.l
<razzy> i am testing compression algorithms
<razzy> so i want to rearenge files :]
<razzy> *rearange parts of file
<Regenaxer> ok
<tankf33der> compression algo on rosetta too
<razzy> fuck me,... thx
<razzy> wtf, where did my day go?
<razzy> :D
<tankf33der> maybe you implement something different
<tankf33der> learn something new is always a win
<razzy> found already
<Regenaxer> Yeah, days pass too fast! :)
<razzy> hoffman is awesome :]
rob_w has joined #picolisp
zz_ka6sox has joined #picolisp
zz_ka6sox has quit [Remote host closed the connection]
<razzy> btw, is there some help to functions?
<razzy> something like apropos
<razzy> from where is it loading libraries like "@lib/eled.l" ?
Oats87 has joined #picolisp
Oats87 has quit [Killed (Sigyn (Spam is off topic on freenode.))]
razzy has quit [Read error: Connection reset by peer]
razzy has joined #picolisp
<razzy> if you written anything, i lost last 40 minutes
<tankf33der> there is log recorded on channel
<tankf33der> check topic for url
orivej has joined #picolisp
<razzy> found functions online, next best thing i guess :]
<razzy> oh, the functions are messy
<razzy> everyone doing so much shit :D
ovrstorm26 has joined #picolisp
ovrstorm26 has quit [Killed (Unit193 (Spam is not permitted on freenode.))]
rob_w has quit [Read error: Connection reset by peer]
<aw-> tankf33der: i looked at your xxHash code yesterday, and some other hash implementations.. pretty good.
<aw-> tankf33der: enjoy vacation, looks nice
<aw-> Regenaxer: I have an "older" Mac running pil32, tbh I think more people would be happy to have pil64 on Mac. Pil32 is indeed a waste of time.
<aw-> oh i see this was discussed in mailing list