Re: New egg: mdh

2021-05-25 Thread siiky

On 5/25/21 19:28, felix.winkelm...@bevuta.com wrote:

Building, testing, and installing all worked out of the box, but I got
these two warnings while compiling (in red even though they're warnings):

[...]


Hm, I have no idea, but I noticed a couple of suspicious warnings. In fact,
the code doesn't even compile without "-w", which may indicate further
problems. I"m not a C++ expert, but there are some rather peculiar coding
choices in there. I'm not keen on digging too much into the codebase, though,
so unless users report genuine bugs, we should wait and watch.

Thanks for the report.


felix



Alright, sounds good to me.

Thanks,
André Sá





Re: How to handle egg with multiple modules

2021-05-25 Thread Arnaud Bailly
On Tue, May 25, 2021 at 1:42 PM  wrote:
>
>
> (modules species (species ui))
>
> declares 2 modules, I"m not sure chicken-install can detect that the extension
> consists of 2 files, with one module for each.
>

Does this mean that extensions are not supposed to be composed of more
than one module?
It seems like I was kind of trying to use the extension mechanism as a
build system...

Arnaud



Re: csm 0.1

2021-05-25 Thread felix . winkelmann
> Exactly what I was looking for!

Feedback is welcome. Should you experience any problems, don't hesitate to
report them.


felix




Re: New egg: mdh

2021-05-25 Thread felix . winkelmann
> Building, testing, and installing all worked out of the box, but I got
> these two warnings while compiling (in red even though they're warnings):
>
>[...]

Hm, I have no idea, but I noticed a couple of suspicious warnings. In fact,
the code doesn't even compile without "-w", which may indicate further
problems. I"m not a C++ expert, but there are some rather peculiar coding
choices in there. I'm not keen on digging too much into the codebase, though,
so unless users report genuine bugs, we should wait and watch.

Thanks for the report.


felix




Re: New egg: mdh

2021-05-25 Thread siiky

On 5/18/21 11:29, felix.winkelm...@bevuta.com wrote:

Hi!

This is to announce the "mdh" egg, an interface to the C++ API of O'Kane's
MUMPS database. The concepts behind it were presented by Luke at the
CHICKEN Coding Jam and produced quite some interest. MDH is a very
easy to use multidimensional key-value store. The code is included in
the egg, the only external dependency is libpcre.

Documentation can be found here: http://wiki.call-cc.org/eggref/5/mdh
(or of course at api.call-cc.org).

Note that this is a first release. It seems to work fine, but has not been
heavily tested with regards to scalability and performance. There are a few
parameters than can be tweaked once there exists more experience with
using this database.

Many thanks to Luke K. for inspiration and fruitful discussions regarding
a suitable Scheme API.


felix




Hey Felix,

Thanks for this, the talk got me interested too!

Building, testing, and installing all worked out of the box, but I got 
these two warnings while compiling (in red even though they're warnings):


   /home/siiky/.local/bin/csc -host -D compiling-extension -J -s 
-regenerate-import-libraries -setup-mode -I 
/home/siiky/.cache/chicken-install/mdh -C 
-I/home/siiky/.cache/chicken-install/mdh -C -w -C -DNATIVE_SHARED -C -I. 
-C -D_FILE_OFFSET_BITS=64 -C -D_LARGEFILE_SOURCE -c++ -C -D_MDH_ -L 
-lpcre mdh.scm /home/siiky/.cache/chicken-install/mdh/arith.o 
/home/siiky/.cache/chicken-install/mdh/bifs.o 
/home/siiky/.cache/chicken-install/mdh/bstring.o 
/home/siiky/.cache/chicken-install/mdh/btree.o 
/home/siiky/.cache/chicken-install/mdh/globalb.o 
/home/siiky/.cache/chicken-install/mdh/interp.o 
/home/siiky/.cache/chicken-install/mdh/libmpscpp.o 
/home/siiky/.cache/chicken-install/mdh/lock.o 
/home/siiky/.cache/chicken-install/mdh/pm.o 
/home/siiky/.cache/chicken-install/mdh/stem.o 
/home/siiky/.cache/chicken-install/mdh/strmanip.o 
/home/siiky/.cache/chicken-install/mdh/sym.o 
/home/siiky/.cache/chicken-install/mdh/sysfunc.o 
/home/siiky/.cache/chicken-install/mdh/bmgsubs.o -o 
/home/siiky/.cache/chicken-install/mdh/mdh.so

/home/siiky/.cache/chicken-install/mdh/globalb.cpp: In function ‘Mglobal’:
/home/siiky/.cache/chicken-install/mdh/globalb.cpp:163:24: warning: 
‘strncmp’ specified bound [18446744073709551614, 18446744073709551615] 
exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
  163 | if (strncmp(( const char  * ) hold,( const char  * 
) bd,j)!=0 ||

  |^
/home/siiky/.cache/chicken-install/mdh/bifs.cpp: In function ‘zfcn’:
/home/siiky/.cache/chicken-install/mdh/bifs.cpp:119:12: warning: 
‘strncpy’ specified bound 18446744073709551615 exceeds maximum object 
size 9223372036854775807 [-Wstringop-overflow=]

  119 | strncpy( (char *) fcnName, (const char *) [2],i-2);
  |^

(also available here[0])

My C-fu isn't what it used to be, and my C++-fu is worse yet, but I'm 
wondering if this couldn't be a hint for a source of problems to 
someone. I think I got all the relevant output, but if you want more 
just let me know.


Got no warnings on my RBPi4.

[0]: https://paste.rs/KaU

Thanks,
André Sá





Re: csm 0.1

2021-05-25 Thread Arnaud Bailly
Exactly what I was looking for!
-- 
Arnaud Bailly - @dr_c0d3

On Tue, May 25, 2021 at 7:29 PM  wrote:
>
> Hi!
>
> A first version of "csm" is available, a build system for CHICKEN Scheme
> programs:
>
> http://wiki.call-cc.org/eggref/5/csm
>
> Assuming a small set of conventions, this tool can infer dependencies and 
> necessary
> command-line options for a set of source files written in CHICKEN or R7RS 
> Scheme.
> A flexible method for customizing the set of options for targets is provided, 
> as is generation
> of GNU/BSD makefiles (thus allowing parallel builds) and the creation of 
> statically
> linked executables.
>
> The tool has tested this with ensemble, bintracker and other non-trivial 
> projects,
> but will of course still contain bugs and shortcomings. Please send bug 
> reports or
> questions to this list or to me directly.
>
>
> felix
>
>



csm 0.1

2021-05-25 Thread felix . winkelmann
Hi!

A first version of "csm" is available, a build system for CHICKEN Scheme
programs:

http://wiki.call-cc.org/eggref/5/csm

Assuming a small set of conventions, this tool can infer dependencies and 
necessary
command-line options for a set of source files written in CHICKEN or R7RS 
Scheme.
A flexible method for customizing the set of options for targets is provided, 
as is generation
of GNU/BSD makefiles (thus allowing parallel builds) and the creation of 
statically
linked executables.

The tool has tested this with ensemble, bintracker and other non-trivial 
projects,
but will of course still contain bugs and shortcomings. Please send bug reports 
or
questions to this list or to me directly.


felix




Re: How to handle egg with multiple modules

2021-05-25 Thread felix . winkelmann
> I have tried removing one of the 2 modules declared in the .egg but I
> have the same problem. When I remove the
> (species ui) import  from darwin.scm it compiles and runs the tests
> but of course fails to resolve the symbol at runtime.
>

(modules species (species ui))

declares 2 modules, I"m not sure chicken-install can detect that the extension
consists of 2 files, with one module for each.


felix




Re: New egg: Expect

2021-05-25 Thread Aydar Zarifullin
> Thanks.  I was wondering if this egg should be called tcl-expect, just
in case someone comes up with a pure Scheme implementation of expect
(also to make clear that the current one is actually based on Tcl).
What do you think?

It's a good idea.


Re: How to handle egg with multiple modules

2021-05-25 Thread Arnaud Bailly
I have tried removing one of the 2 modules declared in the .egg but I
have the same problem. When I remove the
(species ui) import  from darwin.scm it compiles and runs the tests
but of course fails to resolve the symbol at runtime.

Could it be the name of the modules somehow clash? I tried renaming
the module from `(species ui)` to `(origin ui)` but then I am having
the following issue:
$ CHICKEN_REPOSITORY_PATH=$(pwd):$(chicken-install -repository)
chicken-install -test -n
building species
   /usr/local/Cellar/chicken/5.2.0/bin/csc -host -D
compiling-extension -J -s -regenerate-import-libraries -setup-mode -I
/Users/arnaud/projects/scheme/origin-of-species -C
-I/Users/arnaud/projects/scheme/origin-of-species -O3 -d0 species.scm
-o /Users/arnaud/projects/scheme/origin-of-species/species.so
   /usr/local/Cellar/chicken/5.2.0/bin/csc
-regenerate-import-libraries -M -setup-mode -static -I
/Users/arnaud/projects/scheme/origin-of-species -emit-link-file
/Users/arnaud/projects/scheme/origin-of-species/species.link -host -D
compiling-extension -c -unit species -D compiling-static-extension -C
-I/Users/arnaud/projects/scheme/origin-of-species -O3 -d0 species.scm
-o /Users/arnaud/projects/scheme/origin-of-species/species.static.o
   /usr/local/Cellar/chicken/5.2.0/bin/csc -setup-mode -s -host -I
/Users/arnaud/projects/scheme/origin-of-species -C
-I/Users/arnaud/projects/scheme/origin-of-species -O3 -d0
species.import.scm -o
/Users/arnaud/projects/scheme/origin-of-species/species.import.so
   /usr/local/Cellar/chicken/5.2.0/bin/csc -setup-mode -s -host -I
/Users/arnaud/projects/scheme/origin-of-species -C
-I/Users/arnaud/projects/scheme/origin-of-species -O3 -d0
origin.ui.import.scm -o
/Users/arnaud/projects/scheme/origin-of-species/origin.ui.import.so
csc: file `origin.ui.import.scm' does not exist

Error: shell command terminated with nonzero exit code
16384


-- 
Arnaud Bailly - @dr_c0d3

On Tue, May 25, 2021 at 1:31 AM  wrote:
>
> > Error: (car) bad argument type:
> > |\xcf\xfa\xed\xfe\x07\x00\x00\x01\x03\x00\x00\x00\x02\x00\x00\x00\x11\x00\x00\x00\x90\x06\x00\x00\x85\x00|
> >
>
> I haven't analyzed this, but this looks like is the header of a binary 
> object, so the runtime
> system is trying to load a binary, perhaps a import library (and fails and 
> thus treats
> the binary data as source code). Is your CHICKEN setup working properly?
>
>
> felix
>



Re: New egg: Expect

2021-05-25 Thread Mario Domenech Goulart
On Mon, 24 May 2021 19:41:01 +0300 Aydar Zarifullin  wrote:

> Thank you for your notes. 
>
> - Would the body of `(unless interp ...)' in `tcl-create-interp` [0]
>   ever be executed?
>
> - Tcl_CreateInterp may return a null pointer (#f) for example if it fails to 
> allocate memory
>
> As for the rest, I'll try to fix it.

Thanks.  I was wondering if this egg should be called tcl-expect, just
in case someone comes up with a pure Scheme implementation of expect
(also to make clear that the current one is actually based on Tcl).
What do you think?

All the best.
Mario
-- 
http://parenteses.org/mario



Fwd: How to handle egg with multiple modules

2021-05-25 Thread Arnaud Bailly
Yes, as far as I can tell it's working fine. The code in the repo
(https://gitlab.com/abailly/origin-of-species) works fine, it's only
when I start adding another module that things go wrong, at this
commit: https://gitlab.com/abailly/origin-of-species/-/tree/separate-ui-module

Thanks for your help
--
Arnaud Bailly - @dr_c0d3

On Tue, May 25, 2021 at 1:31 AM  wrote:
>
> > Error: (car) bad argument type:
> > |\xcf\xfa\xed\xfe\x07\x00\x00\x01\x03\x00\x00\x00\x02\x00\x00\x00\x11\x00\x00\x00\x90\x06\x00\x00\x85\x00|
> >
>
> I haven't analyzed this, but this looks like is the header of a binary 
> object, so the runtime
> system is trying to load a binary, perhaps a import library (and fails and 
> thus treats
> the binary data as source code). Is your CHICKEN setup working properly?
>
>
> felix
>