This document describes version 0.4d1 of Vicare Scheme, an R6RS compliant native compiler for the Scheme language, producing single threaded programs running on Intel x86 32-bit and 64-bit processors. Vicare is pronounced the etruscan way.
The package, including its documentation, is distributed under the terms of the GNU General Public License (GPL) and can be downloaded from:
the home page of the project is at:
development takes place at:
and, as a backup, at:
Copyright © 2010-2017 by Marco Maggi.
Copyright © 2006-2010 by Abdulaziz Ghuloum.
Copyright © Michael Sperber, R. Kent Dybvig, Matthew Flatt and Anton Van Straaten.
This document is derived from the original Ikarus documentation by the Vicare Scheme contributors, see the “History” appendix for details.
The documentation of IrRegex is Copyright © 2005-2012 Alex Shinn. All rights reserved.
The documentation of Pregexp is Copyright © 1999-2005 Dorai Sitaram. All rights reserved.
The documentation of the library (vicare formations)
is derived
from the documentation of Guile. Copyright © 1996-2005,
2009-2013 Free Software Foundation.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Trademarks used herein are the property of their respective owners.
• overview: | Overview of Vicare Scheme. | |
• using: | Using the program. | |
• scheme: | The Scheme language. | |
• baselib: | Base library. | |
• stdlib: | Standard libraries. | |
• iklib: | Language extensions. | |
• libutils: | Scheme libraries utilities. | |
• progutils: | Scheme programs utilities. | |
• includes: | Loading include files. | |
• foreign: | Interfacing with adapting foreign libraries. | |
• ffi: | Foreign functions interface. | |
• syslib: | Low level, fast, unsafe operations. | |
Internals | ||
---|---|---|
• objects: | Built in Scheme objects. | |
• debug int: | Debug mode. | |
• expander: | Expander internals. | |
• machinery: | Introduction to execution machinery. | |
• compiler: | Wild notes on the compiler internals. | |
• boot image: | Anatomy of the boot image. | |
Appendices | ||
• missing: | Missing Features. | |
• building: | Building infrastructure. | |
• credits: | Credits for this document. | |
• dynamic environment: | Notes on the dynamic environment. | |
• resources: | Allocating and releasing resources. | |
• unicode: | On Unicode and UTF encodings. | |
• fasl: | Handling FASL files. | |
• shmem: | Interprocess shared memory. | |
• binfmt: | Launching programs directly on GNU+Linux. | |
• file-magic: | Installing file magic file.
| |
• notes: | Miscellaneous notes on everything. | |
• Package License: | GNU General Public License. | |
• history: | History. | |
• references: | Bibliography and references. | |
Indexes | ||
• concept index: | An entry for each concept. | |
• function index: | An entry for each function. | |
• variable index: | An entry for each variable. | |
• type index: | An entry for each type. | |
External documents | ||
• types: | The typed language. | |
• libs: | Bundled libraries for Vicare Scheme. | |
• libffi: | Libffi documentation. | |