<aw->
so you can do it with Japanese, it's not like they will change anyways
<Regenaxer>
Not really sure, it must be more complicated
<Regenaxer>
due to the many locales
<Regenaxer>
Other users of pil might use other characters, not japanese
<Regenaxer>
One guy here complained, he was chinese iirc
<aw->
also doesn't work on 32-bit btw ;)
<aw->
'wcwidth'
<Regenaxer>
how did you try?
<Regenaxer>
larger char?
<aw->
(native) on OS X
<Regenaxer>
pil only uses up to 16 bits
<aw->
on my Mac
<aw->
pil +
<aw->
-> "漢字"
<aw->
漢字
<aw->
: ((p(p(p(p(p(prinl "漢字")
<Regenaxer>
yeah, same
<aw->
so your native is only good for 64-bit
<Regenaxer>
pil32 does not have 'native' (?)
<Regenaxer>
you have pil32 on an old Mac?
<Regenaxer>
We had lots of discussions here these days for pil on Mac again
<aw->
yes
<Regenaxer>
How does it run on yours? Very old?
<aw->
pil32 on an "old" Mac
<aw->
OS X
<Regenaxer>
yeah
<aw->
64-bit
<Regenaxer>
not clang yet
<aw->
no
<aw->
what is your question? i don't understand
<Regenaxer>
Hmm, I give up with wcwidth for now
<Regenaxer>
which question?
<Regenaxer>
wcwidth or Mac?
<aw->
what do you want to know about my Mac
<Regenaxer>
Mac is clear, as pil ran on old Macs
<Regenaxer>
it does not build on newer ones due to x86 and/or clang
<Regenaxer>
not the problem here
<aw->
really?
<aw->
32-bit pil builds fine on mine
<Regenaxer>
yes, lots of discussions here
<aw->
probably cause i dont have clang
<Regenaxer>
all the time
<Regenaxer>
yes, exactly
<aw->
tell people to stop using shitty Mac
<aw->
it's so crap nowadays
<Regenaxer>
pil32 does not build on clang due to dynamic arrays
<Regenaxer>
and no pil64 due to pic
<Regenaxer>
sigh ;)
<Regenaxer>
I give up
<Regenaxer>
must continue to work
<aw->
yes, and who knows what else will stop working when they start shipping their own CPUs with custom instruction set
<Regenaxer>
it is just frustrating
<aw->
i understand
<Regenaxer>
:)
<aw->
ttyl
<Regenaxer>
Thanks anyway!
mtsd has joined #picolisp
stultulo has joined #picolisp
f8l has quit [Ping timeout: 256 seconds]
stultulo is now known as f8l
<aw->
still fighting this cold, happy I don't have to leave my house when i'm sick :)
<Regenaxer>
good :)
stultulo has joined #picolisp
f8l has quit [Ping timeout: 240 seconds]
stultulo is now known as f8l
mtsd has quit [Remote host closed the connection]
<beneroth>
aw-, Mac plans to use a custom CPU architecture?
<beneroth>
Regenaxer, maybe 'wcwidth' doesn't see the correct environment variable. maybe set it yourself before doing the native call. just a random idea.
<Regenaxer>
I tried that
<Regenaxer>
LS_CTYPE
<Regenaxer>
LC
<Regenaxer>
But yes, it must be something simple like that
cilz has joined #picolisp
tankf33der has quit [Quit: Connection closed for inactivity]
dtornabene has joined #picolisp
cilz has quit [Ping timeout: 256 seconds]
<aw->
beneroth: i read somethin about that yeah
<Regenaxer>
I saw that it might be arm64-based
<Regenaxer>
That would be good for picolisp
<aw->
doubtful
<aw->
i would imagine 'arm' + '64' but not arm64 as we know it
<Regenaxer>
I don't think they'll invent a CPU from scratch
<aw->
well using arm doesn't mean invent from scratch
<Regenaxer>
So if "arm" something it will be ARMv8
<Regenaxer>
What counts for me is only the instruction set
<Regenaxer>
architecture
<aw->
i think they would use a custom ISA based on ARM
<aw->
Apple doesn't really care for compatibility with industry standards
<Regenaxer>
T
<aw->
they always do their own and then force everyone to upgrade
<aw->
"here's a new cable to charge iPhones"
<aw->
i would really like picolisp for RISC-V though ;)
<Regenaxer>
Yeah, but is the architecture suitable?
<aw->
absolutely
<Regenaxer>
We need access to the stack and flag registers
<Regenaxer>
these are for example not in llvm
<Regenaxer>
neither stack nor flags
<Regenaxer>
So it is useless and on the same level as C
mtsd has joined #picolisp
<Regenaxer>
level of VM-power I mean
<aw->
what is useless?
<Regenaxer>
The arch is then useless for pil64
<Regenaxer>
LLVM for example
<Regenaxer>
I wanted to use it initially
<aw->
you're comparing LLVM to RISC-V ?
<aw->
i dont understand
<Regenaxer>
but due to the above deficits I went to plain asm
<Regenaxer>
I'm asking
<Regenaxer>
as I don't know the power of RISC-V
<Regenaxer>
Does it allow stack and flag accesses?
<aw->
can you be more specific?
<Regenaxer>
How?
<aw->
what do you mean "stack and flag access" ?
<Regenaxer>
Can I push/pop the stack
<Regenaxer>
allocate space on it?
<Regenaxer>
Flags are Carry, Sign, Zero at least
<aw->
oh hmmm...
<aw->
i remember reading that it's designed to isolate certain operations
<Regenaxer>
See doc64/README
<Regenaxer>
"higher" abstractions give you an equivalent of C
<Regenaxer>
So we can stay with C
<beneroth>
aw-, O remember reading that RISC-V is safe against Spectre. which would mean no shared Level 3 CPU cache.
<beneroth>
I think aw- is probably right, unfortunately. ARM is often used in weird mix-ups (as eg. in this ARM64 with 32bit instruction set case Regenaxer had)
<Regenaxer>
No, the CPU was OK
<beneroth>
ah ok
<Regenaxer>
it was just a 32-bit Android on it
<beneroth>
ok
<Regenaxer>
stupid Samsung
<beneroth>
right
<beneroth>
anyway, Apple as to stonewall its garden
<aw->
Regenaxer: there's a stack pointer, you can push and pop from various registers based on that
<Regenaxer>
I think all ARMv8 are on the instruction level the same
<beneroth>
but would be an interesting switch of strategy, as they just switched from Motorola to Intel not that long ago...
<Regenaxer>
just the chips and periphery differ
<beneroth>
Regenaxer, I heard from setups in which multiple ARM versions were mixed.
<Regenaxer>
yes, small CPUs to save energy
<Regenaxer>
so perhaps that's why they needed a 32 bit OS
<aw->
i should write the pil64 port for RISC-V
<Regenaxer>
Yesss! Good idea
<Regenaxer>
You have a link to the instruction set at hand?
<Regenaxer>
So RISC-V also provides a castrated instruction set, because "high-level" languages don't need those features? Poor ... like LLVM ...
<Regenaxer>
To be honest, the picolisp VM is also castrated, as it restricted itself to only 3 flags: Zero, Sign and Carry
<Regenaxer>
no Overflow or Half-Carry etc.
<aw->
so, we should rewrite PicoLisp?
<aw->
:P
<beneroth>
no, just build picolisp machines :P
<aw->
there we go
<beneroth>
lets see who laughs if they can't run their C on it!
<beneroth>
probably them xD
<aw->
who needs C anyways?
<beneroth>
like.. everything with computers in it? :D
<beneroth>
(rounded)
<aw->
pft
<beneroth>
:D
<aw->
says you
<aw->
in a picolisp world, we wouldn't need C
<beneroth>
I say nuffin'
<beneroth>
T
<beneroth>
in a picolisp world, we don't calculate with floating numbers.
<aw->
haha yeah, seriously
<beneroth>
does someone here have experience with "Web Components" ? it is worth to have a look at, or just a "lets make the browser an OS and add some more bloated layers to it"-thingy?
<beneroth>
has stuff like "custom html elements" and templates and bla
<beneroth>
aw-, this could become a meme: in a picolisp world ... people can have 31 character long names in the database!
<beneroth>
in a picolisp world ... you can prove that the source is the running program!
<beneroth>
sriram_, in picolisp we're usually start counting with 1. as it is an index position, not pointer offset.
<sriram_>
beneroth> agreed...get confused with C sometimes..
<beneroth>
it's mainly a habit thing
<Regenaxer>
sriram_, right, so the solution with '@@' won't work
<Regenaxer>
'seek' overrides the count
<sriram_>
yes, in general, I think I would prefer to avoid using variables like @@ now that I know it is used internally
<sriram_>
in case by chance a call is made to a function that uses it
<sriram_>
I think there is no advantage to using that name (@@)?
<Regenaxer>
Right
<Regenaxer>
I would also prefer (let Cnt 0 ... Cnt)
<Regenaxer>
or (cons .. Cnt)
<sriram_>
agreed...(back to pdfPage for me :) )
<Regenaxer>
ok :)
<aw->
beneroth: you here?
<aw->
oh actually never mind, i was looking for some code but I found it
<aw->
it's in joebo's repo :)
alexshendi has joined #picolisp
<aw->
joebo: i will re-use your todo-backend-pil code, but I'm a bit confused about using (pool) in the parent and then writing to the database from forked processes… wouldn't this create race conditions for writing to the DB?
<aw->
if multiple clients connect at the same time..
<Regenaxer>
No, this is normal and OK
<aw->
or.. is DB shared with children???
<Regenaxer>
Yes, it *must* even be so
<aw->
ahhhhh
<aw->
perfect!!
<Regenaxer>
The parent is needed to synchronize the children
<aw->
<3 this is exactly what i needed
<aw->
i was actually sleeping, and woke up thinking about this haha thanks!
<Regenaxer>
Yeah, that's why I said "normal" and OK
<Regenaxer>
Is your cold getting better?
<aw->
yes somewhat, thanks
aw- has quit [Quit: Leaving.]
orivej_ has joined #picolisp
orivej has quit [Ping timeout: 255 seconds]
C-Keen has quit [Ping timeout: 264 seconds]
karswell_ has quit [Ping timeout: 264 seconds]
alexshendi has quit [Read error: Connection reset by peer]
alexshendi has joined #picolisp
C-Keen has joined #picolisp
C-Keen is now known as Guest11973
Guest11973 has quit [Changing host]
C-Keen has joined #picolisp
reed has joined #picolisp
alexshendi has quit [Read error: Connection reset by peer]