Re: [Chicken-users] New Egg: Tween

2013-01-13 Thread Felix
From: Daniel Leslie d...@ironoxide.ca
Subject: [Chicken-users] New Egg: Tween
Date: Sat, 12 Jan 2013 16:56:08 -0800

 Hi all,
 
 I've just finished up the first version of my Tween egg. It provides a
 (loose) port of Tween.js for Scheme. The functionality that tracked tween
 state is not present, as I felt that's better left to the client of the API
 and wasn't very much in the tradition of scheme, but otherwise it's
 functionally intact.

Wow. This is one of those things that one needs over and over again,
but never finds the time to do it properly. Thanks a lot, Dan!


cheers,
felix

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


[Chicken-users] [new egg] pilgrim

2013-01-13 Thread richo

I've been working on another http engine for chicken (I know, reinventing the
wheel. but it seemed like a fun way to learn about how it worked).

Anyway, it was fine to keep my code vendored up in the only project using it,
but I want to use it in a second project, and as far as I can tell with the
existing infrastructure I need to package it up and distribute it as an egg.

Can someone with commit access please add:

https://raw.github.com/richo/pilgrim/master/pilgrim.release-info

To the relevant locations (and let me know if I did it right? I couldn't see
an obvious way to have (requires pilgrim) result in master being checked out
while I'm still hacking on it.

I followed this:

http://wiki.call-cc.org/releasing-your-egg#github-git

Finally, I think this may be my first post to the list, so; Hi!

Cheers

richo


--
richo || Today's excuse:

virus attack, luser responsible
http://blog.psych0tik.net


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


Re: [Chicken-users] [new egg] pilgrim

2013-01-13 Thread Peter Bex
On Mon, Jan 14, 2013 at 12:31:35AM +1100, richo wrote:
 I've been working on another http engine for chicken (I know, reinventing 
 the wheel. but it seemed like a fun way to learn about how it worked).

We don't mind, in fact we slightly encourage a sense of anarchy and
diversity in our extensions.

 Anyway, it was fine to keep my code vendored up in the only project using it,
 but I want to use it in a second project, and as far as I can tell with the
 existing infrastructure I need to package it up and distribute it as an egg.
 
 Can someone with commit access please add:
 
 https://raw.github.com/richo/pilgrim/master/pilgrim.release-info
 
 To the relevant locations (and let me know if I did it right?

Done!  You did it right, AFAICT

 I couldn't see
 an obvious way to have (requires pilgrim) result in master being checked out
 while I'm still hacking on it.

Well, that's indeed not supported.  The distributed egg repository only
supports publishing released eggs with a given version.  You'll need to
tag a release and add this release to the release-info file for it to be
installable.  After pushing this, the egg should appear on the main
server within the hour.  I think Alaric's mirror takes a little longer
to show up.

 I followed this:
 
 http://wiki.call-cc.org/releasing-your-egg#github-git

Excellent.  If you had any difficulty I'd love to get feedback on this.

 Finally, I think this may be my first post to the list, so; Hi!

Hello!  Welcome!  Please help yourself to some tasty code :)

Cheers,
Peter
-- 
http://sjamaan.ath.cx

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


Re: [Chicken-users] [new egg] pilgrim

2013-01-13 Thread richo

On 13/01/13 16:02 +0100, Peter Bex wrote:

On Mon, Jan 14, 2013 at 12:31:35AM +1100, richo wrote:

I've been working on another http engine for chicken (I know, reinventing
the wheel. but it seemed like a fun way to learn about how it worked).


We don't mind, in fact we slightly encourage a sense of anarchy and
diversity in our extensions.


Anyway, it was fine to keep my code vendored up in the only project using it,
but I want to use it in a second project, and as far as I can tell with the
existing infrastructure I need to package it up and distribute it as an egg.

Can someone with commit access please add:

https://raw.github.com/richo/pilgrim/master/pilgrim.release-info

To the relevant locations (and let me know if I did it right?


Done!  You did it right, AFAICT



So I just post to the list again with each new version? Or will it enumerate
my tags automagically?


I couldn't see
an obvious way to have (requires pilgrim) result in master being checked out
while I'm still hacking on it.


Well, that's indeed not supported.  The distributed egg repository only
supports publishing released eggs with a given version.  You'll need to
tag a release and add this release to the release-info file for it to be
installable.  After pushing this, the egg should appear on the main
server within the hour.  I think Alaric's mirror takes a little longer
to show up.



Thinking about it, it should be pretty easy to develop new features in my
application, and when they're stable push them back into pilgrim to be
generally consumable, and then bump the patchlevel.

This is probably a saner way to do it anyway.


I followed this:

http://wiki.call-cc.org/releasing-your-egg#github-git


Excellent.  If you had any difficulty I'd love to get feedback on this.



So far it was good. A few weird loops I ended up in, I might put together
some thoughts tomorrow.


Finally, I think this may be my first post to the list, so; Hi!


Hello!  Welcome!  Please help yourself to some tasty code :)



Thanks

I've been hacking on and off on various scheme projects for a few months, I'm
on #chicken semi-regularly.


Cheers,
Peter
--
http://sjamaan.ath.cx

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


--
richo || Today's excuse:

Power company testing new voltage spike (creation) equipment
http://blog.psych0tik.net


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


Re: [Chicken-users] [new egg] pilgrim

2013-01-13 Thread Peter Bex
On Mon, Jan 14, 2013 at 02:10:04AM +1100, richo wrote:
 On 13/01/13 16:02 +0100, Peter Bex wrote:
 To the relevant locations (and let me know if I did it right?
 
 Done!  You did it right, AFAICT
 
 So I just post to the list again with each new version? Or will it enumerate
 my tags automagically?

The manual action is required to add your .release-info file to the
master list, so it knows to fetch this file.  After that, any change to
release-info is automatically picked up whenever it's redownloaded
(which happens every hour or so).

You can use the git-egg-author egg to streamline the process of tagging
releases.

 Thinking about it, it should be pretty easy to develop new features in my
 application, and when they're stable push them back into pilgrim to be
 generally consumable, and then bump the patchlevel.

I think that should work.  But please don't overdo it wrt number of
releases.  For each release we cache a complete copy of the code.

 I followed this:
 http://wiki.call-cc.org/releasing-your-egg#github-git
 
 Excellent.  If you had any difficulty I'd love to get feedback on this.
 
 So far it was good. A few weird loops I ended up in, I might put together
 some thoughts tomorrow.

Thanks!

Cheers,
Peter
-- 
http://sjamaan.ath.cx

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


[Chicken-users] [Q] uri-common has problem with UTF-8 uri.

2013-01-13 Thread Sungjin Chun
For testing solr, lucene based client, I have to create url which contains 
utf-8 encoding(for Korean). But having this encoding uri-common cannot create 
uri. 

Can any one help me on this? Thanks.

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


Re: [Chicken-users] [Q] uri-common has problem with UTF-8 uri.

2013-01-13 Thread Peter Bex
On Mon, Jan 14, 2013 at 07:04:05AM +0900, Sungjin Chun wrote:
 For testing solr, lucene based client, I have to create url which contains 
 utf-8 encoding(for Korean). But having this encoding uri-common cannot create 
 uri. 
 
 Can any one help me on this? Thanks.

Hello Sungjin,

As far as I recall, there's no special facility for IRIs
(internationalized URIs, a separate RFC from 3986) in uri-generic.
uri-generic is the underlying egg which actually handles all the
parsing, uri-common just adds some convenience procedures for
HTTP and URI-encoded forms.  Maybe you can take a look at the
uri-geneirc library, and verify it really is going wrong there already?

If it doesn't work, some test cases would be appreciated.  We can have
a look at them and see where it's failing.  I'm unsure whether this
really should be supported by the uri-generic egg or whether it would
be better to create an iri-generic egg, or some such.

Perhaps Ivan can chime in?  He is the one who originally ported the
code from a Haskell library, and might know whether that library had
any known problems with IRIs (if it's even IRIs we're talking about!)

Cheers,
Peter
-- 
http://sjamaan.ath.cx

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


Re: [Chicken-users] [Q] uri-common has problem with UTF-8 uri.

2013-01-13 Thread Sungjin Chun
Though I'm not that fluent in scheme, I'll try to make test case for
uri-generic with UTF-8 string.

Thanks.


On Mon, Jan 14, 2013 at 7:15 AM, Peter Bex peter@xs4all.nl wrote:

 On Mon, Jan 14, 2013 at 07:04:05AM +0900, Sungjin Chun wrote:
  For testing solr, lucene based client, I have to create url which
 contains utf-8 encoding(for Korean). But having this encoding uri-common
 cannot create uri.
 
  Can any one help me on this? Thanks.

 Hello Sungjin,

 As far as I recall, there's no special facility for IRIs
 (internationalized URIs, a separate RFC from 3986) in uri-generic.
 uri-generic is the underlying egg which actually handles all the
 parsing, uri-common just adds some convenience procedures for
 HTTP and URI-encoded forms.  Maybe you can take a look at the
 uri-geneirc library, and verify it really is going wrong there already?

 If it doesn't work, some test cases would be appreciated.  We can have
 a look at them and see where it's failing.  I'm unsure whether this
 really should be supported by the uri-generic egg or whether it would
 be better to create an iri-generic egg, or some such.

 Perhaps Ivan can chime in?  He is the one who originally ported the
 code from a Haskell library, and might know whether that library had
 any known problems with IRIs (if it's even IRIs we're talking about!)

 Cheers,
 Peter
 --
 http://sjamaan.ath.cx

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


[Chicken-users] Random crashes with zmq egg: Assertion failed: ok (mailbox.cpp:84)

2013-01-13 Thread Matt Welland
Can anyone provide insight to this problem. I'm getting random crashes with
the zmq egg:

Assertion failed: ok (mailbox.cpp:84)
/home/matt/data/megatest/bin/megatest: line 3: 15962
Aborted (core dumped) /home/matt/data/megatest/bin/mtest $*


This thread here describes what might be a similar issue in the perl zmq
binding:

https://github.com/lestrrat/ZeroMQ-Perl/issues/42

BTW, I'm not at 100% confident that the problem isn't my code but I've no
clue what to look at.
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


[Chicken-users] Some questions about loading libraries

2013-01-13 Thread Matt Gushee
Hi, all--

I am developing a project which I expect will involve a number of extension
libraries, or plugins (a large number, many of them provided by third
parties, if my project ever becomes popular). For several reasons (which I
will explain on request if anyone is curious), I feel it is best *not* to
implement these libraries as eggs. So I am trying to work out a reasonable
method for deploying the libraries and loading them at runtime.

Required features:
 * users (who might not have admin privileges) can determine
where the libraries are installed
 * users can select which libraries to use in an application (and this
potentially entails selecting alternate implementations of the
same functionality)
 * the main application can find the required libraries at runtime

Desirable features:
 * a user should be able to just install the software and start to
use it without doing any configuration
 * all library code is in modules

I've spent a good deal of time browsing the documentation and
experimenting, and I can see how to achieve the required features but not
the desirable ones. But before I start making compromises, I thought I'd
check with the list to see if my understandings are correct. So here are my
questions ... as implied above, I think the answers are not the ones I
want, but I'm hoping I've overlooked something ;-) :

1) Is there a way to set an arbitrary search path, such that REQUIRE (or
LOAD, or some such thing) will work when the library is in a non-standard
location?

2) Is it possible to load a library selected at runtime (via an environment
variable, config file, command-line argument ... the exact method isn't
that important) AND have the symbols defined in that library included in a
module?

3) Is there a way for a Chicken executable or library to determine its own
location in the filesystem?

4) Is LOAD-RELATIVE broken? I wrote some test code to try to use that
procedure, but as far as I can tell it behaves just like LOAD, i.e. any
relative path I give it is determined relative to the current directory
from which the program is invoked. Though I would note that the
documentation isn't entirely clear to me: loads FILE relative to the path
of the currently loaded file. ...? What does the currently loaded file
mean? I will be happy to post my code if this is not a known issue.

Thanks for any  all info!
--
Matt Gushee
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] [Q] uri-common has problem with UTF-8 uri.

2013-01-13 Thread Sungjin Chun
First, I might have found wrong place but...

It seems that the main source of the my problem is related to the part of
uri-generic.scm, especially;

(define char-set:uri-unreserved
  (char-set union char-set:letter+digit (string-char-set -_.~)))

If I change this part as;

(define char-set:uri-unreserved
  (char-set union char-set:letter+digit (string-char-set -_.~)
char-set:hangul))

then, uri/url with korean characters work. How can I set those part more
generic one?

Thank you in advance and sorry for my poor english.



On Mon, Jan 14, 2013 at 7:15 AM, Peter Bex peter@xs4all.nl wrote:

 On Mon, Jan 14, 2013 at 07:04:05AM +0900, Sungjin Chun wrote:
  For testing solr, lucene based client, I have to create url which
 contains utf-8 encoding(for Korean). But having this encoding uri-common
 cannot create uri.
 
  Can any one help me on this? Thanks.

 Hello Sungjin,

 As far as I recall, there's no special facility for IRIs
 (internationalized URIs, a separate RFC from 3986) in uri-generic.
 uri-generic is the underlying egg which actually handles all the
 parsing, uri-common just adds some convenience procedures for
 HTTP and URI-encoded forms.  Maybe you can take a look at the
 uri-geneirc library, and verify it really is going wrong there already?

 If it doesn't work, some test cases would be appreciated.  We can have
 a look at them and see where it's failing.  I'm unsure whether this
 really should be supported by the uri-generic egg or whether it would
 be better to create an iri-generic egg, or some such.

 Perhaps Ivan can chime in?  He is the one who originally ported the
 code from a Haskell library, and might know whether that library had
 any known problems with IRIs (if it's even IRIs we're talking about!)

 Cheers,
 Peter
 --
 http://sjamaan.ath.cx

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


Re: [Chicken-users] [Q] uri-common has problem with UTF-8 uri.

2013-01-13 Thread Sungjin Chun
As far as I know, revised RFC permits UTF-8 characters in the URL without
encoding. Am I wrong here?
Even Solr (the search engine) permits them.


On Mon, Jan 14, 2013 at 1:26 PM, Alex Shinn alexsh...@gmail.com wrote:

 Hi,

 On Mon, Jan 14, 2013 at 12:52 PM, Sungjin Chun chu...@gmail.com wrote:

 First, I might have found wrong place but...

 It seems that the main source of the my problem is related to the part of
 uri-generic.scm, especially;

 (define char-set:uri-unreserved
   (char-set union char-set:letter+digit (string-char-set -_.~)))

 If I change this part as;

 (define char-set:uri-unreserved
   (char-set union char-set:letter+digit (string-char-set -_.~)
 char-set:hangul))

 then, uri/url with korean characters work. How can I set those part more
 generic one?


 I believe the ASCII definition is correct even for Unicode URLs.
 You need to represent the URL in utf8 and then use percent
 escapes on the utf8 bytes, which is what would happen naturally
 here.

 --
 Alex


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


Re: [Chicken-users] [Q] uri-common has problem with UTF-8 uri.

2013-01-13 Thread Alex Shinn
On Mon, Jan 14, 2013 at 1:36 PM, Sungjin Chun chu...@gmail.com wrote:

 As far as I know, revised RFC permits UTF-8 characters in the URL without
 encoding. Am I wrong here?


The latest URI RFC is 3986.  The relevant description in prose is:

  Local names, such as file system names, are stored with a local
  character encoding.  URI producing applications (e.g., origin
  servers) will typically use the local encoding as the basis for
  producing meaningful names.  The URI producer will transform the
  local encoding to one that is suitable for a public interface and
  then transform the public interface encoding into the restricted set
  of URI characters (reserved, unreserved, and percent-encodings).
  Those characters are, in turn, encoded as octets to be used as a
  reference within a data format (e.g., a document charset), and such
  data formats are often subsequently encoded for transmission over
  Internet protocols.

The relevant parts of the BNF are:

   pct-encoded = % HEXDIG HEXDIG

   reserved= gen-delims / sub-delims

   gen-delims  = : / / / ? / # / [ / ] / @

   sub-delims  = ! / $ /  / ' / ( / )
   / * / + / , / ; / =

   unreserved  = ALPHA / DIGIT / - / . / _ / ~

   path  = path-abempty; begins with / or is empty
 / path-absolute   ; begins with / but not //
 / path-noscheme   ; begins with a non-colon segment
 / path-rootless   ; begins with a segment
 / path-empty  ; zero characters

   path-abempty  = *( / segment )
   path-absolute = / [ segment-nz *( / segment ) ]
   path-noscheme = segment-nz-nc *( / segment )
   path-rootless = segment-nz *( / segment )
   path-empty= 0pchar

   segment   = *pchar
   segment-nz= 1*pchar
   segment-nz-nc = 1*( unreserved / pct-encoded / sub-delims / @ )
 ; non-zero-length segment without any colon :

   pchar = unreserved / pct-encoded / sub-delims / : / @

Thus you can't use raw non-ASCII bytes in a URI - they must
be encoded, and interpretation is up to the origin (and is overwhelmingly
utf8 these days).

Even Solr (the search engine) permits them.


It would of course be possible for any tool or webserver to
accept URIs with non-ASCII bytes, but I don't know of any
browsers which would _send_ such a request, because in
general it would be rejected.

I tried searching non-ASCII on whitehouse.gov (which uses
Solr) and indeed it generated a percent-encoded query.  My
browser (Chrome) rendered the percent escapes as utf-8 for
me though.

There's also punycode which can be used to represent Unicode
domain names (which otherwise don't even allow percent escapes).
In some cases certain browsers will render this for you (generally
if the encoded script matches the top-level country name, e.g.
for a .kr domain Hangul would be shown), but it's in general
a dangerous extension because it makes phishing attempts easier.

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