Thread: [q-lang-users] Q 7.1 RC3 available
Brought to you by:
agraef
From: Albert G. <Dr....@t-...> - 2006-06-07 10:08:55
|
Hi all, I've uploaded RC3 last night. (Needed to get some sleep first before I could do the announcement. ;-) There is a tarball as well as source and SuSE 10.0 rpms (I see whether I can make a Windows build later today). It's available here: http://sourceforge.net/project/showfiles.php?group_id=96881&package_id=188958&release_id=416034 RC3 should be 99% feature-complete now, but the documentation still needs updating. There's lots of new stuff since the last RC; please check the release notes or the NEWS file for details. Most notable perhaps is the new builtin lambda and dramatic improvements in the performance of special forms in general and stream comprehensions in particular. The latter also benefit from the builtin lambda implementation. E.g., I found that the stream-based implementation of the 8 queens algorithm in queens.q, which used to be much slower than the imperative backtracking algorithm in queens2.q, is now just about as fast! Here are some new and revised examples you might wish to take a look at if you're interested in lambda (I even got the normal order fixed point combinator to work) and streams: http://q-lang.cvs.sourceforge.net/q-lang/q/examples/fixpt.q?revision=1.6 http://q-lang.cvs.sourceforge.net/q-lang/q/examples/streams.q?revision=1.2 I've also included Tim Haynes' latest cgi.q and Rob Hubbard's new rational.q (we'll probably see a separate announcement for the latter on the ML later today). Tim, btw, it seems that your primetest.q example, which has been in cvs since 2004, never made it into the distribution tarball since I forgot to also include it in the Makefile.am's DISTFILES; that should be fixed now. Peter, I wasn't able to fix the flex compatibility issue yet; I have it on my TODO list for 7.2 now. Thanks to all for the helpful discussions and contributions! Enjoy. :) Albert -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |
From: Albert G. <Dr....@t-...> - 2006-06-07 12:46:25
|
Albert Graef wrote: > I've uploaded RC3 last night. Please hold on for a little while, I discovered that I needed to do some last-minute fixes in the standard library, and I'd like this to be in the release candidate so that you can all test the "real thing". I'm currently building new packages and will upload them during the next hour. Sorry for the inconvenience, Albert -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |
From: Albert G. <Dr....@t-...> - 2006-06-07 13:43:12
|
Albert Graef wrote: > I'm > currently building new packages and will upload them during the next hour. Well, the file release system seems to be severely broken right now, I'll try again later... -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |
From: John C. <co...@cc...> - 2006-06-07 17:03:14
|
Albert Graef scripsit: > I've uploaded RC3 last night. (Needed to get some sleep first before I > could do the announcement. ;-) There is a tarball as well as source and > SuSE 10.0 rpms (I see whether I can make a Windows build later today). > It's available here: > http://sourceforge.net/project/showfiles.php?group_id=96881&package_id=188958&release_id=416034 I built what I believe to be the second rc2 (size = 3012490 bytes) successfully on Cygwin. A thought: Currently the compiler will cheerfully accept rules like "f (x Y) = something;" even if there exists a rule "x Y" = something;", though the first rule will never be executed due to Q's eager evaluation. This is documented in the manual. It seems to me worthwhile to warn, at least, about a rule like "f (x Y)" if there are any rules defining x. > RC3 should be 99% feature-complete now, but the documentation still > needs updating. I'll send you some notes privately on English-language fixes. -- John Cowan http://ccil.org/~cowan co...@cc... In might the Feanorians / that swore the unforgotten oath brought war into Arvernien / with burning and with broken troth. and Elwing from her fastness dim / then cast her in the waters wide, but like a mew was swiftly borne, / uplifted o'er the roaring tide. --the Earendillinwe |
From: Albert G. <Dr....@t-...> - 2006-06-07 19:43:33
|
All right, FRS seems to work again, and meanwhile I cleaned up the mess that was left behind after my earlier attempts. Happy downloading! :) John Cowan wrote: > I built what I believe to be the second rc2 (size = 3012490 bytes) > successfully on Cygwin. The file size seems to be ok. Here's the md5sum of the latest q-3.1rc3.tar.gz if you want to verify that, too: 0d9b6c300ef830e301dc3025a6e73671 > A thought: Currently the compiler will cheerfully accept rules like > "f (x Y) = something;" even if there exists a rule "x Y" = something;", > though the first rule will never be executed due to Q's eager evaluation. > This is documented in the manual. It seems to me worthwhile to warn, > at least, about a rule like "f (x Y)" if there are any rules defining x. But this case naturally arises, e.g., if you have "constructor equations". So it's difficult to determine exactly when those warnings really make sense. Of course I could let the compiler spit out such a warning anytime it sees two rules like this, but that would be more annoying than useful most of the time. So IMHO these warnings only make sense if we can decide statically whether the equation(s) for "x Y" always succeed, i.e., whether x is "completely defined" in some sense. But what does "completely defined" exactly mean here, given that Q has dynamic typing and allows as much ad hoc polymorphism as you want? And even if we leave that question aside, and there's only a single equation defining x, we still cannot decide statically whether that equation will always succeed, since an equation may fail at runtime even if the lhs matches and there are no qualifying conditions at all, due to a computed (and deferred) "catch fail" on the rhs of the equation (which leaves us with the halting problem; d'oh!). > I'll send you some notes privately on English-language fixes. Great, keep 'em rolling. :) I still have to process the previous batch, but I'll probably get to that later tonight, after the Windows build of RC3 is out... Thanks, Albert -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |
From: Albert G. <Dr....@t-...> - 2006-06-07 23:34:03
|
A Windows MSI is now available from the same location. > http://sourceforge.net/project/showfiles.php?group_id=96881&package_id=188958&release_id=416034 -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |
From: Albert G. <Dr....@t-...> - 2006-06-11 06:00:48
|
Q 7.1 final is now in cvs, ready to be released. Did anyone notice any bugs in RC3, or can I proceed with the release? There have been a number of smaller cosmetic changes and bugfixes compared to RC3, and the manual has finally been updated. I hope that all new features are properly documented now. John, I think you said you have some more corrections for the manual, could you please send them to me? Thanks. Cheers, Albert -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |
From: John C. <co...@cc...> - 2006-06-11 08:43:58
|
Albert Graef scripsit: > John, I think you said you have some more corrections for the manual, > could you please send them to me? Thanks. These notes reflect the info version distributed in the 7.1rc3 tarball. First of all, the PDF and HTML manuals available from the home page are still 6.2; they should be updated with each release. Global note: "s.t." is another of those mysterious germanophone English abbreviations unknown to native speakers. All of them in the manual should become "so that" except the one in 12.17.3, where "such that" reads better. Global note: for "we remark" use simply "note", in the imperative. There are many instances of this in the manual. There are also "we also remark" and "we finally remark" which should be "also note" and "finally note". Don't forget to update the discussion of lambdas in 2.2 not to mention lambda.q and the combinators. In the discussion of normal forms in 2.4, it is claimed that lists are always in normal form, whereas of course a list is in normal form iff its members are: [1+2, 3+4] is not in normal form. In 3, for "In difference to Prolog" read "Unlike in Prolog". In "The reserved words of the Q language are", move "are" to after the parentheses. In 4, in "the module identifier is derived automatically as" read simply "the module identifier is automatically". In 5, for "The Q language admits" read "The Q language allows", which is less old-fashioned. "It is enforced that" is unnatural; use "the compiler enforces". In 7.1, for "no such thing like" read "no exact equivalent of" or something like that. In 7.3, for "You can count on that" read "You can count on it that". In 7.4, in "Local definitions also act as additional conditions in that", omit "in that" and use a semicolon after "conditions". Immediately after, for "repeatedly refers" read "refers repeatedly". In 7.6, for "redices" read "redexes". ("Redeces" is not unknown, but "redexes" is definitely the preferred form.) In 7.7, in "The Q interpreter generates a runtime error in such cases" for "in such cases" read "if it does not", for clarity. In 7.10, for "misses an assigment operation" read "lacks an assignment operation." I have not reviewed chapters 10-12 or any appendix except C. -- John Cowan co...@cc... http://ccil.org/~cowan Objective consideration of contemporary phenomena compel the conclusion that optimum or inadequate performance in the trend of competitive activities exhibits no tendency to be commensurate with innate capacity, but that a considerable element of the unpredictable must invariably be taken into account. --Ecclesiastes 9:11, Orwell/Brown version |
From: Albert G. <Dr....@t-...> - 2006-06-11 16:48:56
|
John Cowan wrote: > First of all, the PDF and HTML manuals available from the home page are > still 6.2; they should be updated with each release. Oops, sorry. Thanks a lot for proofreading, I really appreciate this a lot! Corrections are now in cvs, release to follow real soon now. :) Cheers, Albert -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |