* Guile 1.7.1 has been released. @ 2004-08-26 23:02 Marius Vollmer 2004-08-27 22:57 ` Jonathan Bartlett 2004-08-28 21:35 ` Michael Tuexen 0 siblings, 2 replies; 5+ messages in thread From: Marius Vollmer @ 2004-08-26 23:02 UTC (permalink / raw) We are pleased to announce the release of Guile 1.7.1. This is a 'technology preview' for the upcoming Guile 1.8. It can be found here: ftp://alpha.gnu.org/gnu/guile/guile-1.7.1.tar.gz Its MD5 checksum is 21c9f4061166900d2926955ade0ef5cc guile-1.7.1.tar.gz This version is guaranteed to contain serious bugs, and the publically visible interfaces will almost certainly change before 1.8 is released. The 1.7 releases might be termed "selected snapshots". We are releasing it anyway to start testing the new features, and to get feedback about how difficult or tedious it is to switch from Guile 1.6 to this series. Ideally, you should be able to just link your program with Guile 1.7.1 instead of with Guile 1.6.x. You will get many warnings about deprecated features, but your program should nevertheless run correctly. If you find that this is not the case (which is quite likely) please do not change your program yet. Instead, report the problem to <bug-guile@gnu.org>. The shared library major versions have been bumped compared to the 1.6 series, but they will not be bumped on binary incompatible changes within the 1.7 series. The NEWS file is quite long. Here are the most spectacular entries in a condensed form: Changes since the 1.6.x series: - Guile is now licensed with the GNU Lesser General Public License. - The manual is now licensed with the GNU Free Documentation License. - We now use GNU MP for bignums. - We now use native POSIX threads for real concurrent threads. - There is now support for copy-on-write substrings and mutation-sharing substrings. - We now have exact rationals, such as 1/3. - A new family of functions for converting between C values and Scheme values has been added that is future-proof and thread-safe. - The INUM macros like SCM_MAKINUM have been deprecated. - The macros SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_LENGTH, SCM_SYMBOL_CHARS, and SCM_SYMBOL_LENGTH have been deprecated. - There is a new way to deal with non-local exits and re-entries in C code, which is nicer than scm_internal_dynamic_wind. - There are new malloc-like functions that work better than scm_must_malloc, etc. and most importantly - call-with-current-continuation is now also available under the name call/cc. See NEWS and the manual for more details. -- GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405 _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Guile 1.7.1 has been released. 2004-08-26 23:02 Guile 1.7.1 has been released Marius Vollmer @ 2004-08-27 22:57 ` Jonathan Bartlett 2004-08-28 21:35 ` Michael Tuexen 1 sibling, 0 replies; 5+ messages in thread From: Jonathan Bartlett @ 2004-08-27 22:57 UTC (permalink / raw) Cc: guile-devel A few questions: I haven't hacked on guile in a while, so forgive me. I am going to get a little bit of time soon, and was wondering: * Has anyone worked on dump/undump for GUILE? I received some guile-unexec code from someone a while back, and just wanted to make sure noone else implemented it before I got started. * Have you all abandoned your ideal for having GUILE be a "universal interpretter" and having numerous sublanguages parse into scheme? If not, do you have a link to the API/command-line switches for this? I figure if you are working on releasing a new development branch, now is as good a time as any to put some work in. Thanks! Jonathan Bartlett _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Guile 1.7.1 has been released. 2004-08-26 23:02 Guile 1.7.1 has been released Marius Vollmer 2004-08-27 22:57 ` Jonathan Bartlett @ 2004-08-28 21:35 ` Michael Tuexen 2004-08-29 9:23 ` Andreas Vögele 1 sibling, 1 reply; 5+ messages in thread From: Michael Tuexen @ 2004-08-28 21:35 UTC (permalink / raw) Cc: guile-user, guile-devel Hi Marius, I tried to compile it on Mac OS X, but the following comes up: if /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -I../libguile-ltdl -g -O2 -Wall -Wmissing-prototypes -Werror -MT srfi-13.lo -MD -MP -MF ".deps/srfi-13.Tpo" -c -o srfi-13.lo srfi-13.c; \ then mv -f ".deps/srfi-13.Tpo" ".deps/srfi-13.Plo"; else rm -f ".deps/srfi-13.Tpo"; exit 1; fi gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -I../libguile-ltdl -g -O2 -Wall -Wmissing-prototypes -Werror -MT srfi-13.lo -MD -MP -MF .deps/srfi-13.Tpo -c srfi-13.c -fno-common -DPIC -o .libs/srfi-13.o srfi-13.c: In function `scm_string_trim_right': srfi-13.c:771: warning: passing arg 3 of `scm_i_get_substring_spec' from incompatible pointer type srfi-13.c:771: warning: passing arg 5 of `scm_i_get_substring_spec' from incompatible pointer type srfi-13.c: In function `scm_string_xcopy_x': srfi-13.c:3067: warning: passing arg 5 of `scm_i_get_substring_spec' from incompatible pointer type make[2]: *** [srfi-13.lo] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2 Best regards Michael On 27. Aug 2004, at 1:02 Uhr, Marius Vollmer wrote: > We are pleased to announce the release of Guile 1.7.1. This is a > 'technology preview' for the upcoming Guile 1.8. It can be found > here: > > ftp://alpha.gnu.org/gnu/guile/guile-1.7.1.tar.gz > > Its MD5 checksum is > > 21c9f4061166900d2926955ade0ef5cc guile-1.7.1.tar.gz > > This version is guaranteed to contain serious bugs, and the publically > visible interfaces will almost certainly change before 1.8 is > released. The 1.7 releases might be termed "selected snapshots". > > We are releasing it anyway to start testing the new features, and to > get feedback about how difficult or tedious it is to switch from Guile > 1.6 to this series. > > Ideally, you should be able to just link your program with Guile 1.7.1 > instead of with Guile 1.6.x. You will get many warnings about > deprecated features, but your program should nevertheless run > correctly. If you find that this is not the case (which is quite > likely) please do not change your program yet. Instead, report the > problem to <bug-guile@gnu.org>. > > The shared library major versions have been bumped compared to the 1.6 > series, but they will not be bumped on binary incompatible changes > within the 1.7 series. > > > The NEWS file is quite long. Here are the most spectacular entries in > a condensed form: > > Changes since the 1.6.x series: > > - Guile is now licensed with the GNU Lesser General Public License. > > - The manual is now licensed with the GNU Free Documentation License. > > - We now use GNU MP for bignums. > > - We now use native POSIX threads for real concurrent threads. > > - There is now support for copy-on-write substrings and > mutation-sharing substrings. > > - We now have exact rationals, such as 1/3. > > - A new family of functions for converting between C values and > Scheme values has been added that is future-proof and thread-safe. > > - The INUM macros like SCM_MAKINUM have been deprecated. > > - The macros SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_LENGTH, > SCM_SYMBOL_CHARS, and SCM_SYMBOL_LENGTH have been deprecated. > > - There is a new way to deal with non-local exits and re-entries in > C code, which is nicer than scm_internal_dynamic_wind. > > - There are new malloc-like functions that work better than > scm_must_malloc, etc. > > and most importantly > > - call-with-current-continuation is now also available under the name > call/cc. > > See NEWS and the manual for more details. > > -- > GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405 > > > _______________________________________________ > Guile-devel mailing list > Guile-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/guile-devel > _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Guile 1.7.1 has been released. 2004-08-28 21:35 ` Michael Tuexen @ 2004-08-29 9:23 ` Andreas Vögele 2004-09-20 22:53 ` Marius Vollmer 0 siblings, 1 reply; 5+ messages in thread From: Andreas Vögele @ 2004-08-29 9:23 UTC (permalink / raw) [-- Attachment #1: Type: text/plain, Size: 887 bytes --] Michael Tuexen writes: > Hi Marius, > > I tried to compile it on Mac OS X, but the following comes up: [...] > > srfi-13.c: In function `scm_string_trim_right': > srfi-13.c:771: warning: passing arg 3 of `scm_i_get_substring_spec' > from incompatible pointer type I've attached a patch that replaces the remaining occurrences of int in srfi-13.c with size_t. In addition to these replacements, the function string_reverse_x() makes sure that the variable cend is only decremented if it's value is greater than zero. One thing that I noted is that the variable cfrom in scm_xsubstring() and the variable csfrom in scm_string_xcopy_x() are of type size_t but that they are checked for negative values: int t = ((cfrom < 0) ? -cfrom : cfrom) % (cend - cstart); if (cfrom < 0) .... I've tested this patch on Mac OS X and OpenBSD. BTW, do you prefer included or attached patches? [-- Attachment #2: srfi-13.c.diff --] [-- Type: application/octet-stream, Size: 3832 bytes --] Index: libguile/srfi-13.c =================================================================== RCS file: /cvsroot/guile/guile/guile-core/libguile/srfi-13.c,v retrieving revision 1.3 diff -u -r1.3 srfi-13.c --- libguile/srfi-13.c 25 Aug 2004 16:04:09 -0000 1.3 +++ libguile/srfi-13.c 29 Aug 2004 09:12:07 -0000 @@ -106,7 +106,7 @@ } else if (SCM_CHARSETP (char_pred)) { - int i; + size_t i; for (i = cstart; i < cend; i++) if (SCM_CHARSET_GET (char_pred, cstr[i])) { @@ -163,7 +163,7 @@ if (SCM_CHARP (char_pred)) { char cchr = SCM_CHAR (char_pred); - int i; + size_t i; for (i = cstart; i < cend; i++) if (cstr[i] != cchr) { @@ -173,7 +173,7 @@ } else if (SCM_CHARSETP (char_pred)) { - int i; + size_t i; for (i = cstart; i < cend; i++) if (!SCM_CHARSET_GET (char_pred, cstr[i])) { @@ -225,7 +225,7 @@ /* The RES string remains untouched since nobody knows about it yet. No need to refetch P. */ - ch = scm_call_1 (proc, scm_from_int (i)); + ch = scm_call_1 (proc, scm_from_size_t (i)); if (!SCM_CHARP (ch)) SCM_MISC_ERROR ("procedure ~S returned non-char", scm_list_1 (proc)); *p++ = SCM_CHAR (ch); @@ -764,7 +764,7 @@ #define FUNC_NAME s_scm_string_trim_right { const char *cstr; - int cstart, cend; + size_t cstart, cend; MY_VALIDATE_SUBSTRING_SPEC_COPY (1, s, cstr, 3, start, cstart, @@ -2326,7 +2326,7 @@ /* Helper function for the string uppercase conversion functions. * No argument checking is performed. */ static SCM -string_upcase_x (SCM v, int start, int end) +string_upcase_x (SCM v, size_t start, size_t end) { size_t k; char *dst; @@ -2392,7 +2392,7 @@ /* Helper function for the string lowercase conversion functions. * No argument checking is performed. */ static SCM -string_downcase_x (SCM v, int start, int end) +string_downcase_x (SCM v, size_t start, size_t end) { size_t k; char *dst; @@ -2460,7 +2460,7 @@ /* Helper function for the string capitalization functions. * No argument checking is performed. */ static SCM -string_titlecase_x (SCM str, int start, int end) +string_titlecase_x (SCM str, size_t start, size_t end) { unsigned char *sz; size_t i; @@ -2555,18 +2555,21 @@ /* Reverse the portion of @var{str} between str[cstart] (including) and str[cend] excluding. */ static void -string_reverse_x (char * str, int cstart, int cend) +string_reverse_x (char * str, size_t cstart, size_t cend) { char tmp; - cend--; - while (cstart < cend) + if (cend > 0) { - tmp = str[cstart]; - str[cstart] = str[cend]; - str[cend] = tmp; - cstart++; cend--; + while (cstart < cend) + { + tmp = str[cstart]; + str[cstart] = str[cend]; + str[cend] = tmp; + cstart++; + cend--; + } } } @@ -3032,7 +3035,7 @@ cs = scm_i_string_chars (s); while (cfrom < cto) { - int t = ((cfrom < 0) ? -cfrom : cfrom) % (cend - cstart); + size_t t = ((cfrom < 0) ? -cfrom : cfrom) % (cend - cstart); if (cfrom < 0) *p = cs[(cend - cstart) - t]; else @@ -3060,7 +3063,7 @@ const char *cs; size_t ctstart, csfrom, csto, cstart, cend; SCM dummy = SCM_UNDEFINED; - int cdummy; + size_t cdummy; MY_VALIDATE_SUBSTRING_SPEC (1, target, 2, tstart, ctstart, @@ -3082,7 +3085,7 @@ cs = scm_i_string_chars (s); while (csfrom < csto) { - int t = ((csfrom < 0) ? -csfrom : csfrom) % (cend - cstart); + size_t t = ((csfrom < 0) ? -csfrom : csfrom) % (cend - cstart); if (csfrom < 0) *p = cs[(cend - cstart) - t]; else @@ -3155,7 +3158,7 @@ if (SCM_CHARSETP (token_set)) { - int idx; + size_t idx; while (cstart < cend) { [-- Attachment #3: Type: text/plain, Size: 140 bytes --] _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Guile 1.7.1 has been released. 2004-08-29 9:23 ` Andreas Vögele @ 2004-09-20 22:53 ` Marius Vollmer 0 siblings, 0 replies; 5+ messages in thread From: Marius Vollmer @ 2004-09-20 22:53 UTC (permalink / raw) Cc: guile-user, guile-devel Andreas Vögele <voegelas@gmx.net> writes: > I've attached a patch that replaces the remaining occurrences of int > in srfi-13.c with size_t. In addition to these replacements, the > function string_reverse_x() makes sure that the variable cend is only > decremented if it's value is greater than zero. Thanks, applied! > One thing that I noted is that the variable cfrom in scm_xsubstring() > and the variable csfrom in scm_string_xcopy_x() are of type size_t but > that they are checked for negative values: Yes, I changed them to be ints. The 'extended' indices can be negative. Of course, the could also be bignums... > BTW, do you prefer included or attached patches? Either way is fine with me. For attached patches, using text/plain or text/x-patch as the content-type makes it simpler to view it. Also, and more importantly, inculding a ChangeLog entry is very helpful. -- GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405 _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2004-09-20 22:53 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2004-08-26 23:02 Guile 1.7.1 has been released Marius Vollmer 2004-08-27 22:57 ` Jonathan Bartlett 2004-08-28 21:35 ` Michael Tuexen 2004-08-29 9:23 ` Andreas Vögele 2004-09-20 22:53 ` Marius Vollmer
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).