Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-09 Thread Alex Shinn
On Thu, May 5, 2011 at 7:18 PM, Peter Bex peter@xs4all.nl wrote:

 With Lisp/Scheme code, the only sensible indentation style really is
 spaces.  With braces-like languages like C it makes sense to use tabs
 if used consistently, but even there it's a good source of flamewars.

You get exactly the same problem in C with nested function
applications:

  foo(some_long_function_call1(...),
some_long_function_call2(...),
...);

-- 
Alex

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-09 Thread Peter Bex
On Mon, May 09, 2011 at 10:25:27PM +0900, Alex Shinn wrote:
 On Thu, May 5, 2011 at 7:18 PM, Peter Bex peter@xs4all.nl wrote:
 
  With Lisp/Scheme code, the only sensible indentation style really is
  spaces.  With braces-like languages like C it makes sense to use tabs
  if used consistently, but even there it's a good source of flamewars.
 
 You get exactly the same problem in C with nested function
 applications:
 
   foo(some_long_function_call1(...),
 some_long_function_call2(...),
 ...);

Yeah. You can still use tabs to align things within block though!
To get completely consistent results you'd need to indent using tabs
up till you're aligned with foo and use spaces to indent the arguments.

I think the TabsAreEvil page describes this too.

Cheers,
Peter
-- 
http://sjamaan.ath.cx
--
The process of preparing programs for a digital computer
 is especially attractive, not only because it can be economically
 and scientifically rewarding, but also because it can be an aesthetic
 experience much like composing poetry or music.
-- Donald Knuth

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-08 Thread Felix
 
 I'm not crazy at getting bleeding edge eggs.. However, I do like to upgrade
 `chicken' itself whenever a newer release comes out.  Only realize that i have
 to find out and reinstall all eggs again. (Because at least all the eggs have 
 to
 be recompiled using the new chicken?)

Not always, only if some incompatibility has been introduced, particularly in
the C runtime system or header-files.

I have added an option called -reinstall to chicken-install (see experimental
branch). This will reinstall all installed eggs, using the same versions. Only
minimally tested, though.


cheers,
felix

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-08 Thread Peter Bex
On Sun, May 08, 2011 at 12:52:36PM +0200, Felix wrote:
  
  I'm not crazy at getting bleeding edge eggs.. However, I do like to upgrade
  `chicken' itself whenever a newer release comes out.  Only realize that i 
  have
  to find out and reinstall all eggs again. (Because at least all the eggs 
  have to
  be recompiled using the new chicken?)
 
 Not always, only if some incompatibility has been introduced, particularly in
 the C runtime system or header-files.
 
 I have added an option called -reinstall to chicken-install (see 
 experimental
 branch). This will reinstall all installed eggs, using the same versions. Only
 minimally tested, though.

I don't think this will help much.  If there's an incompatibility,
generally the ABI version is increased too (the 5 in /usr/lib/chicken/5/),
so reinstall would reinstall all 0 eggs you have under the new directory :)

Cheers,
Peter
-- 
http://sjamaan.ath.cx
--
The process of preparing programs for a digital computer
 is especially attractive, not only because it can be economically
 and scientifically rewarding, but also because it can be an aesthetic
 experience much like composing poetry or music.
-- Donald Knuth

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-08 Thread Felix
From: Peter Bex peter@xs4all.nl
Subject: Re: [Chicken-users] [wish list] chicken-install: show available eggs, 
upgrade all installed eggs?
Date: Sun, 8 May 2011 13:15:18 +0200

 On Sun, May 08, 2011 at 12:52:36PM +0200, Felix wrote:
  
  I'm not crazy at getting bleeding edge eggs.. However, I do like to upgrade
  `chicken' itself whenever a newer release comes out.  Only realize that i 
  have
  to find out and reinstall all eggs again. (Because at least all the eggs 
  have to
  be recompiled using the new chicken?)
 
 Not always, only if some incompatibility has been introduced, particularly in
 the C runtime system or header-files.
 
 I have added an option called -reinstall to chicken-install (see 
 experimental
 branch). This will reinstall all installed eggs, using the same versions. 
 Only
 minimally tested, though.
 
 I don't think this will help much.  If there's an incompatibility,
 generally the ABI version is increased too (the 5 in /usr/lib/chicken/5/),
 so reinstall would reinstall all 0 eggs you have under the new directory :)

With incompatibility I mean small ones. Normally the ABI doesn't change.
The case you describe here is for big incompatibilities. Hey, it's a start, ok?


cheers,
felix

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread Felix
Hello!

 It would be good to be able to show available eggs when installing an egg, 
 such
 that user can grep and find wanted eggs quickly without having to browse at
 http://wiki.call-cc.org/chicken-projects/egg- index-4.html.  Simply a text 
 dump
 of that html page would help much.

That is possible, but would require a regularly updated master document 
somewhere
on our server.

 
 The other feature is being able to upgrade all installed eggs after, for
 instance, upgrading chicken.  Then i don't have to reinstall each missing one 
 by
 one, desperately.

That has been requested repeatedly in the past, but I'm
sceptical. Bulk updates like that make it extremely easy to break
everything, unless you have a very rigid control over the stability of
the currently available extensions.  The egg repository is actually
pretty good in that regard, but still, broken eggs and broken
dependencies slip in from time to time. We are quick to fix those, but
something like a bulk update could easily result in broken
installations.

For example, I may have several applications that use one or the other
installed egg. Those eggs may be out of date, but I'm more interested
in having my system running, so when I install new extensions,
chicken-install will warn me when an egg requires higher versions
and I have the choice to think twice about whether I want to do that
or not.

On the other hand, some people like to be up-to-date at every cost, so
for those a bulk update option might be desirable. 

To come to the point: should be possible, but currently not of high
priority.

 P.S. The mixture of tabs and space in the source codes really cause a headache
 for the indention..

What editor are you using?


cheers,
felix

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread Peter Bex
On Thu, May 05, 2011 at 06:06:16AM -0400, Felix wrote:
 Hello!
 
  It would be good to be able to show available eggs when installing an egg, 
  such
  that user can grep and find wanted eggs quickly without having to browse at
  http://wiki.call-cc.org/chicken-projects/egg- index-4.html.  Simply a text 
  dump
  of that html page would help much.
 
 That is possible, but would require a regularly updated master document 
 somewhere
 on our server.

Like egg-locations in the new distributed system? ;)
http://bugs.call-cc.org/browser/release/4/egg-locations

  P.S. The mixture of tabs and space in the source codes really cause a 
  headache
  for the indention..
 
 What editor are you using?

I agree that TabsAreEvil in Scheme/Lisp code.  Even with emacs, it's
highly dependent on your tab width.

Suppose I indented the following piece of code using tabs with a tab
setting of 4:

(define (foo)
  (if (whatever)
  (print whatever)
  (print not whatever)))

and you view it with a tab setting of 8, you'd get:
(define (foo)
  (if (whatever)
  (print whatever)
  (print not whatever)))

When indenting with tab setting 8 and viewing with tab setting 4, you
get the opposite thing (things not indented far enough).

With Lisp/Scheme code, the only sensible indentation style really is
spaces.  With braces-like languages like C it makes sense to use tabs
if used consistently, but even there it's a good source of flamewars.

Because if you consistently indent and have set tabs to 8, it looks like
this on the screen:

int main(void) {
if (whatever) {
printf(blah\n);
}
}

When someone with tabs set to 4 views this code, he or she will see
the following:

int main(void) {
if (whatever) {
printf(blah\n);
}
}

See also http://emacswiki.org/TabsAreEvil

Cheers,
Peter
-- 
http://sjamaan.ath.cx
--
The process of preparing programs for a digital computer
 is especially attractive, not only because it can be economically
 and scientifically rewarding, but also because it can be an aesthetic
 experience much like composing poetry or music.
-- Donald Knuth

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread Felix
 See also http://emacswiki.org/TabsAreEvil

It's the default behaviour of my emacs and it saves time (in the way I
use the keyboard). And telling people how to layout the invisible part
of their code is a waste of time.


cheers,
felix

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread Peter Bex
On Thu, May 05, 2011 at 06:52:16AM -0400, Felix wrote:
  See also http://emacswiki.org/TabsAreEvil
 
 It's the default behaviour of my emacs

That's *very* easy to fix and I don't understand why emacs has
such a silly default for lispy modes:

(add-hook 'lisp-mode-hook (lambda () (setq indent-tabs-mode nil)))
(add-hook 'scheme-mode-hook (lambda () (setq indent-tabs-mode nil)))

 and it saves time (in the way I use the keyboard).

I don't really understand how.

If you mean you press the tab key to auto-indent, that still works even
if indent-tabs-mode is off (at least here it does).  You can also press
tab to jump to the start of a line even if it's already indented.

 And telling people how to layout the invisible part of their code
 is a waste of time.

I understand that, and that's why I didn't complain about it before
(also, my emacs happens to have the same tab width as yours so it's
 not as jarring to me as it was to the OP)

But since others have spoken up and this is easy to fix, I decided
to chime in.

Cheers,
Peter
-- 
http://sjamaan.ath.cx
--
The process of preparing programs for a digital computer
 is especially attractive, not only because it can be economically
 and scientifically rewarding, but also because it can be an aesthetic
 experience much like composing poetry or music.
-- Donald Knuth

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread Stephen Eilert
On Thu, May 5, 2011 at 7:06 AM, Felix
fe...@call-with-current-continuation.org wrote:
 Hello!

 It would be good to be able to show available eggs when installing an egg, 
 such
 that user can grep and find wanted eggs quickly without having to browse at
 http://wiki.call-cc.org/chicken-projects/egg- index-4.html.  Simply a text 
 dump
 of that html page would help much.

 That is possible, but would require a regularly updated master document 
 somewhere
 on our server.

Henrietta already provides a list of eggs to chicken-install. I
suppose that could be used, if we don't care about showing egg
descriptions in such a list.



 The other feature is being able to upgrade all installed eggs after, for
 instance, upgrading chicken.  Then i don't have to reinstall each missing 
 one by
 one, desperately.

 That has been requested repeatedly in the past, but I'm
 sceptical. Bulk updates like that make it extremely easy to break
 everything, unless you have a very rigid control over the stability of
 the currently available extensions.  The egg repository is actually
 pretty good in that regard, but still, broken eggs and broken
 dependencies slip in from time to time. We are quick to fix those, but
 something like a bulk update could easily result in broken
 installations.

 For example, I may have several applications that use one or the other
 installed egg. Those eggs may be out of date, but I'm more interested
 in having my system running, so when I install new extensions,
 chicken-install will warn me when an egg requires higher versions
 and I have the choice to think twice about whether I want to do that
 or not.

But only if you already know which versions you are supposed to be
using. For deployed code, I guess you could take the list from a
running server, manually. For code sitting in a repository, it doesn't
work like that. Even when you do know the versions, it could get
tedious.

However, you've already provided the solution for that, your 'overrides' :)


--Stephen

Sent from my Emacs

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread David N Murray
On May 5, Felix scribed:


 For example, I may have several applications that use one or the other
 installed egg. Those eggs may be out of date, but I'm more interested
 in having my system running, so when I install new extensions,
 chicken-install will warn me when an egg requires higher versions
 and I have the choice to think twice about whether I want to do that
 or not.

Maybe I'm not doing it right, but when I install a new version of chicken,
I don't have a way to rebuild the eggs, short of using chicken-install to
re-retrieve the egg and rebuild.  Is there another way to do this?  Do
people normally keep the egg source laying around for chicken upgrades?  I
don't see an option on chicken-install to set this up, but I have to admit
I haven't looked very hard.

tia,
dave

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread Peter Bex
On Thu, May 05, 2011 at 11:33:54AM -0300, Stephen Eilert wrote:
 On Thu, May 5, 2011 at 7:06 AM, Felix
  That is possible, but would require a regularly updated master document 
  somewhere
  on our server.
 
 Henrietta already provides a list of eggs to chicken-install.

AFAIK it doesn't do that.  chicken-install asks for an egg of a
particular name, and henrietta either returns that or gives an error.
You need to know the egg name beforehand.

But, like I said before, if the new distributed system will be used,
this list is already -necessarily- available.  Nobody seems particularly
interested in the distributed system though, so we might just scrap it.

 I suppose that could be used, if we don't care about showing egg
 descriptions in such a list.

Descriptions aren't in the distributed list either.  It could be fetched
recursively of course.

Cheers,
Peter
-- 
http://sjamaan.ath.cx
--
The process of preparing programs for a digital computer
 is especially attractive, not only because it can be economically
 and scientifically rewarding, but also because it can be an aesthetic
 experience much like composing poetry or music.
-- Donald Knuth

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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread William Xu
Felix felix at call-with-current-continuation.org writes:

 That is possible, but would require a regularly updated master document
 somewhere on our server.

Good.. I tend to use chicken-install in a way similar to apt-get in Debian.

  The other feature is being able to upgrade all installed eggs after, for
  instance, upgrading chicken.  Then i don't have to reinstall each missing
  one by one, desperately.

 That has been requested repeatedly in the past, but I'm
 sceptical. Bulk updates like that make it extremely easy to break
 everything, unless you have a very rigid control over the stability of
 the currently available extensions.  The egg repository is actually
 pretty good in that regard, but still, broken eggs and broken
 dependencies slip in from time to time. We are quick to fix those, but
 something like a bulk update could easily result in broken
 installations.
 
 For example, I may have several applications that use one or the other
 installed egg. Those eggs may be out of date, but I'm more interested
 in having my system running, so when I install new extensions,
 chicken-install will warn me when an egg requires higher versions
 and I have the choice to think twice about whether I want to do that
 or not.
 
 On the other hand, some people like to be up-to-date at every cost, so
 for those a bulk update option might be desirable. 
 
 To come to the point: should be possible, but currently not of high
 priority.

I'm not crazy at getting bleeding edge eggs.. However, I do like to upgrade
`chicken' itself whenever a newer release comes out.  Only realize that i have
to find out and reinstall all eggs again. (Because at least all the eggs have to
be recompiled using the new chicken?)

 What editor are you using?

Emacs.  You mentioned in the other mail it has no problem with default setup.  i
think that may be due to my emacs config then, i will check my config.  However,
eliminating use of tabs would still be much better, where the indention will be
the same in all editors.


-William



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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread matt welland
On Thu, 2011-05-05 at 16:51 +0200, Peter Bex wrote:
 On Thu, May 05, 2011 at 11:33:54AM -0300, Stephen Eilert wrote:
  On Thu, May 5, 2011 at 7:06 AM, Felix
   That is possible, but would require a regularly updated master document 
   somewhere
   on our server.
  
  Henrietta already provides a list of eggs to chicken-install.
 
 AFAIK it doesn't do that.  chicken-install asks for an egg of a
 particular name, and henrietta either returns that or gives an error.
 You need to know the egg name beforehand.
 
 But, like I said before, if the new distributed system will be used,
 this list is already -necessarily- available.  Nobody seems particularly
 interested in the distributed system though, so we might just scrap it.

On the contrary! I'm very interested in the distributed system. It is
physically written down on my todo list to find the documentation and
give it a go. Please don't drop it yet! 

  I suppose that could be used, if we don't care about showing egg
  descriptions in such a list.
 
 Descriptions aren't in the distributed list either.  It could be fetched
 recursively of course.
 
 Cheers,
 Peter



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


Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-05 Thread Jim Ursetto
On May 5, 2011, at 9:58 AM, William Xu wrote:

 Felix felix at call-with-current-continuation.org writes:
 What editor are you using?
 
 Emacs.  You mentioned in the other mail it has no problem with default setup. 
  i
 think that may be due to my emacs config then, i will check my config.  
 However,
 eliminating use of tabs would still be much better, where the indention will 
 be
 the same in all editors.

Hi there,
Try putting the following in .dir-locals.el in the root directory of your git 
checkout:

((nil . ((indent-tabs-mode . t)
 (tab-width . 8

This will cause your emacs to maintain Felix's indentation conventions when 
editing any file under that directory, without changing your preferred defaults.

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


[Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?

2011-05-04 Thread William Xu
Hi, 

It would be good to be able to show available eggs when installing an egg, such
that user can grep and find wanted eggs quickly without having to browse at
http://wiki.call-cc.org/chicken-projects/egg- index-4.html.  Simply a text dump
of that html page would help much.

The other feature is being able to upgrade all installed eggs after, for
instance, upgrading chicken.  Then i don't have to reinstall each missing one by
one, desperately.

Thanks.

P.S. The mixture of tabs and space in the source codes really cause a headache
for the indention..


-William



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