Nice quote from the cover of R2RS

2010-12-19 Thread Mark H Weaver
At a friend's house I found a printed copy of R2RS, aka MIT AI Memo
848, dated August 1985.  I include the cover text below.  Readers of
Tolkien will appreciate the quote.  I wonder if it might be included
in the Guile manual for fun.

 Mark


AI Memo 848

 The Revised
  Revised Report
on Scheme or
 An UnCommon
Lisp

Data and procedures and the values they amass,
Higher-order functions to combine and mix and match,
Objects with their local state, the messages they pass,
A property, a package, the control point for a catch--
In the Lambda Order they are all first-class.
One Thing to name them all, One Thing to define them,
One Thing to place them in environments and bind them,
In the Lambda order they are all first-class.

  MIT Artificial Intelligence Laboratory



Request for Latest Gnulib

2010-12-19 Thread Noah Lavine
Hello all,

I had a build error in Guile a few days ago. I did some Git bisecting
and tracked it down to the last time Gnulib was updated. I emailed the
Gnulib mailing list, and it turned out there was a typo in one of the
Gnulib configuration scripts that is now fixed in the latest git
version of Gnulib.

All of which is a long way of saying, please merge the latest version
of Gnulib so I will be able to build Guile again.

Thanks,
Noah



Re: How does one specify linking to 64 bit libraries when there is a choice?

2010-12-19 Thread Noah Lavine
Hello,

I am not at all an expert on guile-config, but I will help if I can.

First of all, as to how guile-config works. At least in the latest git
version, it seems to be a thin wrapper for pkg-config.

I found the file that pkg-config will be using to give you this
information. It is meta/guile-version number.pc in my Guile source
tree. Furthermore, I think it's safe to assume that it is generated
from meta/guile-version number.pc.in.

But that file is just a pretty innocuous-looking template where it
looks like you paste some variables that would be generated by the
configure script.

Therefore, I have this question for you - are you able to configure
Guile to use 64-bit libs using the configure script?

Noah Lavine

On Fri, Dec 17, 2010 at 3:10 PM, Bruce Korb bruce.k...@gmail.com wrote:
 Hi Nelson,

 I am nearly certain we (you) have reached a point where
 libtool folks are going to say, it is Guile, and Guile
 folks are going to say, it is libtool.  I am going to
 say, I'd like some help from either or both.

 Because the guile-config invokes the guile binary in order
 to print out the unvarying strings from the configuration,
 it requires reverse engineering the entire Guile package
 to fully understand how it comes up with the strings it
 does.  I can do it, but I am not any more eager than you.

 I think first up, someone from Guile needs to analyze
 the machinery behind guile-config.  I am willing to
 help with test runs on the utah.edu machines in order
 to diagnose the issue.

 Cheers - Bruce

 On 12/17/10 11:57, Nelson H. F. Beebe wrote:
 Well, I have now done three more builds of guile-1.8.8.  The first and
 second supplied libdir=/usr/local/lib64 on the command line of all
 make runs.  That did not help: /usr/local/bin/guile-config still
 reported -L/usr/local/lib.

 I found that LTLIBICONV still has -L/usr/local/lib in the first
 attempt, so I replaced it by LTLIBICONV=-liconv for the second
 attempt.

 For the third, I did make clean, then used sed -i + xargs to
 explicitly set libdir in every Makefile, in case it is not being
 passed correctly to child makes.

 That too does not help:

 % /usr/local/bin/guile-config link | fmt -w 10
  -pthread
  -L/usr/local/lib
  -lguile
  -lltdl
  -L/usr/local/lib64
  -Wl,-rpath,/usr/local/lib64
  -lgmp
  -lcrypt
  -lm
  -lltdl

 For the fourth try, I used sed + xargs again to force all references
 to the iconv library to just use a bare -liconv.  Sadly, the incorrect
 -L/usr/local/lib option still appears.

 % guile
 guile (define (get-build-info name)
   (let ((val (assq name %guile-build-info)))
     (if (not (pair? val))
         (begin
           (display-line-error
            program-name   subcommand-name : no such build-info:  name)
           (quit 2)))
     (cdr val)))
 guile (get-build-info 'LIBS)
 -L/usr/local/lib64 -Wl,-rpath,/usr/local/lib64  -lgmp -lcrypt -lm -lltdl 
 guile (get-build-info 'libdir)
 /usr/local/lib

 I'm unsure of where to proceed at this point.  The logs of the four
 tries are in

     
 /usr/local/gnu/src/guile/logs/guile-1.8.8/Typescript.abajo.math.utah.edu.2010.12.17.12.12.44.xz

 P.S. I leave the country on a 3-week trip next Saturday (25-Dec-2010),
 and I won't have computer access during that time.

 That will be after I leave (22-Dec), but I get back 12/27
 (400 miles is still within the US).  I would hope this is
 resolved before next Wednesday...Have a nice trip  holiday!
 Regards, Bruce