[Chicken-users] Re : Re: package fmt crash on Windows 7 64-bits

2014-12-14 Thread fuhz
Christian,

The issue is not specific to fmt package.

Opengl package has the same issue.
Did I make an obvious mistake?

C:\working-dir\chicken-portable-clean\build\bincsi

CHICKEN
(c) 2008-2014, The Chicken Team
(c) 2000-2007, Felix L. Winkelmann
Version 4.9.0.1 (stability/4.9.0) (rev 8b3189b)
windows-mingw32-x86-64 [ 64bit dload ptables ]
bootstrapped 2014-06-07

#;1 (use gl)
; loading 
C:/working-dir/chicken-portable-clean/build/lib/chicken/7/gl.import.so ...
; loading 
C:/working-dir/chicken-portable-clean/build/lib/chicken/7/chicken.import.so ...
; loading 
C:/working-dir/chicken-portable-clean/build/lib/chicken/7/foreign.import.so ...
; loading 
C:/working-dir/chicken-portable-clean/build/lib/chicken/7/easyffi.import.so ...
; loading C:/working-dir/chicken-portable-clean/build/lib/chicken/7/gl.so ...
[panic] invalid encoded numeric literal - execution terminated

syntax
syntax
syntax
syntax
syntax
syntax
syntax
syntax
syntax
syntax
syntax
syntax
syntax
syntax
eval  --

C:\working-dir\chicken-portable-clean\build\bin



- Mail d'origine -
De: Christian Kellermann ck...@pestilenz.org
À: comb...@laposte.net
Cc: chicken-users@nongnu.org
Envoyé: Wed, 10 Dec 2014 10:33:02 +0100 (CET)
Objet: Re: [Chicken-users] package fmt crash on Windows 7 64-bits

Hi Pascal!

* comb...@laposte.net comb...@laposte.net [141209 16:54]:
 I made some build of chicken on 64 bits and 32 bits. 

How do you build this exactly?

 2. In the case we use the retrieve option of chicken-install to download 
 the sources of the packages, how to install the local files locally? 

cd into the directory and run chicken-install without arguments should do it.

Kind regards,

Christian

-- 
May you be peaceful, may you live in safety, may you be free from
suffering, and may you live with ease.


___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Re : Re: package fmt crash on Windows 7 64-bits

2014-12-14 Thread Christian Kellermann
Hi!

* f...@laposte.net f...@laposte.net [141213 14:59]: 
 I believe it's a 64-bit related issue, because I didn't reproduce
 this problem on Windows 32 bits with the same steps (another toolchain
 and ARCH=x86).

On 64 bit Windows the apply hack is disabled, we need a port of
that.  Not having the apply hack means that the number of arguments
a procedure can have is limited.

Maybe this causes trouble with the fmt egg...

Kind regards,

Christian

-- 
May you be peaceful, may you live in safety, may you be free from
suffering, and may you live with ease.

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Export a defstruct - Short Version?

2014-12-14 Thread Christian Kellermann
* Bahman Movaqar bah...@bahmanm.com [141213 22:29]:
 This code obviously doesn't compile because the export list is wrong
 --if I change the export list to, for example, (make-point) it compiles
 fine.
 
 I'm aware a defstruct is basically a shortcut to create a bunch of
 functions and the standard way to export it is exporting all the
 functions one by one. Now, I'm wondering if there is an easier/shorter
 way to do this (something like a wild card)?

No there isn't. There's a wildcard for exporting all symbols in a
module, i.e. using a * instead of a symbol list.  For records there's
no such thing I am afraid. A lot of modules don't export some if
not all accessors to hide the actual implementation.

So for the time being you need to explicitly export the getters/setters
and the make- procedure unless you want to provide your own (maybe
with your application specific checks).

HTH,

Christian

-- 
May you be peaceful, may you live in safety, may you be free from
suffering, and may you live with ease.

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Export a defstruct - Short Version?

2014-12-14 Thread Bahman Movaqar
Thanks for the information Christian.

--
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)

On 12/14/2014 12:09 PM, Christian Kellermann wrote:
 * Bahman Movaqar bah...@bahmanm.com [141213 22:29]:
 This code obviously doesn't compile because the export list is wrong
 --if I change the export list to, for example, (make-point) it compiles
 fine.

 I'm aware a defstruct is basically a shortcut to create a bunch of
 functions and the standard way to export it is exporting all the
 functions one by one. Now, I'm wondering if there is an easier/shorter
 way to do this (something like a wild card)?
 No there isn't. There's a wildcard for exporting all symbols in a
 module, i.e. using a * instead of a symbol list.  For records there's
 no such thing I am afraid. A lot of modules don't export some if
 not all accessors to hide the actual implementation.

 So for the time being you need to explicitly export the getters/setters
 and the make- procedure unless you want to provide your own (maybe
 with your application specific checks).





signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Chicken program: How to clean up the working directory

2014-12-14 Thread Christian Kellermann
* Bahman Movaqar bah...@bahmanm.com [141214 00:49]:
 I'm working on a simple project which I created using chicken-hatch.
 Thanks to the author of this egg, all's fine and going smoothly.
 However, I just wonder if there is a way to clean up the working
 directory of the program in a way that make clean does? Removing
 object files, binary files and other compilation left-over stuff.

No, chicken-install is too dumb in that regard. However if you use
the system egg to define your dependencies, then you could use
clean-system to clean up the compilation artifacts.

HTH,

Christian

-- 
May you be peaceful, may you live in safety, may you be free from
suffering, and may you live with ease.

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Chicken program: How to clean up the working directory

2014-12-14 Thread Bahman Movaqar
On 12/14/2014 12:15 PM, Christian Kellermann wrote:
 * Bahman Movaqar bah...@bahmanm.com [141214 00:49]:
 I'm working on a simple project which I created using chicken-hatch.
 Thanks to the author of this egg, all's fine and going smoothly.
 However, I just wonder if there is a way to clean up the working
 directory of the program in a way that make clean does? Removing
 object files, binary files and other compilation left-over stuff.
 No, chicken-install is too dumb in that regard. However if you use
 the system egg to define your dependencies, then you could use
 clean-system to clean up the compilation artifacts.
Thanks for the hint; much appreciated.

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] Handling Errors

2014-12-14 Thread Bahman Movaqar
Consider the following simple function:

  (define (foo lis) (cdr lis))

Obviously LIS should neither be an empty list nor a list with only one
element.
What is the recommended way to deal with such constraints? Should I
enforce them by writing conditionals at the beginning of the
function[1]? Or is it conventional to just let the function fail and
catch the error somewhere else (probably in a top-level function)?

[1] This quickly leads to dirty and not-easy-to-read code.

What say you seasoned schemers on this?

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Handling Errors

2014-12-14 Thread Andy Bennett


Hi,

   (define (foo lis) (cdr lis))

 Obviously LIS should neither be an empty list nor a list with only one
 element.
 What is the recommended way to deal with such constraints? Should I
 enforce them by writing conditionals at the beginning of the
 function[1]? Or is it conventional to just let the function fail and
 catch the error somewhere else (probably in a top-level function)?

 [1] This quickly leads to dirty and not-easy-to-read code.

 What say you seasoned schemers on this?

That depends on the scope of the accessor. I often use these kinds of
things for quick and dirty data structures for passing seeds for fold
around. In that case I use the even more concise '(define foo cdr)'.

In the case where other modules are using the API then I might go to
more trouble but then you have to think about whether, in the error cases:

 + To return successfully with a sentinel value.
   This is valid in some cases, depending on the data semantics. It can
   be implemented using the conditionals that you mention.

 + To use assert at the head of the procedure to validate the data
   structure. This doesn't stop the error but it gives a more debuggable
   message.

 + To catch and re-throw the exception.
   This is fraught with anti-patterns, is a lot of work and you have to
   do it really carefully. I hardly ever do this.




Regards,
@ndy

-- 
andy...@ashurst.eu.org
http://www.ashurst.eu.org/
0x7EBA75FF




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] sendgrid egg: support for attribute files (attachments)?

2014-12-14 Thread Sven Hartrumpf
Hi all.

The egg sendgrid is very useful already.
Does anybody know how to use the API attribute files (= attachments)
with this egg?

Ciao
Sven

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] Need help understanding include behaviour

2014-12-14 Thread Bahman Movaqar
Since the number of tests in my program is growing, I decided to break
the tests into separate files --one file per module. So, for example, I
have a file named misc.scm with misc module defined inside. In the
tests/ folder I have a misc-tests.scm file.

So in run.scm I do something like:

(use test)
(include misc-tests)
...
(test-exit)

And in misc-tests.scm I have something like below:

(use test)
(load ../misc)
(import misc)
(test-group misc
  ...

However when running `chicken-install -test` I get the following error:
Error: (import) during expansion of (import ...) - cannot import
from undefined module: misc
Now if I move the (load) and (import) expressions from misc-tests to
run, everything works fine. What's the logic behind this behaviour of
include [1]? I'd appreciate if someone would shed a light on this.

[1] Of course I have already read include docs
(http://api.call-cc.org/doc/chicken/special-forms/include) to no avail.

TIA,

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Handling Errors

2014-12-14 Thread Bahman Movaqar
On 12/14/2014 05:13 PM, Andy Bennett wrote:
 Hi,

   (define (foo lis) (cdr lis))

 Obviously LIS should neither be an empty list nor a list with only one
 element.
 What is the recommended way to deal with such constraints? Should I
 enforce them by writing conditionals at the beginning of the
 function[1]? Or is it conventional to just let the function fail and
 catch the error somewhere else (probably in a top-level function)?

 [1] This quickly leads to dirty and not-easy-to-read code.

 What say you seasoned schemers on this?
 That depends on the scope of the accessor. I often use these kinds of
 things for quick and dirty data structures for passing seeds for fold
 around. In that case I use the even more concise '(define foo cdr)'.

 In the case where other modules are using the API then I might go to
 more trouble but then you have to think about whether, in the error cases:

  + To return successfully with a sentinel value.
This is valid in some cases, depending on the data semantics. It can
be implemented using the conditionals that you mention.

This one is really tricky. Not only pollutes the API code but also it
also imposes some untidiness on the client side too which has to check
if a sentinel value has been returned or not.


  + To use assert at the head of the procedure to validate the data
structure. This doesn't stop the error but it gives a more debuggable
message.

By the gods! Why did I think that asserts only belong to modern'ish
languages? :-)
Assuming you're talking about this
(http://api.call-cc.org/doc/chicken/special-forms/assert), I believe
this is the best option. Keeps the code as clean as possible while
ensuring operational soundness.



  + To catch and re-throw the exception.
This is fraught with anti-patterns, is a lot of work and you have to
do it really carefully. I hardly ever do this.

Never! :-)

Thanks for the detailed answer. Much appreciated.

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] Idiomatic way to access nth element of a list

2014-12-14 Thread Bahman Movaqar
How would a seasoned Schemer access the nth element of a list? (drop)?
Does it have any performance penalty?

TIA,

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)



signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Idiomatic way to access nth element of a list

2014-12-14 Thread Shawn Wagner
list-ref

On Sun, 14 Dec 2014 20:08:09 +0330
Bahman Movaqar bah...@bahmanm.com wrote:

 How would a seasoned Schemer access the nth element of a list? (drop)?
 Does it have any performance penalty?
 
 TIA,
 


-- 
Shawn Wagner
sha...@speakeasy.org


___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Idiomatic way to access nth element of a list

2014-12-14 Thread Richard

Forgot to CC the list, and now I lost my original message :(
... trying again

Hello Bayren,

To access the nth-element of a list one would use list-ref. For example:

(list-ref (list 1 2 3 4) - 3)

The problem with linked-lists is that in order to access an element the
list has to be traversed. To access/modify elements in constant time it
might be better to use vectors instead. If you need vectors that grow in
size dynamically have a look at the dyn-vector egg:
http://wiki.call-cc.org/eggref/4/dyn-vector

greetings,
Richard



Bahman Movaqar writes:

 How would a seasoned Schemer access the nth element of a list? (drop)?
 Does it have any performance penalty?

 TIA,

-- 

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Idiomatic way to access nth element of a list

2014-12-14 Thread Bahman Movaqar
On 12/14/2014 09:18 PM, Richard wrote:
 Hello Bayman,

 The get to the nth element of a list one would use list-ref.
 For example:

 (list-ref (list 1 2 3 4) 2) - 3

 The problem with linked lists is that in order to get to the nth element
 the list has to be traversed, which does bring a performance penalty.

 You can use vectors instead of list if you want to access/modify
 elements in constant time. If you need a vector that can dynamically
 grow take a look at the dyn-vector egg:
 http://wiki.call-cc.org/eggref/4/dyn-vector.


 Bahman Movaqar writes:

 How would a seasoned Schemer access the nth element of a list? (drop)?
 Does it have any performance penalty?


Thanks Richard and Shawn for the answer. For my use case I find it
acceptable to use the cleaner more comprehensive list interface (rather
than vectors) at the expense of the performance penalty.

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)



signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] Multiple Modules - Cross Reference

2014-12-14 Thread Bahman Movaqar
First of all, sorry for spamming the list :-)

So, I've got two modules:

;; misc.scm
(module misc
  ...)

;; point.scm
(load misc)
(module point
  (...)
  (import scheme chicken)
  (use srfi-1 misc)
  ...)

And I've setup the project like below:

(compile -d0 -O2 -J -s touka.scm)
(compile -d0 -O2 -s touka.import.scm)
(compile -d0 -O2 -s misc.scm)
(compile -d0 -O2 -s point.scm)

(install-extension
 'touka
 '(touka.so touka.import.so misc.so point.so)
 '((version 0.0.1)))

However the test (compile) phase aborts withe the following error:

  'csc' -feature compiling-extension -setup-mode-d0 -O2 -s point.scm
  Syntax error (import): cannot import from undefined module
misc

I need some help deciphering this message. misc.scm successfully gets
compiled to .so which I load at the beginning of point.
What am I doing wrong?

TIA,

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Multiple Modules - Cross Reference

2014-12-14 Thread Richard

Hello Bahman,


You have to emit (and compile) the import library for misc.scm, like you
did for touka.scm i.e:

(compile -d0 -O2 -J -s misc.scm)
(compile -d0 -O2 -J -s misc.import.scm)

all should work now.

good luck and no worries about 'spamming' the list.

greetings,
Richard

Bahman Movaqar writes:

 First of all, sorry for spamming the list :-)

 So, I've got two modules:

 ;; misc.scm
 (module misc
   ...)

 ;; point.scm
 (load misc)
 (module point
   (...)
   (import scheme chicken)
   (use srfi-1 misc)
   ...)

 And I've setup the project like below:

 (compile -d0 -O2 -J -s touka.scm)
 (compile -d0 -O2 -s touka.import.scm)
 (compile -d0 -O2 -s point.scm)

 (install-extension
  'touka
  '(touka.so touka.import.so misc.so point.so)
  '((version 0.0.1)))

 However the test (compile) phase aborts withe the following error:

   'csc' -feature compiling-extension -setup-mode-d0 -O2 -s point.scm
   Syntax error (import): cannot import from undefined module
 misc

 I need some help deciphering this message. misc.scm successfully gets
 compiled to .so which I load at the beginning of point.
 What am I doing wrong?

 TIA,

-- 

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Multiple Modules - Cross Reference

2014-12-14 Thread Richard

sorry, correction, do not put -J in the second line:
(compile -d0 -O2 -s misc.import.scm)


Richard writes:

 Hello Bahman,


 You have to emit (and compile) the import library for misc.scm, like you
 did for touka.scm i.e:

 (compile -d0 -O2 -J -s misc.scm)
 (compile -d0 -O2 -J -s misc.import.scm)

 all should work now.

 good luck and no worries about 'spamming' the list.

 greetings,
 Richard

 Bahman Movaqar writes:

 First of all, sorry for spamming the list :-)

 So, I've got two modules:

 ;; misc.scm
 (module misc
   ...)

 ;; point.scm
 (load misc)
 (module point
   (...)
   (import scheme chicken)
   (use srfi-1 misc)
   ...)

 And I've setup the project like below:

 (compile -d0 -O2 -J -s touka.scm)
 (compile -d0 -O2 -s touka.import.scm)
 (compile -d0 -O2 -s point.scm)

 (install-extension
  'touka
  '(touka.so touka.import.so misc.so point.so)
  '((version 0.0.1)))

 However the test (compile) phase aborts withe the following error:

   'csc' -feature compiling-extension -setup-mode-d0 -O2 -s point.scm
   Syntax error (import): cannot import from undefined module
 misc

 I need some help deciphering this message. misc.scm successfully gets
 compiled to .so which I load at the beginning of point.
 What am I doing wrong?

 TIA,

-- 

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Multiple Modules - Cross Reference

2014-12-14 Thread Bahman Movaqar
On 12/14/2014 09:55 PM, Richard wrote:
 Hello Bahman,


 You have to emit (and compile) the import library for misc.scm, like you
 did for touka.scm i.e:

Thanks for the hint. So the rule is to compile the .import.scm for any
module that is supposed to be imported by others?


 (compile -d0 -O2 -J -s misc.scm)
 (compile -d0 -O2 -J -s misc.import.scm)

 all should work now.

Nope. Though the error message has changed to the following:

'csi' -s run.scm touka
Error: (import) during expansion of (import ...) - cannot import
from undefined module: misc

From what I can understand it is choking on run.scm which is a very
simple file:

(use test)

(load ../misc)
(import  misc)
(include misc-tests)

(load ../point)
(import point)
(include point-tests)

(test-exit)


 good luck and no worries about 'spamming' the list.

Thanks!


 Bahman Movaqar writes:

 First of all, sorry for spamming the list :-)

 So, I've got two modules:

 ;; misc.scm
 (module misc
   ...)

 ;; point.scm
 (load misc)
 (module point
   (...)
   (import scheme chicken)
   (use srfi-1 misc)
   ...)

 And I've setup the project like below:

 (compile -d0 -O2 -J -s touka.scm)
 (compile -d0 -O2 -s touka.import.scm)
 (compile -d0 -O2 -s point.scm)

 (install-extension
  'touka
  '(touka.so touka.import.so misc.so point.so)
  '((version 0.0.1)))

 However the test (compile) phase aborts withe the following error:

   'csc' -feature compiling-extension -setup-mode-d0 -O2 -s point.scm
   Syntax error (import): cannot import from undefined module
 misc

 I need some help deciphering this message. misc.scm successfully gets
 compiled to .so which I load at the beginning of point.
 What am I doing wrong?

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Need help understanding include behaviour

2014-12-14 Thread Bahman Movaqar
On 12/14/2014 10:19 PM, John Cowan wrote:
 Bahman Movaqar scripsit:

 (use test)
 (load ../misc)
 (import misc)
 (test-group misc
   ...

 However when running `chicken-install -test` I get the following error:
 Error: (import) during expansion of (import ...) - cannot import
 from undefined module: misc
 When you aren't in the same directory, the misc.import.scm/.so can't
 be found, which is why the module can't be imported.  If you put the
 test files in the same directory as the main code, then you can just
 (use misc).

Does that mean that there's no way to have tests in the separate
directory or does it require special trickery?
 Now if I move the (load) and (import) expressions from misc-tests to
 run, everything works fine. What's the logic behind this behaviour of
 include [1]? I'd appreciate if someone would shed a light on this.
 Essentially, include happens at compile time: it is a macro that
 directly incorporates the file you mentioned.  Load is a run-time
 operation.  Note that since you are including your individual test file,
 there is no need to use test a second time.

Thanks for the information. But I still don't understand why moving
(load) and (import) to run.scm makes things work? :-)

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Multiple Modules - Cross Reference

2014-12-14 Thread Bahman Movaqar
On 12/14/2014 08:44 PM, Bahman Movaqar wrote:
 First of all, sorry for spamming the list :-)

 So, I've got two modules:

 ;; misc.scm
 (module misc
   ...)

 ;; point.scm
 (load misc)
 (module point
   (...)
   (import scheme chicken)
   (use srfi-1 misc)
   ...)

 And I've setup the project like below:

 (compile -d0 -O2 -J -s touka.scm)
 (compile -d0 -O2 -s touka.import.scm)
 (compile -d0 -O2 -s misc.scm)
 (compile -d0 -O2 -s point.scm)

 (install-extension
  'touka
  '(touka.so touka.import.so misc.so point.so)
  '((version 0.0.1)))

 However the test (compile) phase aborts withe the following error:

   'csc' -feature compiling-extension -setup-mode-d0 -O2 -s point.scm
   Syntax error (import): cannot import from undefined module
 misc

 I need some help deciphering this message. misc.scm successfully gets
 compiled to .so which I load at the beginning of point.
 What am I doing wrong?

So thanks to Richard and John I finally got things working. I even
pushed my working setup as a tag [1] so that other newcomers don't have
to go through the same puzzle.

[1] https://github.com/bahmanm/touka/tree/0.0.0

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)



signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] SRFI-99 - What is a variant type?

2014-12-14 Thread Bahman Movaqar
Reading the docs on SRFI-99 [1], I need some help understanding what is
a variant type. Would someone please pass me a relevant link to read?

-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] SRFI-99 - What is a variant type?

2014-12-14 Thread Alex Shinn
This appears to be a chicken-specific extension:

http://www.chust.org/fossils/srfi-99/wiki?name=variant+types

I'm not sure I understand that description, but appears to be something
like a union type?

-- 
Alex

On Mon, Dec 15, 2014 at 12:12 PM, Bahman Movaqar bah...@bahmanm.com wrote:

 Reading the docs on SRFI-99 [1], I need some help understanding what is
 a variant type. Would someone please pass me a relevant link to read?

 --
 Bahman Movaqar

 http://BahmanM.com - https://twitter.com/bahman__m
 https://github.com/bahmanm - https://gist.github.com/bahmanm
 PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)



 ___
 Chicken-users mailing list
 Chicken-users@nongnu.org
 https://lists.nongnu.org/mailman/listinfo/chicken-users


___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] SRFI-99 - What is a variant type?

2014-12-14 Thread Bahman Movaqar
On 12/15/2014 08:38 AM, Alex Shinn wrote:
 This appears to be a chicken-specific extension:

 http://www.chust.org/fossils/srfi-99/wiki?name=variant+types

 I'm not sure I understand that description, but appears to be
 something like a union type?



Thanks for your answer Alex. I didn't understand it either :-)


 On Mon, Dec 15, 2014 at 12:12 PM, Bahman Movaqar bah...@bahmanm.com
 mailto:bah...@bahmanm.com wrote:

 Reading the docs on SRFI-99 [1], I need some help understanding
 what is
 a variant type. Would someone please pass me a relevant link to
 read?


-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] SRFI-99 - What is a variant type?

2014-12-14 Thread Daniel Leslie
I'll chime in that I also find it a little clumsily written, but that it
reads to me like variant types are, in practice, little more than different
ways of identifying the same data. Which seems like something you could do
with an additional field, but perhaps you aren't interested in exposing any
implementation details of your type to the user and so this sort of
behaviour is desirable.

That said, I've never seen it in use.

-Dan

On Sun, Dec 14, 2014 at 9:58 PM, Bahman Movaqar bah...@bahmanm.com wrote:

 On 12/15/2014 08:38 AM, Alex Shinn wrote:
  This appears to be a chicken-specific extension:
 
  http://www.chust.org/fossils/srfi-99/wiki?name=variant+types
 
  I'm not sure I understand that description, but appears to be
  something like a union type?
 
 

 Thanks for your answer Alex. I didn't understand it either :-)

 
  On Mon, Dec 15, 2014 at 12:12 PM, Bahman Movaqar bah...@bahmanm.com
  mailto:bah...@bahmanm.com wrote:
 
  Reading the docs on SRFI-99 [1], I need some help understanding
  what is
  a variant type. Would someone please pass me a relevant link to
  read?
 

 --
 Bahman Movaqar

 http://BahmanM.com - https://twitter.com/bahman__m
 https://github.com/bahmanm - https://gist.github.com/bahmanm
 PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)



 ___
 Chicken-users mailing list
 Chicken-users@nongnu.org
 https://lists.nongnu.org/mailman/listinfo/chicken-users


___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] Installing combinatorics - cock missing

2014-12-14 Thread Bahman Movaqar
Has anyone recently managed to install combinatorics [1]?
chicken-install (truely) keeps complaining about cock egg not exisiting.

bahman@hamun:~/Work/Touka$ chicken-install combinatorics
retrieving ...
connecting to host chicken.kitten-technologies.co.uk, port 80 ...
requesting /henrietta.cgi?name=combinatoricsmode=default ...
reading response ...
HTTP/1.1 200 OK
Date: Mon, 15 Dec 2014 07:46:43 GMT
Server: Apache/2.2.29 (Unix) DAV/2 SVN/1.8.10 PHP/5.4.32
mod_fastcgi/2.4.6
Transfer-Encoding: chunked
Content-Type: text/plain
Connection: close
reading chunks ...
reading files ...
  ./TODO.org
  ./combinatorics-core.scm
  ./combinatorics.meta
  ./combinatorics.release-info
  ./combinatorics.scm
  ./combinatorics.setup
  ./combinatorics.wiki
 combinatorics located at /tmp/temp6d7f.9819/combinatorics
checking platform for `combinatorics' ...
checking dependencies for `combinatorics' ...
 missing: cock, setup-helper, vector-lib
retrieving ...
connecting to host chicken.kitten-technologies.co.uk, port 80 ...
requesting /henrietta.cgi?name=cockmode=default ...
reading response ...
HTTP/1.1 403 Forbidden
HTTP protocol error
connecting to host code.call-cc.org, port 80 ...
requesting /cgi-bin/henrietta.cgi?name=cockmode=default ...
reading response ...
HTTP/1.1 403 Forbidden
HTTP protocol error


Error: extension or version not found


-- 
Bahman Movaqar

http://BahmanM.com - https://twitter.com/bahman__m
https://github.com/bahmanm - https://gist.github.com/bahmanm
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)




signature.asc
Description: OpenPGP digital signature
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users