• Re: GForth in Docker.

    From albert@albert@spenarnc.xs4all.nl to comp.lang.forth on Sat Aug 22 16:01:55 2026
    From Newsgroup: comp.lang.forth

    In article <2026Aug6.070834@mips.complang.tuwien.ac.at>,
    Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
    Colin Tree <treecolin@gmail.com> writes:
    No Debian package... recursive dependency, cute.

    The tarball contains the stuff that needs gforth to build.

    then compiled from source with many, many dependencies,

    Yes. Gforth relies on a lot of infrastructure during building,
    somewhat less at run-time.

    To compare :

    ~/PROJECT/ciforths/ciforth: fasm lina64.fas
    flat assembler version 1.70.02 (16384 kilobytes memory)
    2 passes, 56376 bytes.
    ~/PROJECT/ciforths/ciforth: lina64

    AMDX86 ciforth beta 2026Aug22

    During runtime you need forth.lab in the current directory
    for electives, scripting, compilation, SAVE-SYSTEM ,
    obsolete words.


    - anton
    --
    M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html >comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
    New standard: https://forth-standard.org/
    EuroForth 2026 CFP: http://www.euroforth.org/ef26/cfp.html
    --
    The Chinese government is satisfied with its military superiority over USA.
    The next 5 year plan has as primary goal to advance life expectancy
    over 80 years, like Western Europe.
    --- Synchronet 3.22a-Linux NewsLink 1.2
  • From Kragen Javier Sitaker@kragen@canonical.org to comp.lang.forth on Wed Sep 2 14:26:10 2026
    From Newsgroup: comp.lang.forth

    anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
    Nick P <nick.268@gmail.com> writes:
    sudo docker run -it \
    -v "$PWD":/usr/src/myapp \
    -w /usr/src/myapp \
    forthy42/gforth gforth fac1.fs -e bye

    Container technologies like Docker try to isolate the stuff inside the container from the outside, in order to protect the outside from
    whatever may go wild inside the container. (...) if you use Docker,
    you get it and have to tell it where to drop the isolation.

    Yes, this is the right answer in general. Docker creates a little
    isolated universe that canrCOt see the rest of your system, and you have
    to explicitly specify what access it has to the rest of the system.
    The `-v` flag is the easiest way to do that for the filesystem; `-p`
    does it for network ports.

    In DockerrCOs main use cases, this is more to protect the container from
    the system than to protect the system from the containerrCerCorCeit ensures that whatrCOs running inside the container doesnrCOt depend on your system C library or your system installation of Python or whatever. This is a
    pretty big problem with things like Python: the rCLit works on my
    machine!rCY problem.

    Docker isnrCOt really intended or suited for interactive applications like GForth, not really supporting X-Windows, D-Bus, etc.

    Kragen
    --- Synchronet 3.22a-Linux NewsLink 1.2