vip shortcut for (doc 'fun)

2021-12-10 Thread Radek Svoboda
vip has to be run in debug mode for (doc) to work. $pil -vi +

(de *KeyMap-g
("h"  # Search word under cursor
   (and (getWord T "~") (doc (car (str (pack @)) #str is troublesome, be 
carefull when modifying
)

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Re: vip shortcut for (doc 'fun)

2021-12-10 Thread Alexander Burger
Hi Radek,

> vip has to be run in debug mode for (doc) to work. $pil -vi +
> 
> (de *KeyMap-g
> ("h"  # Search word under cursor
>(and (getWord T "~") (doc (car (str (pack @)) #str is troublesome, be 
> carefull when modifying
> )

Thanks!

Yes, 'str' is not necessary here. You can use 'intern' directly

   (and (getWord T) (doc (intern (pack @

Also, I just noticed that the second argument "~" to 'getWord' is not needed. I
don't remember what it was for ;)

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Picolisp on 8 bits - 64kb RAM?

2021-12-10 Thread yves gerey
Bonjour, noob here, but FP enthousiast and [Z80 connaisseur](
http://orgams.wikidot.com/)!

I'd like to port a lightweight language to a Z80-based computer older than
you (the Amstrad CPC 6128), and to CP/M as well if there is interest.
* Sub-goal: porting a vm/interpreter.
* Main goal: having the whole toolchain on the native machine (no
cross-generation).
More context [here](
https://www.pouet.net/topic.php?which=12155&page=1#c571455).

Homoiconic languages seem particularly adapted, since the main goal would
be mostly covered by the sub-goal!

My first questions are:
- What is the most advanced related work you know?
- Is anyone interested to work on that with me? (I'm an outgoing introvert,
according to my dog).

Cheers!

-- 
-- 
λves


Re: '(struct ...)' alignment issue

2021-12-10 Thread Alexander Burger
Hi Jason,

>   o Interpretation of a 'struct descriptor value of '( NIL . sz )'
> or '( F . sz ) ( Fill / Fix ( since 'P and 'I are taken))  ?

This sounds like a good idea. Using NIL would be along the line of "void" in the
context of result specifications. Let me investigate.


>And, as other commentators suggested, please do ammend
>the documentation to expand a bit on the sentence:
>   "Creates or extracts data structures, suitable to be passed
> to or returned from native C functions.
>"
>   by appending
>   "IFF they specify C native aligned structures or parameters
>with expected pad bytes .
>   " or something like that.

I will remove the "C" from the 'struct' and 'native' references. It can be any
language.

But I do not want do put too much emphasis on the padding or alignment issues.
It is clear that the programmer has to pass the right structure, and also take
care of other aspects like integer sizes, little or big endian, character
encodings or ownership of buffers. This goes beyond the scope of the reference.

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Re: Picolisp on 8 bits - 64kb RAM?

2021-12-10 Thread Alexander Burger
Hi yves,

> Bonjour, noob here, but FP enthousiast and [Z80 connaisseur](
> http://orgams.wikidot.com/)!
> 
> I'd like to port a lightweight language to a Z80-based computer older than
> you (the Amstrad CPC 6128), and to CP/M as well if there is interest.

Not older than me ;)


> - What is the most advanced related work you know?
> - Is anyone interested to work on that with me? (I'm an outgoing introvert,
> according to my dog).

Maybe this predecessor of PicoLisp is useful:

   https://software-lab.de/8kLisp.tgz

It is written in Z80 assembly for CP/M.

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Re: Picolisp on 8 bits - 64kb RAM?

2021-12-10 Thread Jean-Christophe Helary



> On Dec 11, 2021, at 7:27, Alexander Burger  wrote:
> 
>   https://software-lab.de/8kLisp.tgz
> 
> It is written in Z80 assembly for CP/M.

Wow ! I wish I had that for my ZX81 back in the days :)


-- 
Jean-Christophe Helary @brandelune
https://mac4translators.blogspot.com
https://sr.ht/~brandelune/omegat-as-a-book/


-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Re: '(struct ...)' alignment issue

2021-12-10 Thread Cesar Rabak
Sounds good, thanks!

On Fri, Dec 10, 2021 at 7:23 PM Alexander Burger 
wrote:

> Hi Jason,
>
> >   o Interpretation of a 'struct descriptor value of '( NIL . sz )'
> > or '( F . sz ) ( Fill / Fix ( since 'P and 'I are taken))  ?
>
> This sounds like a good idea. Using NIL would be along the line of "void"
> in the
> context of result specifications. Let me investigate.
>
>
> >And, as other commentators suggested, please do ammend
> >the documentation to expand a bit on the sentence:
> >   "Creates or extracts data structures, suitable to be passed
> > to or returned from native C functions.
> >"
> >   by appending
> >   "IFF they specify C native aligned structures or parameters
> >with expected pad bytes .
> >   " or something like that.
>
> I will remove the "C" from the 'struct' and 'native' references. It can be
> any
> language.
>
> But I do not want do put too much emphasis on the padding or alignment
> issues.
> It is clear that the programmer has to pass the right structure, and also
> take
> care of other aspects like integer sizes, little or big endian, character
> encodings or ownership of buffers. This goes beyond the scope of the
> reference.
>
> ☺/ A!ex
>
> --
> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
>


Re: Picolisp on 8 bits - 64kb RAM?

2021-12-10 Thread yves gerey
Wow, excellent, commented source code! Very much appreciated.
I plan to adapt that to my own assembler, and let you know.

On the other hand, I'm still convinced that modern PL features are not only
feasible on low-tech hardware, but actually beneficial!

In any case, your version will definitely be useful!

Warm regards,
Yves


Le ven. 10 déc. 2021 à 22:55, Jean-Christophe Helary <
li...@traduction-libre.org> a écrit :

>
>
> > On Dec 11, 2021, at 7:27, Alexander Burger  wrote:
> >
> >   https://software-lab.de/8kLisp.tgz
> >
> > It is written in Z80 assembly for CP/M.
>
> Wow ! I wish I had that for my ZX81 back in the days :)
>
>
> --
> Jean-Christophe Helary @brandelune
> https://mac4translators.blogspot.com
> https://sr.ht/~brandelune/omegat-as-a-book/
>
>
> --
> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
>


-- 
-- 
λves