This is guile.info, produced by makeinfo version 6.8 from guile.texi.

This manual documents Guile version 3.0.11.

   Copyright (C) 1996-1997, 2000-2005, 2009-2023 Free Software
Foundation, Inc.
Copyright (C) 2021 Maxime Devos
Copyright (C) 2024 Tomas Volf

   Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
copy of the license is included in the section entitled “GNU Free
Documentation License.”

   Additionally, the documentation of the SRFI 64 module is adapted from
its specification text, which is made available under the following
Expat license:

     Permission is hereby granted, free of charge, to any person
     obtaining a copy of this software and associated documentation
     files (the "Software"), to deal in the Software without
     restriction, including without limitation the rights to use, copy,
     modify, merge, publish, distribute, sublicense, and/or sell copies
     of the Software, and to permit persons to whom the Software is
     furnished to do so, subject to the following conditions:

     The above copyright notice and this permission notice shall be
     included in all copies or substantial portions of the Software.

     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
     MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
     BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
     ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
     CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
     SOFTWARE.

   Additionally, the documentation of the SRFI 197 module is adapted
from its specification text, which is made available under the following
MIT license:

     Permission is hereby granted, free of charge, to any person
     obtaining a copy of this software and associated documentation
     files (the "Software"), to deal in the Software without
     restriction, including without limitation the rights to use, copy,
     modify, merge, publish, distribute, sublicense, and/or sell copies
     of the Software, and to permit persons to whom the Software is
     furnished to do so, subject to the following conditions:

     The above copyright notice and this permission notice shall be
     included in all copies or substantial portions of the Software.

     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
     MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
     BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
     ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
     CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
     SOFTWARE.

INFO-DIR-SECTION The Algorithmic Language Scheme
START-INFO-DIR-ENTRY
* Guile Reference: (guile).     The Guile reference manual.
END-INFO-DIR-ENTRY


Indirect:
guile.info-1: 3317
guile.info-2: 305698
guile.info-3: 606414
guile.info-4: 909198
guile.info-5: 1206239
guile.info-6: 1506538
guile.info-7: 1811439
guile.info-8: 2109790
guile.info-9: 2404316
guile.info-10: 3146825
guile.info-11: 3187138

Tag Table:
(Indirect)
Node: Top3317
Node: Preface6916
Node: Contributors7192
Node: Guile License9762
Node: Introduction11278
Node: Guile and Scheme12626
Node: Combining with C15534
Node: Guile and the GNU Project17841
Node: Interactive Programming19149
Node: Supporting Multiple Languages20823
Node: Obtaining and Installing Guile21540
Node: Organisation of this Manual22885
Node: Typographical Conventions24993
Node: Hello Guile!25766
Node: Running Guile Interactively26398
Node: Running Guile Scripts27362
Node: Linking Guile into Programs27986
Node: Writing Guile Extensions29583
Node: Using the Guile Module System31191
Node: Using Modules31772
Ref: Using Modules-Footnote-132797
Node: Writing new Modules32925
Node: Putting Extensions into Modules33806
Node: Reporting Bugs34693
Node: Hello Scheme!38930
Node: About Data40132
Node: Latent Typing40810
Node: Values and Variables42782
Node: Definition44775
Node: About Procedures47415
Node: Procedures as Values48360
Node: Simple Invocation51100
Node: Creating a Procedure52902
Node: Lambda Alternatives55505
Node: About Expressions57610
Node: Evaluating59022
Ref: Evaluating-Footnote-161229
Node: Eval Literal61365
Node: Eval Variable62665
Node: Eval Procedure63418
Node: Eval Special66570
Node: Tail Calls68630
Node: The REPL71529
Node: Syntax Summary72588
Node: About Closure74539
Node: About Environments75753
Node: Local Variables77621
Node: Chaining79179
Node: Lexical Scope81615
Node: Scoping Example83113
Node: Closure87104
Node: Serial Number89445
Node: Shared Variable91017
Node: Callback Closure92635
Node: OO Closure94922
Node: Further Reading97215
Node: Programming in Scheme98100
Node: Guile Scheme99303
Node: Invoking Guile100102
Node: Command-line Options100624
Node: Environment Variables110186
Ref: Environment Variables-Footnote-1118620
Node: Guile Scripting118726
Node: The Top of a Script File119452
Node: The Meta Switch121507
Node: Command Line Handling125617
Node: Scripting Examples128552
Node: Using Guile Interactively134770
Node: Init File136030
Node: Readline136570
Node: Value History137283
Node: REPL Commands139377
Node: Help Commands140730
Node: Module Commands142068
Node: Language Commands142912
Node: Compile Commands143140
Node: Profile Commands143725
Node: Debug Commands144827
Node: Inspect Commands147617
Node: System Commands147944
Node: Error Handling149827
Node: Interactive Debugging151277
Node: Using Guile in Emacs155713
Node: Using Guile Tools157911
Node: Installing Site Packages158957
Node: Distributing Guile Code161600
Node: Programming in C162871
Node: Parallel Installations164786
Ref: Parallel Installations-Footnote-1167692
Node: Linking Programs With Guile167786
Node: Guile Initialization Functions168849
Node: A Sample Guile Main Program170552
Node: Linking Guile with Libraries174740
Node: A Sample Guile Extension176799
Node: General Libguile Concepts179070
Node: Dynamic Types180739
Node: Garbage Collection186362
Ref: Garbage Collection-Footnote-1191719
Node: Control Flow191980
Node: Asynchronous Signals198000
Node: Multi-Threading199904
Ref: Multi-Threading-Footnote-1208032
Node: Defining New Foreign Object Types208237
Node: Defining Foreign Object Types209244
Node: Creating Foreign Objects210571
Node: Type Checking of Foreign Objects214503
Node: Foreign Object Memory Management215551
Node: Foreign Objects and Scheme222744
Node: Function Snarfing227893
Node: Programming Overview232405
Node: Extending Dia233900
Node: Dia Objective234896
Node: Dia Steps236958
Node: Dia Objects238309
Node: Dia Primitives243772
Node: Dia Hook246365
Node: Dia Structure247420
Node: Dia Advanced249039
Node: Scheme vs C253819
Node: Testbed Example255871
Ref: Testbed Example-Footnote-1257503
Node: Programming Options257628
Node: Available Functionality260092
Node: Basic Constraints262865
Node: Style Choices263086
Node: Program Control263287
Node: User Programming263462
Ref: User Programming-Footnote-1266600
Node: Autoconf Support266882
Node: Autoconf Background267340
Node: Autoconf Macros268360
Node: Using Autoconf Macros275024
Node: API Reference277636
Node: API Overview279797
Node: Deprecation282316
Node: The SCM Type283448
Node: Initialization285066
Node: Snarfing Macros290270
Node: Data Types293772
Node: Booleans295531
Node: Numbers298595
Node: Numerical Tower299996
Node: Integers305698
Node: Reals and Rationals315233
Node: Complex Numbers321432
Node: Exactness323121
Node: Number Syntax325841
Node: Integer Operations327742
Node: Comparison330202
Node: Conversion331886
Node: Complex333505
Node: Arithmetic335120
Node: Scientific345911
Node: Bitwise Operations347775
Node: Random353410
Node: Characters358227
Node: Character Sets369448
Node: Character Set Predicates/Comparison370381
Node: Iterating Over Character Sets371576
Node: Creating Character Sets374970
Node: Querying Character Sets378611
Node: Character-Set Algebra380807
Node: Standard Character Sets384358
Node: Strings387803
Node: String Syntax391082
Node: String Predicates393704
Node: String Constructors396144
Node: List/String Conversion398782
Node: String Selection400202
Node: String Modification405579
Ref: x-string-fill!406281
Node: String Comparison407630
Node: String Searching418227
Node: Alphabetic Case Mapping423812
Node: Reversing and Appending Strings426374
Node: Mapping Folding and Unfolding428896
Node: Miscellaneous String Operations432996
Node: Representing Strings as Bytes436311
Node: Conversion to/from C439520
Node: String Internals450442
Node: Symbols452762
Node: Symbol Data455653
Node: Symbol Keys457966
Node: Symbol Variables460420
Node: Symbol Primitives461471
Node: Symbol Read Syntax468944
Node: Symbol Uninterned471170
Node: Keywords474725
Node: Why Use Keywords?475371
Node: Coding With Keywords477297
Node: Keyword Read Syntax479443
Node: Keyword Procedures481068
Node: Pairs485199
Node: Lists491298
Ref: Lists-Footnote-1492174
Node: List Syntax492375
Ref: List Syntax-Footnote-1493382
Node: List Predicates493489
Node: List Constructors494484
Node: List Selection496753
Node: Append/Reverse497997
Node: List Modification500327
Node: List Searching503716
Node: List Mapping505345
Node: Vectors506763
Node: Vector Syntax508093
Node: Vector Creation508857
Node: Vector Accessors510964
Ref: x-scm_c_vector_ref512014
Ref: x-scm_c_vector_set_x512869
Ref: x-vector-fill!512993
Ref: x-vector-copy513297
Ref: x-vector-copy!513560
Node: Vector Accessing from C515435
Node: Uniform Numeric Vectors518855
Node: Bit Vectors519553
Node: Bytevectors525129
Node: Bytevector Endianness527089
Ref: Bytevector Endianness-Footnote-1528332
Node: Bytevector Manipulation528580
Ref: x-make-bytevector528878
Ref: x-bytevector?529163
Ref: x-bytevector-length529394
Ref: x-r6:bytevector-copy!530081
Ref: x-r6:bytevector-copy530628
Ref: Bytevector Manipulation-Footnote-1531378
Node: Bytevectors as Integers531577
Ref: x-bytevector-u8-ref533649
Ref: x-bytevector-u8-set!534725
Node: Bytevectors and Integer Lists537940
Ref: x-u8-list->bytevector538601
Node: Bytevectors as Floats539837
Node: Bytevectors as Strings541951
Node: Bytevectors as Arrays543904
Node: Bytevectors as Uniform Vectors544633
Node: Bytevector Procedures in R7RS544990
Ref: x-r7:bytevector-copy546032
Ref: x-r7:bytevector-copy!546515
Node: Bytevector Slices547500
Node: Arrays548755
Node: Array Syntax550861
Node: Array Procedures553695
Node: Shared Arrays562866
Node: Arrays as arrays of arrays569026
Node: Accessing Arrays from C575647
Ref: x-scm_array_handle_release579394
Node: VLists588645
Node: Record Overview593836
Node: SRFI-9 Records595669
Node: Records606414
Node: Structures612827
Node: Vtables613656
Node: Structure Basics616529
Node: Vtable Contents619910
Node: Meta-Vtables622238
Node: Vtable Example626461
Node: Dictionary Types629819
Node: Association Lists631710
Node: Alist Key Equality633044
Node: Adding or Setting Alist Entries633935
Ref: x-acons637596
Node: Retrieving Alist Entries638616
Node: Removing Alist Entries640532
Node: Sloppy Alist Functions643372
Node: Alist Example645648
Node: VHashes647615
Node: Hash Tables652973
Node: Hash Table Examples653707
Node: Hash Table Reference656024
Node: Other Types666037
Node: Procedures666714
Node: Lambda667454
Node: Primitive Procedures670536
Node: Compiled Procedures672270
Node: Optional Arguments678235
Node: lambda* and define*679446
Node: ice-9 optargs683086
Node: Case-lambda687599
Node: Higher-Order Functions692122
Node: Procedure Properties694048
Node: Procedures with Setters697519
Ref: Procedures with Setters-Footnote-1699923
Node: Inlinable Procedures700064
Node: Macros701945
Ref: Macros-Footnote-1703600
Node: Defining Macros703720
Node: Syntax Rules706509
Ref: Syntax Rules-Footnote-1717320
Ref: Syntax Rules-Footnote-2717497
Node: Syntax Case717602
Node: Syntax Transformer Helpers731944
Node: Defmacros740316
Node: Identifier Macros742730
Node: Syntax Parameters745998
Ref: Syntax Parameters-Footnote-1749479
Node: Eval When749590
Node: Macro Expansion752644
Node: Hygiene and the Top-Level755387
Node: Internal Macros759444
Node: Utility Functions760925
Node: Equality761682
Node: Object Properties767164
Node: Sorting770022
Node: Copying774634
Node: General Conversion775595
Node: Hooks776678
Node: Hook Example778225
Node: Hook Reference780117
Node: C Hooks783680
Node: GC Hooks787959
Node: REPL Hooks790228
Node: Binding Constructs790365
Node: Top Level791156
Node: Local Bindings794611
Node: Internal Definitions798825
Node: Binding Reflection801519
Node: Binding Multiple Values802051
Node: Control Mechanisms802682
Node: begin803920
Node: Conditionals806705
Node: and or811624
Node: while do812855
Node: Prompts818158
Node: Prompt Primitives819035
Node: Shift and Reset826030
Node: Continuations829279
Node: Multiple Values834531
Node: Exceptions838450
Node: Exception Objects840451
Node: Raising and Handling Exceptions848959
Node: Throw and Catch852781
Node: Exceptions and C858653
Node: Error Reporting861397
Node: Dynamic Wind863386
Node: Fluids and Dynamic States871166
Node: Parameters879900
Node: Handling Errors884777
Node: Continuation Barriers891695
Node: Input and Output892894
Node: Ports893973
Node: Binary I/O898110
Ref: x-get-u8898752
Ref: x-lookahead-u8898928
Ref: x-put-u8901739
Ref: x-open-output-bytevector902313
Ref: x-get-output-bytevector903409
Node: Encoding909198
Node: Textual I/O914893
Node: Simple Output922082
Node: Buffering923327
Node: Random Access929138
Node: Line/Delimited931910
Node: Default Ports936952
Node: Port Types940366
Node: File Ports940958
Node: Bytevector Ports949544
Node: String Ports951170
Node: Custom Ports953877
Node: Soft Ports959582
Node: Void Ports964100
Node: Low-Level Custom Ports964692
Node: Low-Level Custom Ports in C972986
Node: Venerable Port Interfaces977760
Node: Using Ports from C982436
Node: Non-Blocking I/O984673
Node: BOM Handling990728
Node: Regular Expressions994556
Node: Regexp Functions995738
Node: Match Structures1006858
Node: Backslash Escapes1010063
Node: LALR(1) Parsing1014238
Node: PEG Parsing1015639
Node: PEG Syntax Reference1017270
Node: PEG API Reference1020095
Node: PEG Tutorial1030697
Node: PEG Internals1046999
Node: Read/Load/Eval/Compile1051286
Node: Scheme Syntax1052672
Node: Expression Syntax1052994
Node: Comments1056928
Node: Block Comments1057860
Node: Case Sensitivity1059516
Node: Keyword Syntax1060317
Node: Reader Extensions1060480
Node: Scheme Read1061070
Node: Annotated Scheme Read1064479
Node: Scheme Write1066815
Node: Fly Evaluation1069734
Node: Compilation1074883
Node: Loading1082706
Node: Load Paths1086540
Node: Character Encoding of Source Files1093100
Node: Delayed Evaluation1097300
Node: Local Evaluation1098544
Node: Local Inclusion1100413
Node: Sandboxed Evaluation1103534
Node: REPL Servers1116457
Node: Cooperative REPL Servers1118380
Node: Memory Management1120325
Node: Garbage Collection Functions1120924
Ref: Garbage Collection Functions-Footnote-11123898
Node: Memory Blocks1124116
Ref: Memory Blocks-Footnote-11130732
Ref: Memory Blocks-Footnote-21130852
Node: Weak References1131156
Node: Weak hash tables1133075
Node: Weak vectors1134717
Node: Guardians1135987
Node: Modules1138793
Node: General Information about Modules1141084
Node: Using Guile Modules1142798
Node: Creating Guile Modules1149093
Ref: Creating Guile Modules-Footnote-11158002
Node: Modules and the File System1158162
Node: R6RS Version References1159914
Node: R6RS Libraries1162623
Node: Variables1168044
Node: Module System Reflection1170959
Node: Declarative Modules1175497
Node: Accessing Modules from C1181371
Node: provide and require1188262
Node: Environments1189121
Node: Foreign Function Interface1191186
Node: Foreign Libraries1192175
Node: Foreign Extensions1206239
Node: Foreign Pointers1210470
Node: Foreign Types1213848
Node: Foreign Functions1216276
Node: Void Pointers and Byte Access1218984
Node: Foreign Structs1225248
Node: More Foreign Functions1229188
Ref: More Foreign Functions-Footnote-11234045
Node: Foreign Objects1234132
Node: Smobs1239411
Node: Scheduling1248824
Node: Threads1249514
Node: Thread Local Variables1255052
Node: Asyncs1257777
Node: Atomics1263935
Node: Mutexes and Condition Variables1266554
Node: Blocking1278950
Node: Futures1281892
Node: Parallel Forms1286273
Node: Options and Config1290724
Node: Build Config1292000
Node: Feature Tracking1296190
Node: Feature Manipulation1297047
Node: Common Feature Symbols1297940
Node: Runtime Options1302695
Node: Other Languages1304958
Node: Using Other Languages1305921
Node: Emacs Lisp1307672
Node: Nil1308612
Node: Dynamic Binding1313361
Node: Other Elisp Features1313739
Node: ECMAScript1314117
Node: Internationalization1315005
Ref: Internationalization-Footnote-11315972
Node: i18n Introduction1316076
Node: Text Collation1319795
Node: Character Case Mapping1322133
Node: Number Input and Output1324421
Node: Accessing Locale Information1327186
Node: Gettext Support1335276
Ref: Gettext Support-Footnote-11341252
Node: Debugging1341591
Node: Simple Debugging1342605
Node: Evaluation Model1345043
Node: Stack Capture1347305
Node: Stacks1349959
Node: Frames1351269
Node: Source Properties1354177
Node: Programmatic Error Handling1357782
Node: Catching Exceptions1358549
Node: Pre-Unwind Debugging1360066
Node: Standard Error Handling1362610
Node: Stack Overflow1365199
Node: Debug Options1372648
Node: Traps1374628
Node: VM Hooks1376350
Node: Trap Interface1380483
Node: Low-Level Traps1383340
Node: Tracing Traps1388055
Node: Trap States1391931
Node: High-Level Traps1393585
Node: GDB Support1397516
Node: Code Coverage1398850
Node: Guile Modules1401732
Node: SLIB1403264
Node: SLIB installation1404339
Node: JACAL1405665
Node: POSIX1406248
Node: Conventions1407397
Node: Ports and File Descriptors1410782
Node: File System1431113
Node: User Information1453499
Node: Time1457443
Node: Runtime Environment1465086
Node: Processes1469568
Node: Signals1487249
Node: Terminals and Ptys1496707
Node: Pipes1498278
Ref: Pipes-Footnote-11503096
Node: Networking1506538
Node: Network Address Conversion1506827
Node: Network Databases1509962
Node: Network Socket Address1525435
Node: Network Sockets and Communication1529937
Node: Internet Socket Examples1544684
Node: System Identification1546584
Node: Locales1548025
Node: Encryption1549499
Node: Web1550762
Ref: Web-Footnote-11552696
Node: Types and the Web1552780
Node: URIs1557970
Node: HTTP1565747
Node: HTTP Headers1572130
Node: Transfer Codings1588329
Node: Requests1590991
Node: Responses1597796
Node: Web Client1603527
Ref: http-request1605234
Node: Web Server1609984
Node: Web Examples1618860
Node: getopt-long1626090
Node: getopt-long Example1627738
Node: Option Specification1630307
Node: Command Line Format1633612
Node: getopt-long Reference1636466
Node: option-ref Reference1640315
Node: SRFI Support1641050
Node: About SRFI Usage1644474
Node: SRFI-01646198
Node: SRFI-11649757
Node: SRFI-1 Constructors1651077
Node: SRFI-1 Predicates1652579
Node: SRFI-1 Selectors1655352
Node: SRFI-1 Length Append etc1657273
Node: SRFI-1 Fold and Map1659821
Node: SRFI-1 Filtering and Partitioning1668231
Node: SRFI-1 Searching1669913
Node: SRFI-1 Deleting1674401
Node: SRFI-1 Association Lists1676746
Ref: x-alist-copy1677982
Node: SRFI-1 Set Operations1679038
Node: SRFI-21687345
Node: SRFI-41689862
Node: SRFI-4 Overview1691173
Node: SRFI-4 API1693779
Node: SRFI-4 and Bytevectors1708382
Node: SRFI-4 Extensions1709656
Node: SRFI-61713731
Node: SRFI-81714255
Node: SRFI-91714520
Node: SRFI-101714893
Node: SRFI-111718702
Node: SRFI-131719601
Node: SRFI-141719816
Node: SRFI-161720066
Node: SRFI-171720386
Node: SRFI-181722109
Node: SRFI-18 Threads1723237
Node: SRFI-18 Mutexes1727594
Node: SRFI-18 Condition variables1729509
Node: SRFI-18 Time1731177
Node: SRFI-18 Exceptions1732427
Node: SRFI-191735055
Node: SRFI-19 Introduction1735526
Node: SRFI-19 Time1737334
Node: SRFI-19 Date1741185
Node: SRFI-19 Time/Date conversions1744024
Node: SRFI-19 Date to string1746824
Node: SRFI-19 String to date1750036
Node: SRFI-231753509
Node: SRFI-261753719
Node: SRFI-271757050
Node: SRFI-27 Default Random Source1757881
Node: SRFI-27 Random Sources1758880
Node: SRFI-27 Random Number Generators1760612
Node: SRFI-281763073
Node: SRFI-301764064
Node: SRFI-311764374
Node: SRFI-341765339
Node: SRFI-351766701
Node: SRFI-371772721
Node: SRFI-381776491
Node: SRFI-391781093
Node: SRFI-411781976
Node: SRFI-41 Stream Fundamentals1782778
Node: SRFI-41 Stream Primitives1783900
Node: SRFI-41 Stream Library1788028
Node: SRFI-421811439
Node: SRFI-431811686
Node: SRFI-43 Constructors1812265
Node: SRFI-43 Predicates1815355
Node: SRFI-43 Selectors1816171
Node: SRFI-43 Iteration1816522
Node: SRFI-43 Searching1818757
Node: SRFI-43 Mutators1822500
Node: SRFI-43 Conversion1824124
Node: SRFI-451825435
Node: SRFI-461830189
Node: SRFI-551830608
Node: SRFI-601831627
Node: SRFI-611835552
Node: SRFI-621836060
Node: SRFI-641836333
Node: SRFI-64 Abstract1836752
Node: SRFI-64 Rationale1837281
Node: SRFI-64 Writing Basic Test Suites1839474
Node: SRFI-64 Conditonal Test Suites and Other Advanced Features1850859
Node: SRFI-64 Test Runner1854771
Node: SRFI-64 Test Results1857239
Node: SRFI-64 Writing a New Test Runner1861448
Node: SRFI-671869008
Node: SRFI-691869251
Node: SRFI-69 Creating hash tables1870049
Node: SRFI-69 Accessing table items1872803
Node: SRFI-69 Table properties1874532
Node: SRFI-69 Hash table algorithms1875646
Node: SRFI-711876761
Node: SRFI-871877296
Node: SRFI-881877597
Node: SRFI-981879036
Node: SRFI-1051879823
Node: SRFI-1111881898
Node: SRFI-1191882504
Node: SRFI-1711883550
Node: SRFI-171 General Discussion1885582
Node: SRFI-171 Applying Transducers1888642
Node: SRFI-171 Reducers1890719
Node: SRFI-171 Transducers1892636
Node: SRFI-171 Helpers1898358
Node: SRFI-1971900514
Node: SRFI-2071912646
Node: SRFI-207 External Notation1915476
Node: SRFI-207 Contructors1917836
Node: SRFI-207 Conversion1919632
Node: SRFI-207 Selection1922092
Node: SRFI-207 Replacement1923406
Node: SRFI-207 Comparison1924000
Node: SRFI-207 Searching1924981
Node: SRFI-207 Joining And Splitting1926396
Node: SRFI-207 I/O1928776
Node: SRFI-207 Exceptions1930906
Node: SRFI-207 Acknowledgements1931577
Node: SRFI-2441932495
Node: R6RS Support1932778
Node: R6RS Incompatibilities1933186
Node: R6RS Standard Libraries1937227
Node: Library Usage1940420
Node: rnrs base1941153
Node: rnrs unicode1954301
Node: rnrs bytevectors1957405
Node: rnrs lists1957762
Node: rnrs sorting1960880
Node: rnrs control1962205
Node: R6RS Records1963436
Node: rnrs records syntactic1967037
Node: rnrs records procedural1971134
Node: rnrs records inspection1973857
Node: rnrs exceptions1975657
Node: rnrs conditions1977614
Node: R6RS I/O Conditions1985244
Node: R6RS Transcoders1988160
Node: rnrs io ports1996602
Node: R6RS File Ports2005229
Node: rnrs io simple2010932
Node: rnrs files2013940
Node: rnrs programs2014428
Node: rnrs arithmetic fixnums2015030
Node: rnrs arithmetic flonums2021444
Node: rnrs arithmetic bitwise2026736
Node: rnrs syntax-case2029816
Node: rnrs hashtables2033028
Node: rnrs enums2038916
Node: rnrs2042606
Node: rnrs eval2043091
Node: rnrs mutable-pairs2043966
Node: rnrs mutable-strings2044599
Node: rnrs r5rs2045255
Node: R7RS Support2046468
Node: R7RS Incompatibilities2047221
Node: R7RS Standard Libraries2048933
Node: Pattern Matching2051727
Node: Readline Support2062429
Node: Loading Readline Support2063190
Node: Readline Options2065304
Node: Readline Functions2066679
Node: Pretty Printing2071870
Ref: Pretty Printing-Footnote-12075914
Node: Formatted Output2076068
Ref: Formatted Output-Footnote-12106402
Node: File Tree Walk2109790
Node: Queues2122688
Node: Streams2125603
Node: Buffered Input2130709
Node: Expect2132976
Node: sxml-match2139098
Ref: sxml-match-Footnote-12151370
Node: The Scheme shell (scsh)2151623
Node: Curried Definitions2152405
Node: Statprof2154127
Node: SXML2163526
Node: SXML Overview2164815
Node: Reading and Writing XML2165000
Node: SSAX2171803
Node: Transforming SXML2180900
Node: SXML Tree Fold2183981
Node: SXPath2187640
Ref: sxpath-procedure-docs2201072
Node: sxml ssax input-parse2202259
Node: sxml apply-templates2204379
Node: Texinfo Processing2205528
Node: texinfo2206229
Ref: texinfo call-with-file-and-dir2207777
Ref: texinfo texi-command-specs2208121
Ref: texinfo texi-command-depth2208155
Ref: texinfo texi-fragment->stexi2208624
Ref: texinfo texi->stexi2208842
Ref: texinfo stexi->sxml2209039
Node: texinfo docbook2209381
Ref: texinfo docbook *sdocbook->stexi-rules*2209934
Ref: texinfo docbook *sdocbook-block-commands*2209973
Ref: texinfo docbook sdocbook-flatten2210014
Ref: texinfo docbook filter-empty-elements2211412
Ref: texinfo docbook replace-titles2211572
Node: texinfo html2212000
Ref: texinfo html add-ref-resolver!2212681
Ref: texinfo html stexi->shtml2213081
Ref: texinfo html urlify2213246
Node: texinfo indexing2213272
Ref: texinfo indexing stexi-extract-index2213714
Node: texinfo string-utils2214339
Ref: texinfo string-utils escape-special-chars2214710
Ref: texinfo string-utils transform-string2215439
Ref: texinfo string-utils expand-tabs2217283
Ref: texinfo string-utils center-string2217521
Ref: texinfo string-utils left-justify-string2218250
Ref: texinfo string-utils right-justify-string2218564
Ref: texinfo string-utils collapse-repeated-chars2218870
Ref: texinfo string-utils make-text-wrapper2219369
Ref: texinfo string-utils fill-string2221523
Ref: texinfo string-utils string->wrapped-lines2221826
Node: texinfo plain-text2222203
Ref: texinfo plain-text stexi->plain-text2222572
Node: texinfo serialize2222869
Ref: texinfo serialize stexi->texi2223165
Node: texinfo reflection2223247
Ref: texinfo reflection module-stexi-documentation2223668
Ref: texinfo reflection script-stexi-documentation2223910
Ref: texinfo reflection object-stexi-documentation2224156
Ref: texinfo reflection package-stexi-standard-copying2224214
Ref: texinfo reflection package-stexi-standard-titlepage2224517
Ref: texinfo reflection package-stexi-generic-menu2225100
Ref: texinfo reflection package-stexi-standard-menu2225353
Ref: texinfo reflection package-stexi-extended-menu2225537
Ref: texinfo reflection package-stexi-standard-prologue2225727
Ref: texinfo reflection package-stexi-documentation2226438
Ref: texinfo reflection package-stexi-documentation-for-include2227440
Node: GOOPS2228394
Node: Copyright Notice2229658
Node: Class Definition2230507
Ref: Class Definition-Footnote-12233707
Ref: Class Definition-Footnote-22233776
Ref: Class Definition-Footnote-32233949
Node: Instance Creation2234144
Node: Slot Options2236643
Node: Slot Description Example2245558
Node: Methods and Generic Functions2249723
Node: Accessors2255395
Node: Extending Primitives2256378
Node: Merging Generics2257587
Ref: Merging Generics-Footnote-12260414
Node: Next-method2260570
Node: method* and define-method*2262105
Node: Advanced argument handling in method and define-method2263852
Node: Type dispatch and redefinition for advanced argument handling2264945
Node: next-method call in method*2266306
Node: Advanced argument handling design choices2268419
Node: Generic Function and Method Examples2270454
Ref: fig:newplus2273319
Ref: Generic Function and Method Examples-Footnote-12275279
Node: Handling Invocation Errors2275483
Node: Inheritance2276966
Ref: fig:hier2277956
Node: Class Precedence List2279110
Ref: Class Precedence List-Footnote-12282434
Node: Sorting Methods2282558
Node: Inheritance and accessors2283587
Node: Introspection2284686
Node: Classes2285829
Node: Instances2287757
Node: Slots2289092
Node: Generic Functions2292399
Node: Accessing Slots2294143
Node: GOOPS Error Handling2300081
Node: GOOPS Object Miscellany2301148
Node: The Metaobject Protocol2303869
Node: Metaobjects and the Metaobject Protocol2305554
Node: Metaclasses2310474
Node: MOP Specification2313079
Node: Instance Creation Protocol2314711
Node: Class Definition Protocol2318119
Node: Customizing Class Definition2327980
Node: Method Definition2332970
Node: Method Definition Internals2333684
Node: Generic Function Internals2336438
Node: Generic Function Invocation2339122
Node: Redefining a Class2340121
Node: Redefinable Classes2340783
Node: Default Class Redefinition Behavior2342048
Node: Customizing Class Redefinition2344908
Node: Changing the Class of an Instance2348034
Node: Guile Implementation2350674
Ref: Guile Implementation-Footnote-12351933
Node: History2352182
Node: The Emacs Thesis2352866
Node: Early Days2354185
Node: A Scheme of Many Maintainers2356844
Node: A Timeline of Selected Guile Releases2359258
Node: Status2363688
Node: Data Representation2367381
Node: A Simple Representation2369010
Node: Faster Integers2370377
Node: Cheaper Pairs2373979
Node: Conservative GC2377304
Node: The SCM Type in Guile2381045
Node: Relationship Between SCM and scm_t_bits2382360
Node: Immediate Objects2383622
Node: Non-Immediate Objects2386440
Node: Allocating Heap Objects2388565
Node: Heap Object Type Information2390359
Node: Accessing Heap Object Fields2391143
Node: A Virtual Machine for Guile2394130
Ref: A Virtual Machine for Guile-Footnote-12395813
Node: Why a VM?2395994
Node: VM Concepts2399523
Node: Stack Layout2404316
Node: Variables and the VM2408311
Node: VM Programs2410661
Node: Object File Format2418839
Node: Instruction Set2423732
Node: Call and Return Instructions2428625
Node: Function Prologue Instructions2432349
Node: Shuffling Instructions2436583
Node: Trampoline Instructions2438920
Node: Non-Local Control Flow Instructions2440399
Node: Instrumentation Instructions2444439
Node: Intrinsic Call Instructions2445626
Node: Constant Instructions2457243
Node: Memory Access Instructions2461123
Node: Atomic Memory Access Instructions2463232
Node: Tagging and Untagging Instructions2464657
Node: Integer Arithmetic Instructions2465511
Node: Floating-Point Arithmetic Instructions2467888
Node: Comparison Instructions2468640
Node: Branch Instructions2474440
Node: Raw Memory Access Instructions2477006
Node: Just-In-Time Native Code2479169
Node: Compiling to the Virtual Machine2484674
Node: Compiler Tower2485466
Node: The Scheme Compiler2490476
Node: Tree-IL2493958
Node: Continuation-Passing Style2505493
Node: An Introduction to CPS2506147
Node: CPS in Guile2509324
Node: Building CPS2523572
Node: CPS Soup2526787
Node: Compiling CPS2534826
Node: Bytecode2537498
Node: Writing New High-Level Languages2542934
Node: Extending the Compiler2543677
Node: GNU Free Documentation License2545101
Node: Concept Index2570466
Node: Procedure Index2628110
Node: Variable Index3146825
Node: Type Index3187138
Node: R5RS Index3199298

End Tag Table


Local Variables:
coding: utf-8
End:
