diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2017-02-20 00:05:34 -0800 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2017-02-20 00:05:34 -0800 |
commit | 50eb784bfcf15ee3c6b0b53d747db92673395040 (patch) | |
tree | 60f039bb5aa27bc58d92ab0c7bab0d82dbfe7686 /hobbit.info | |
parent | ae2b295c7deaf2d7c18ad1ed9b6050970e56bae7 (diff) | |
download | scm-50eb784bfcf15ee3c6b0b53d747db92673395040.tar.gz scm-50eb784bfcf15ee3c6b0b53d747db92673395040.zip |
Import Upstream version 5e3upstream/5e3
Diffstat (limited to 'hobbit.info')
-rw-r--r-- | hobbit.info | 157 |
1 files changed, 90 insertions, 67 deletions
diff --git a/hobbit.info b/hobbit.info index 9f124f3..7dae5f2 100644 --- a/hobbit.info +++ b/hobbit.info @@ -1,4 +1,23 @@ -This is hobbit.info, produced by makeinfo version 4.7 from hobbit.texi. +This is hobbit.info, produced by makeinfo version 4.8 from hobbit.texi. + +This manual is for the Hobbit compiler for SCM (version 5e3, October +2006), + +Copyright (C) 2002 Free Software Foundation + + Permission is granted to make and distribute verbatim copies of + this manual provided the copyright notice and this permission + notice are preserved on all copies. + + Permission is granted to copy and distribute modified versions of + this manual under the conditions for verbatim copying, provided + that the entire resulting derived work is distributed under the + terms of a permission notice identical to this one. + + Permission is granted to copy and distribute translations of this + manual into another language, under the above conditions for + modified versions, except that this permission notice may be + stated in a translation approved by the author. INFO-DIR-SECTION The Algorithmic Language Scheme START-INFO-DIR-ENTRY @@ -8,8 +27,27 @@ END-INFO-DIR-ENTRY File: hobbit.info, Node: Top, Next: Introduction, Prev: (dir), Up: (dir) -Hobbit is an optimizing R4RS-Scheme to C compiler written by Tanel -Tammet. +Hobbit +****** + +This manual is for the Hobbit compiler for SCM (version 5e3, October +2006), + +Copyright (C) 2002 Free Software Foundation + + Permission is granted to make and distribute verbatim copies of + this manual provided the copyright notice and this permission + notice are preserved on all copies. + + Permission is granted to copy and distribute modified versions of + this manual under the conditions for verbatim copying, provided + that the entire resulting derived work is distributed under the + terms of a permission notice identical to this one. + + Permission is granted to copy and distribute translations of this + manual into another language, under the above conditions for + modified versions, except that this permission notice may be + stated in a translation approved by the author. * Menu: @@ -21,22 +59,6 @@ Tammet. * About Hobbit:: * Index:: -Copyright (C) 1990-1999, 2002 Free Software Foundation - -Permission is granted to make and distribute verbatim copies of this -manual provided the copyright notice and this permission notice are -preserved on all copies. - -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided that the -entire resulting derived work is distributed under the terms of a -permission notice identical to this one. - -Permission is granted to copy and distribute translations of this manual -into another language, under the above conditions for modified versions, -except that this permission notice may be stated in a translation -approved by the author. - File: hobbit.info, Node: Introduction, Next: Compiling with Hobbit, Prev: Top, Up: Top @@ -138,7 +160,7 @@ File: hobbit.info, Node: Compiling And Linking, Next: Error Detection, Prev: (lambda (fp) (for-each (lambda (string) (write-line string fp)) - '("#define IMPLINIT \"Init5e2.scm\"" + '("#define IMPLINIT \"Init5e3.scm\"" "#define BIGNUMS" "#define FLOATS" "#define ARRAYS" @@ -190,7 +212,7 @@ File: hobbit.info, Node: Compiling And Linking, Next: Error Detection, Prev: (lambda (fp) (for-each (lambda (string) (write-line string fp)) - '("#define IMPLINIT \"Init5e2.scm\"" + '("#define IMPLINIT \"Init5e3.scm\"" "#define COMPILED_INITS init_example();" "#define CCLO" "#define FLOATS")))) @@ -260,8 +282,8 @@ File: hobbit.info, Node: Hobbit Options, Next: CC Optimizations, Prev: Error By default hobbit assumes that only immediate (ie small, up to 30 bits) integers are used. It will automatically assume general arithmetics in case it finds any non-immediate numbers like 1.2 or - 10000000000000 or real-only procedures like $sin anywhere in the - source. + 10000000000000 or real-only procedures like real-sin anywhere in + the source. Another way to make Hobbit assume that generic arithmetic supported by SCM (ie exact and/or inexact reals, bignums) is also used, is to @@ -509,8 +531,9 @@ procedures, but a combination of internal SCM procedures, guaranteeing exact correspondence with the SCM interpreter while hindering the speed): - $sqrt $abs $exp $log $sin $cos $tan $asin $acos - $atan $sinh $cosh $tanh $asinh $acosh $atanh $expt + real-sqrt real-exp real-ln real-expt real-sin real-cos real-tan + real-asin real-acos real-atan real-sinh real-cosh real-tanh real-asinh + real-acosh real-atanh _Note Bene:_ These procedures are compiled to faster code than the corresponding generic versions sqrt, abs, ... expt. @@ -1204,7 +1227,7 @@ File: hobbit.info, Node: Pi, Prev: Cpstak, Up: Benchmark Sources (do ((l (string-length s) (+ 1 l))) ((>= l d) (display s)) (display #\0))) - (if (zero? (modulo j 10)) (newline) (display #\ ))) + (if (zero? (modulo j 10)) (newline) (display #\space))) (newline))) @@ -1929,46 +1952,46 @@ Index Tag Table: -Node: Top199 -Node: Introduction1227 -Node: Compiling with Hobbit2543 -Node: Compiling And Linking2801 -Node: Error Detection7487 -Node: Hobbit Options8793 -Node: CC Optimizations15522 -Node: The Language Compiled16478 -Node: Macros17137 -Node: SCM Primitive Procedures17741 -Node: SLIB Logical Procedures18600 -Node: Fast Integer Calculations19755 -Node: Force and Delay20889 -Node: Suggestions for writing fast code21474 -Node: Performance of Compiled Code31673 -Node: Gain in Speed31933 -Node: Benchmarks33518 -Node: Benchmark Sources36618 -Node: Destruct36964 -Node: Recfib38551 -Node: div-iter and div-rec38806 -Node: Hanoi39892 -Node: Tak40473 -Node: Ctak40828 -Node: Takl41808 -Node: Cpstak42464 -Node: Pi43243 -Node: Principles of Compilation44372 -Node: Macro-Expansion and Analysis44798 -Node: Building Closures48603 -Node: Lambda-lifting51494 -Node: Statement-lifting54225 -Node: Higher-order Arglists55333 -Node: Typing and Constants57139 -Node: About Hobbit58403 -Node: The Aims of Developing Hobbit58663 -Node: Manifest59554 -Node: Author and Contributors60013 -Node: Future Improvements61068 -Node: Release History61833 -Node: Index68622 +Node: Top1023 +Node: Introduction2111 +Node: Compiling with Hobbit3427 +Node: Compiling And Linking3685 +Node: Error Detection8371 +Node: Hobbit Options9677 +Node: CC Optimizations16410 +Node: The Language Compiled17366 +Node: Macros18025 +Node: SCM Primitive Procedures18629 +Node: SLIB Logical Procedures19551 +Node: Fast Integer Calculations20706 +Node: Force and Delay21840 +Node: Suggestions for writing fast code22425 +Node: Performance of Compiled Code32624 +Node: Gain in Speed32884 +Node: Benchmarks34469 +Node: Benchmark Sources37569 +Node: Destruct37915 +Node: Recfib39502 +Node: div-iter and div-rec39757 +Node: Hanoi40843 +Node: Tak41424 +Node: Ctak41779 +Node: Takl42759 +Node: Cpstak43415 +Node: Pi44194 +Node: Principles of Compilation45327 +Node: Macro-Expansion and Analysis45753 +Node: Building Closures49558 +Node: Lambda-lifting52449 +Node: Statement-lifting55180 +Node: Higher-order Arglists56288 +Node: Typing and Constants58094 +Node: About Hobbit59358 +Node: The Aims of Developing Hobbit59618 +Node: Manifest60509 +Node: Author and Contributors60968 +Node: Future Improvements62023 +Node: Release History62788 +Node: Index69577 End Tag Table |