This is the mail archive of the guile@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Documentation lacking


>>>>> "Derry" == Derry Bryson <dbguile@ta1.reno-onramp.com> writes:

Derry> I can find no real documentation; I have looked at the
Derry> documentation on the website, the documentation included with
Derry> the latest release, and the documentation from CVS (guile-doc).

Guile doc is what you want.  Specifically,
guile-doc/ref/guile-ref.texi

For where that's inadequate (which as everyone here will admit is too
often the case) I reccomend asking here...

Derry> What is the basis of the guile interpretation of scheme?  How
Derry> does it evaluate scheme expressions?

I'm not entirely sure why you need to know this, if you mean the
internal representation and evaluation code.

If you want to know the API for evaluating scheme expressions from C,
which is guile-ref.texi (or guile-ref.info) part IV, where it
describes the gh_ interface.

Derry> I have found documentation on how it stores values, but not
Derry> much else.  What is the precision of integer values?  Are they
Derry> 32 bit or 30 bit (it would seem 30 bit) (this is quite a basic
Derry> question, what about floats?).

Immediate integer values are 30 bits, but guile has support for
bignums, so can support any number you can reperesent in C.  The C
function: SCM gh_long2scm(long n); will convert a long into an SCM
(the C representation of scheme data) which, if n < 2^30 will be an
immediate, otherwise it will be converted into a bignum, gh_scm2long
will convert it back.  Floats are represented as C doubles...

  -Eric

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]