Re: [Chicken-users] Debian 9 amd64 chicken-bin 4.11.0-1 cannot import from undefined module process-context
On 9/17/19 10:46 PM, Mario Domenech Goulart wrote: $ wgethttp://code.call-cc.org/releases/5.1.0/chicken-5.1.0.tar.gz $ tar xzvf chicken-5.1.0.tar.gz $ cd chicken-5.1.0 $ make PLATFORM=linux PREFIX=$HOME/local/chicken-5.1.0 install $ export PATH=$PATH:$HOME/local/chicken-5.1.0/bin On 9/17/19 11:09 PM, Peter Bex wrote: You don't need to be root if you set PREFIX to a user-writable directory. Remove Debian chicken-bin: 2019-09-17 23:16:26 root@tinkywinky ~ # apt-get remove chicken-bin Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: libchicken-dev libchicken8 libpcre3-dev libpcre32-3 libpcrecpp0v5 Use 'apt autoremove' to remove them. The following packages will be REMOVED: chicken-bin 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. After this operation, 5903 kB disk space will be freed. Do you want to continue? [Y/n] y (Reading database ... 115436 files and directories currently installed.) Removing chicken-bin (4.11.0-1) ... Processing triggers for man-db (2.7.6.1-2) ... 2019-09-17 23:17:15 root@tinkywinky ~ # apt autoremove Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: libchicken-dev libchicken8 libpcre3-dev libpcre32-3 libpcrecpp0v5 0 upgraded, 0 newly installed, 5 to remove and 0 not upgraded. After this operation, 14.9 MB disk space will be freed. Do you want to continue? [Y/n] y (Reading database ... 115333 files and directories currently installed.) Removing libchicken-dev (4.11.0-1) ... Removing libchicken8 (4.11.0-1) ... Removing libpcre3-dev:amd64 (2:8.39-3) ... Removing libpcre32-3:amd64 (2:8.39-3) ... Removing libpcrecpp0v5:amd64 (2:8.39-3) ... Processing triggers for libc-bin (2.24-11+deb9u4) ... Processing triggers for man-db (2.7.6.1-2) ... Download Chicken tarball with Firefox. Checksum: 2019-09-17 23:23:58 dpchrist@tinkywinky ~/samba/dpchrist/Downloads/c/chicken-scheme $ ll total 4109 drwxr-xr-x+ 2 dpchrist dpchrist 0 2019-09-17 23:23:17 ./ drwxr-xr-x+ 38 dpchrist dpchrist 0 2019-09-17 23:21:59 ../ -rw-r--r--+ 1 dpchrist dpchrist 86 2019-09-17 23:23:04 SHA256SUM -rw-r--r--+ 1 dpchrist dpchrist 4071169 2019-09-17 23:22:04 chicken-5.1.0.tar.gz 2019-09-17 23:23:42 dpchrist@tinkywinky ~/samba/dpchrist/Downloads/c/chicken-scheme $ cat SHA256SUM 5c1101a8d8faabfd500ad69101e0c7c8bd826c68970f89c270640470e7b84b4b *chicken-5.1.0.tar.gz 2019-09-17 23:24:05 dpchrist@tinkywinky ~/samba/dpchrist/Downloads/c/chicken-scheme $ sha256sum -c SHA256SUM chicken-5.1.0.tar.gz: OK Build: 2019-09-17 23:26:31 dpchrist@tinkywinky ~/build $ tar -xzf ~/samba/dpchrist/Downloads/c/chicken-scheme/chicken-5.1.0.tar.gz 2019-09-17 23:27:17 dpchrist@tinkywinky ~/build $ cd chicken-5.1.0/ 2019-09-17 23:28:23 dpchrist@tinkywinky ~/build/chicken-5.1.0 $ make PLATFORM=linux PREFIX=$HOME/local/chicken-5.1.0 install echo '#define C_CHICKEN_PROGRAM "chicken"' >> chicken-defaults.h echo '#ifndef C_INSTALL_CC' >> chicken-defaults.h echo '# define C_INSTALL_CC "gcc"' >> chicken-defaults.h install -m 644 ./LICENSE "/home/dpchrist/local/chicken-5.1.0/share/chicken/doc" install -m 644 ./setup.defaults "/home/dpchrist/local/chicken-5.1.0/share/chicken" install -m 644 ./feathers.tcl "/home/dpchrist/local/chicken-5.1.0/share/chicken" Adjust PATH: 2019-09-17 23:47:49 dpchrist@tinkywinky ~ $ export PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/dpchrist/local/chicken-5.1.0/bin Test: 2019-09-17 23:49:00 dpchrist@tinkywinky ~ $ cd sandbox/chicken-scheme 2019-09-17 23:49:43 dpchrist@tinkywinky ~/sandbox/chicken-scheme $ csc -o palindrome palindrome.scm 2019-09-17 23:50:26 dpchrist@tinkywinky ~/sandbox/chicken-scheme $ ./palindrome level level is a palindrome 2019-09-17 23:50:33 dpchrist@tinkywinky ~/sandbox/chicken-scheme $ ./palindrome label label isn't a palindrome Thank you, everyone. :-) David ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Debian 9 amd64 chicken-bin 4.11.0-1 cannot import from undefined module process-context
On Tue, Sep 17, 2019 at 11:00:17PM -0700, David Christensen wrote: > The current release of Chicken appears to be 5.1.0: > > https://code.call-cc.org/ Correct. > I do not see a Debian backport: > > https://packages.debian.org/search?keywords=chicken=names=all=stretch-backports Yeah, Debian... I think I asked for a CHICKEN 5.0.0 port when it came out but nobody was interested in packaging it. > Does anyone have any experiencing compiling, installing, and running Chicken > 5.1.0 from a source tarball on Debian 9? Can I do this with a normal user > account? I used to do it all the time. I still do, but now I run Debian 10. You don't need to be root if you set PREFIX to a user-writable directory. Cheers, Peter signature.asc Description: PGP signature ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Debian 9 amd64 chicken-bin 4.11.0-1 cannot import from undefined module process-context
On 9/17/19 10:36 PM, Vasilij Schneidermann wrote: Hey David, You're using version 4 of the compiler, but version 5 of the documentation. You can tell the latter by looking for the number in the URL. Thanks for the tip. Taking a stab in the dark: http://wiki.call-cc.org/man/4/The%20User's%20Manual http://wiki.call-cc.org/man/4/Getting%20started 2019-09-17 22:49:46 dpchrist@tinkywinky ~/sandbox/chicken-scheme-4 $ cat palindrome.scm ;;; http://wiki.call-cc.org/man/4/Getting%20started ;;; downloaded 2019-09-17 (define (palindrome? x) (define (check left right) (if (>= left right) #t (and (char=? (string-ref x left) (string-ref x right)) (check (add1 left) (sub1 right) (check 0 (sub1 (string-length x (let ((arg (car (command-line-arguments (display (string-append arg (if (palindrome? arg) " is a palindrome\n" " isn't a palindrome\n" 2019-09-17 22:50:17 dpchrist@tinkywinky ~/sandbox/chicken-scheme-4 $ csc -o palindrome palindrome.scm 2019-09-17 22:50:24 dpchrist@tinkywinky ~/sandbox/chicken-scheme-4 $ ./palindrome level level is a palindrome 2019-09-17 22:50:29 dpchrist@tinkywinky ~/sandbox/chicken-scheme-4 $ ./palindrome liver liver isn't a palindrome The current release of Chicken appears to be 5.1.0: https://code.call-cc.org/ I do not see a Debian backport: https://packages.debian.org/search?keywords=chicken=names=all=stretch-backports Only a Sid package (no thanks; I prefer stability): https://packages.debian.org/search?keywords=chicken=names=all=all Does anyone have any experiencing compiling, installing, and running Chicken 5.1.0 from a source tarball on Debian 9? Can I do this with a normal user account? David ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Debian 9 amd64 chicken-bin 4.11.0-1 cannot import from undefined module process-context
On Wed, 18 Sep 2019 07:46:01 +0200 Mario Domenech Goulart wrote: >> 2019-09-17 22:06:21 root@tinkywinky ~ >> # cat /etc/debian_version >> 9.11 >> >> 2019-09-17 22:10:03 root@tinkywinky ~ >> # uname -a >> Linux tinkywinky 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3 (2019-09-02) >> x86_64 GNU/Linux >> >> 2019-09-17 22:15:35 root@tinkywinky ~ >> # dpkg-query -s chicken-bin >> Package: chicken-bin >> Status: install ok installed >> Priority: optional >> Section: lisp >> Installed-Size: 5765 >> Maintainer: Davide Puricelli (evo) >> Architecture: amd64 >> Source: chicken >> Version: 4.11.0-1 >> Replaces: chicken, chicken-dev >> Depends: libc6 (>= 2.4), libchicken8 (>= 4.11.0), libchicken-dev (= >> 4.11.0-1) >> Conflicts: chicken, chicken-dev >> Description: Practical and portable Scheme system - compiler >> CHICKEN is a Scheme compiler which compiles a subset of R5RS into C. >> It uses the ideas presented in Baker's paper "Cheney on the MTA", and >> has a small core and is easily extendable. >> . >> This package contains the compiler. >> Homepage: http://www.call-cc.org >> >> >> I am attempting to follow: >> >> http://wiki.call-cc.org/man/5/Getting%20started >> >> >> I have created a Scheme program source file: >> >> 2019-09-17 22:07:12 dpchrist@tinkywinky ~/sandbox/chicken-scheme >> $ cat palindrome.scm >> ;;; http://wiki.call-cc.org/man/5/Getting%20started >> ;;; downloaded 2019-09-17 >> >> (import (chicken process-context)) ; for "command-line-arguments" >> >> (define (palindrome? x) >> (define (check left right) >> (if (>= left right) >> #t >> (and (char=? (string-ref x left) (string-ref x right)) >> (check (add1 left) (sub1 right) >> (check 0 (sub1 (string-length x >> >> (let ((arg (car (command-line-arguments >> (display >>(string-append arg >> (if (palindrome? arg) >> " is a palindrome\n" >> " isn't a palindrome\n" >> >> >> When I try to compile: >> >> 2019-09-17 22:07:15 dpchrist@tinkywinky ~/sandbox/chicken-scheme >> $ csc -o palindrome palindrome.scm >> >> Syntax error (import): cannot import from undefined module >> >> process-context >> >> Expansion history: >> >>(##core#begin (import (chicken process-context))) >>(import (chicken process-context))<-- >> >> Error: shell command terminated with non-zero exit status 17920: >> '/usr/bin/chicken' 'palindrome.scm' -output-file 'palindrome.c' >> >> >> I appear to be missing the module "chicken process-context", which is >> supposed to be included (?): >> >> http://wiki.call-cc.org/man/5/Included%20modules >> >> >> Suggestions? > > The problem is that you are using CHICKEN 4 to compile code for CHICKEN > 5. There are some incompatibilities. One of the is the import > declarations for modules. > > Installing CHICKEN 5 from sources on Linux is not difficult and doesn't > require much besied what is required to install eggs (the only extra > requirement is GNU make). In case you wnat to do that, here are the > steps that should work on Debian: > > $ wget http://code.call-cc.org/releases/5.1.0/chicken-5.1.0.tar.gz > $ tar xzvf chicken-5.1.0.tar.gz > $ cd chicken-5.1.0 > $ make PLATFORM=linux PREFIX=$HOME/local/chicken-5.1.0 install > > That will install CHICKEN 5.1.0 under $HOME/local/chicken-5.1.0. > > To have the CHICKEN 5 tools in your environment's PATH, you can do > something like > > $ export PATH=$PATH:$HOME/local/chicken-5.1.0/bin > > assuming you are using Bash. Actually, $ export PATH=$HOME/local/chicken-5.1.0/bin:$PATH if you want the CHICKEN 5 tools to take precedence over the CHICKEN 4 tools from the Debian package. Or you can simply remove the Debian package. > On the CHICKEN 4 -> CHICKEN 5 migration, you might find > http://wiki.call-cc.org/porting-c4-to-c5 helpful. > > If you have questions, don't hesitate to ask them here or in the IRC > channel (Freenode, #chicken). All the best. Mario -- http://parenteses.org/mario ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Debian 9 amd64 chicken-bin 4.11.0-1 cannot import from undefined module process-context
Hi David, On Tue, 17 Sep 2019 22:22:26 -0700 David Christensen wrote: > chicken-users: > > I am Chicken noob with (e-mail addresses redacted): Welcome! > 2019-09-17 22:06:21 root@tinkywinky ~ > # cat /etc/debian_version > 9.11 > > 2019-09-17 22:10:03 root@tinkywinky ~ > # uname -a > Linux tinkywinky 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3 (2019-09-02) > x86_64 GNU/Linux > > 2019-09-17 22:15:35 root@tinkywinky ~ > # dpkg-query -s chicken-bin > Package: chicken-bin > Status: install ok installed > Priority: optional > Section: lisp > Installed-Size: 5765 > Maintainer: Davide Puricelli (evo) > Architecture: amd64 > Source: chicken > Version: 4.11.0-1 > Replaces: chicken, chicken-dev > Depends: libc6 (>= 2.4), libchicken8 (>= 4.11.0), libchicken-dev (= > 4.11.0-1) > Conflicts: chicken, chicken-dev > Description: Practical and portable Scheme system - compiler > CHICKEN is a Scheme compiler which compiles a subset of R5RS into C. > It uses the ideas presented in Baker's paper "Cheney on the MTA", and > has a small core and is easily extendable. > . > This package contains the compiler. > Homepage: http://www.call-cc.org > > > I am attempting to follow: > > http://wiki.call-cc.org/man/5/Getting%20started > > > I have created a Scheme program source file: > > 2019-09-17 22:07:12 dpchrist@tinkywinky ~/sandbox/chicken-scheme > $ cat palindrome.scm > ;;; http://wiki.call-cc.org/man/5/Getting%20started > ;;; downloaded 2019-09-17 > > (import (chicken process-context)) ; for "command-line-arguments" > > (define (palindrome? x) > (define (check left right) > (if (>= left right) > #t > (and (char=? (string-ref x left) (string-ref x right)) > (check (add1 left) (sub1 right) > (check 0 (sub1 (string-length x > > (let ((arg (car (command-line-arguments > (display >(string-append arg > (if (palindrome? arg) > " is a palindrome\n" > " isn't a palindrome\n" > > > When I try to compile: > > 2019-09-17 22:07:15 dpchrist@tinkywinky ~/sandbox/chicken-scheme > $ csc -o palindrome palindrome.scm > > Syntax error (import): cannot import from undefined module > > process-context > > Expansion history: > > (##core#begin (import (chicken process-context))) > (import (chicken process-context))<-- > > Error: shell command terminated with non-zero exit status 17920: > '/usr/bin/chicken' 'palindrome.scm' -output-file 'palindrome.c' > > > I appear to be missing the module "chicken process-context", which is > supposed to be included (?): > > http://wiki.call-cc.org/man/5/Included%20modules > > > Suggestions? The problem is that you are using CHICKEN 4 to compile code for CHICKEN 5. There are some incompatibilities. One of the is the import declarations for modules. Installing CHICKEN 5 from sources on Linux is not difficult and doesn't require much besied what is required to install eggs (the only extra requirement is GNU make). In case you wnat to do that, here are the steps that should work on Debian: $ wget http://code.call-cc.org/releases/5.1.0/chicken-5.1.0.tar.gz $ tar xzvf chicken-5.1.0.tar.gz $ cd chicken-5.1.0 $ make PLATFORM=linux PREFIX=$HOME/local/chicken-5.1.0 install That will install CHICKEN 5.1.0 under $HOME/local/chicken-5.1.0. To have the CHICKEN 5 tools in your environment's PATH, you can do something like $ export PATH=$PATH:$HOME/local/chicken-5.1.0/bin assuming you are using Bash. On the CHICKEN 4 -> CHICKEN 5 migration, you might find http://wiki.call-cc.org/porting-c4-to-c5 helpful. If you have questions, don't hesitate to ask them here or in the IRC channel (Freenode, #chicken). All the best. Mario -- http://parenteses.org/mario ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Debian 9 amd64 chicken-bin 4.11.0-1 cannot import from undefined module process-context
Hey David, You're using version 4 of the compiler, but version 5 of the documentation. You can tell the latter by looking for the number in the URL. Vasilij___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] Debian 9 amd64 chicken-bin 4.11.0-1 cannot import from undefined module process-context
chicken-users: I am Chicken noob with (e-mail addresses redacted): 2019-09-17 22:06:21 root@tinkywinky ~ # cat /etc/debian_version 9.11 2019-09-17 22:10:03 root@tinkywinky ~ # uname -a Linux tinkywinky 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3 (2019-09-02) x86_64 GNU/Linux 2019-09-17 22:15:35 root@tinkywinky ~ # dpkg-query -s chicken-bin Package: chicken-bin Status: install ok installed Priority: optional Section: lisp Installed-Size: 5765 Maintainer: Davide Puricelli (evo) Architecture: amd64 Source: chicken Version: 4.11.0-1 Replaces: chicken, chicken-dev Depends: libc6 (>= 2.4), libchicken8 (>= 4.11.0), libchicken-dev (= 4.11.0-1) Conflicts: chicken, chicken-dev Description: Practical and portable Scheme system - compiler CHICKEN is a Scheme compiler which compiles a subset of R5RS into C. It uses the ideas presented in Baker's paper "Cheney on the MTA", and has a small core and is easily extendable. . This package contains the compiler. Homepage: http://www.call-cc.org I am attempting to follow: http://wiki.call-cc.org/man/5/Getting%20started I have created a Scheme program source file: 2019-09-17 22:07:12 dpchrist@tinkywinky ~/sandbox/chicken-scheme $ cat palindrome.scm ;;; http://wiki.call-cc.org/man/5/Getting%20started ;;; downloaded 2019-09-17 (import (chicken process-context)) ; for "command-line-arguments" (define (palindrome? x) (define (check left right) (if (>= left right) #t (and (char=? (string-ref x left) (string-ref x right)) (check (add1 left) (sub1 right) (check 0 (sub1 (string-length x (let ((arg (car (command-line-arguments (display (string-append arg (if (palindrome? arg) " is a palindrome\n" " isn't a palindrome\n" When I try to compile: 2019-09-17 22:07:15 dpchrist@tinkywinky ~/sandbox/chicken-scheme $ csc -o palindrome palindrome.scm Syntax error (import): cannot import from undefined module process-context Expansion history: (##core#begin (import (chicken process-context))) (import (chicken process-context))<-- Error: shell command terminated with non-zero exit status 17920: '/usr/bin/chicken' 'palindrome.scm' -output-file 'palindrome.c' I appear to be missing the module "chicken process-context", which is supposed to be included (?): http://wiki.call-cc.org/man/5/Included%20modules Suggestions? David ___ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users