Re: [Chicken-users] [wish list] chicken-install: show available eggs, upgrade all installed eggs?
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?
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?
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?
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?
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?
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?
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?
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?
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?
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?
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?
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?
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?
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?
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?
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