(linenum→info "unix/slp.c:2238")

gauche/0.8.12/src/gauche-init.scm

    1: ;;;
    2: ;;; gauche-init.scm - initialize standard environment
    3: ;;;
    4: ;;;   Copyright (c) 2000-2007  Shiro Kawai  <shiro@acm.org>
    5: ;;;   
    6: ;;;   Redistribution and use in source and binary forms, with or without
    7: ;;;   modification, are permitted provided that the following conditions
    8: ;;;   are met:
    9: ;;;   
   10: ;;;   1. Redistributions of source code must retain the above copyright
   11: ;;;      notice, this list of conditions and the following disclaimer.
   12: ;;;  
   13: ;;;   2. Redistributions in binary form must reproduce the above copyright
   14: ;;;      notice, this list of conditions and the following disclaimer in the
   15: ;;;      documentation and/or other materials provided with the distribution.
   16: ;;;  
   17: ;;;   3. Neither the name of the authors nor the names of its contributors
   18: ;;;      may be used to endorse or promote products derived from this
   19: ;;;      software without specific prior written permission.
   20: ;;;  
   21: ;;;   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
   22: ;;;   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
   23: ;;;   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
   24: ;;;   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
   25: ;;;   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   26: ;;;   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
   27: ;;;   TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
   28: ;;;   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
   29: ;;;   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
   30: ;;;   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
   31: ;;;   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   32: ;;;  
   33: ;;;  $Id: gauche-init.scm,v 1.124 2007/03/07 04:29:14 shirok Exp $
   34: ;;;
   35: 
   36: (select-module gauche)
   37: 
   38: ;;
   39: ;; Loading, require and provide
   40: ;;
   41: 
   42: ;; Load path needs to be dealt with at the compile time.  this is a
   43: ;; hack to do so.   Don't modify *load-path* directly, since it causes
   44: ;; weird compiler-evaluator problem.
   45: ;; I don't like the current name "add-load-path", though---looks like
   46: ;; more a procedure than a compiler syntax---any ideas?
   47: (define-macro (add-load-path path . args)
   48:   `',(apply %add-load-path path args))
   49: 
   50: (define-macro (autoload file . vars)
   51:   `(%autoload (current-module) ',file ',vars))
   52: 
   53: ;; Preferred way
   54: ;;  (use x.y.z) ==> (require "x/y/z") (import x.y.z)
   55: 
   56: (define-macro (use module)
   57:   `(begin
   58:      (with-module gauche
   59:        (require ,(module-name->path module)))
   60:      (import ,module)))
   61: 
   62: ;; create built-in modules, so that (use srfi-6) won't complain, for example.
   63: (define-module srfi-2 )
   64: (define-module srfi-6 )
   65: (define-module srfi-8 )
   66: (define-module srfi-10 )
   67: (define-module srfi-17 )
   68: 
   69: ;; for backward compatibility
   70: (define-module gauche.vm.debugger )
   71: 
Syntax (Markdown)