Article on fixed-point arithmetic in picolisp

2016-09-05 Thread rick
Hello list!

Here is a blog post that I wrote about fixed-point number operations in
picolisp.

http://the-m6.net/blog/fixed-point-arithmetic-in-picolisp.html

It was fun to write and I hope you find it useful.  It might be a bit
tedious for the veterans because it is written to inform a relative
newcomer to picolisp about such things.  Anyway, as always, I'd
appreciate any comment upon it by all you sharp folks who regularly
teach me things here and on IRC.  Thanks!

All the best, --Rick (rick42)

P. S. -- I thought that writing this would be fairly easy; then I got
into it.  :/  When I thought I was finished, I didn't realize that I had
 more work to do and consequently I delayed publishing for another week.
 Wow.  And that wringer was just *one* post!  I don't think I could do
an *entire blog* on picolisp as some of you do -- that's for you
adventurous and energetic people.  :D
-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe


Re: Tiny Lisps for OpenWRT/LEDE ?

2016-09-05 Thread Jeronimo Pellegrini
Hello,

On Mon, Sep 05, 2016 at 03:46:27PM -0700, Henry Baker wrote:
> I seem to recall that OpenWRT used to have a tiny
> Scheme as part of its distribution, but that seems
> to have disappeared in more recent releases.

I used to maintain ports of PicoLisp, TinyScheme and Retro
(a variant of Forth) for OpenWRT here:

http://aleph0.info/jp/software/lisp-forth-openwrt/

Due to lack of time (I unintentionally got involved in a World
domination project), I could not update the patches for the
latest versions of both OpenWRT and the Lisps/Forths. But it should
be easy to update them.
That page also has instructions for running them on qemu images of
OpenWRT, for testing.

Also, OpenWRT used to have a repository for the core system, and
there was another with lots of packages, including Sigscheme.
The subversion URL was svn://svn.openwrt.org/openwrt/packages/lang

J.

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


Tiny Lisps for OpenWRT/LEDE ?

2016-09-05 Thread Henry Baker
I seem to recall that OpenWRT used to have a tiny
Scheme as part of its distribution, but that seems
to have disappeared in more recent releases.

Do any of you know of any Tiny Lisps for OpenWRT/LEDE?

www.openwrt.org

www.lede-project.org

Thanks in advance for any pointers/links.

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


Re: PicoLisp repository at Bitbucket.org

2016-09-05 Thread rick
On Sun, 04 Sep 2016 10:48 +0500, Mansur Mamkin wrote:
> Hi all,

Hi Mansur!

> I've cloned tankfeeder's repository at Bitbucket and installed small
> pil-application that checks http://software-lab.de/picoLisp.tgz for
> changes and commits to the repo.  Repository address is
> https://bitbucket.org/mmamkin/picolisp I plan to maintain it while I
> have VPS :).

Ah, very cool!  I like being able to view the diffs for each version
(from the one previous to it) in a convenient way and with nice
formatting like this.  (So, thanks also to tankfeeder whom I understand
started this.)

Also having a script which checks periodically the "source" and
automatically creates a commit for any changes is "icing on the cake". 
Nice hack!  :)

> Also we could install there some auto building scripts to provide
> fresh deb-package. I would appreciate any ideas and help

That sounds cool too.  I wish I could help.  I don't use Debian (or
derivatives).  I hope someone is willing to help because it was a shame
how Alex asked for an update to the picolisp package in Ubuntu and was
getting "crickets".  :(  Better if we have something like your idea here
in play.

> Source code is listed below. Comments are welcome

I love this script, man.  I like the "and chain" in the driver --
reminds me of `A && B && C` in shell.  I like how you got it (curl) to
check for changes and only if there are, download.  And overall it's
simple and easy to read.  I would want you to be hired on my team
because this is the kind of code that I would not mind at all to
maintain!

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


Re: PicoLisp as Femto extension language

2016-09-05 Thread Thorsten Jolitz
Thorsten Jolitz 
writes:

Hi List, 

[funny enough, in GNUS Ricks posts to this thread don't show up for me,
while I can see them in the www.mail-archive.com, so I follow up to my
own post instead of his.]

My original idea was to compile Femto as shared library, create FFI
wrapper libraries for PicoLisp, and have buffers instead of only a
single line to edit and evaluate PicoLisp code. A bit naive probably.

Replacing Femto-lisp with PicoLisp as extension language seems to be the
way to go, but is over my head I'm afraid. I thought, with the core
editor functions already defined in C (using the gap buffer concept), it
would be just about wrapping these basic functions (and data structures)
in PicoLisp and one could start to write cool interactive editor
features based on this Core libraries, just like in Emacs (Lisp).

But solving the fundamental communication problem between the two
systems is something else ...

Thanks for the anwsers, Rick.


> Hi List,
> recently I found out about Femto, a minimal Emacs implementation in less
> than 2k lines of C (including ncurses, though):
>
> ,
> | git clone https://github.com/hughbarney/femto.git
> `
>
> ,
> | Femto is an extended version of Atto Emacs.
> | 
> | In Defining Atto as the lowest functional Emacs I have had to
> | consider the essential feature set that makes Emacs, 'Emacs'. [...]
> `
>
> ,
> |  Goals of Femto Emacs
> | 
> |   * To extend Atto Emacs with filename completion, dired, buffer
> | menu and the ability to run a shell command.
> |   * Provide a rich level of functionality in the smallest amount of
> | code
> |   * Femto Emacs will eventually have it own lisp extension
> | languauge.
> |   * Be easy to understand without extensive study (to encourage
> | further experimentation).
> `
>
> There is already a project underway using FemTo-Lisp as extension
> language
>
> ,
> | git clone https://github.com/FemtoEmacs/Femto-Emacs.git
> `
>
> but I thought this would be a perfect use case for an 'AW-style' FFI
> library making use of 'native'. Then, PicoLisp could have its own
> (Window/Buffer)-Editor, not just the LineEditor, with all the core
> Editor-Functions just wrappers around Femto's C-functions.
>
> But lacking C skills have me stuck in the very beginning: how to turn
> this C application into a shared library for 'native', does it even
> make sense?
>
> I guess I should:
>
>  1. create a shared library for all .c files in the repo except main.c
>  2. create the application (main.o) linking the shared library? 
>
> But then, the shared library by itself does not make much sense, it
> would need the running C Application to do some useful work (?) 
>
> So the queston seems rather how to embed PicoLisp in this C Application,
> and make Femto extensible in PicoLisp (like Emacs is extensible in Emacs
> Lisp) by having FFI wrappers for all core editor functions?
>
> The 
>
> ,
> | /home/tj/gitclone/Femto-Emacs/femtolisp
> `
>
> subdirectory makes the general "Lisp integration task" look rather
> complicated, but maybe there is (like so often) a really simple solution
> with PicoLisp?

-- 
cheers,
Thorsten

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