emacs-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-commit] emacs/src eval.c


From: Miles Bader
Subject: [Emacs-commit] emacs/src eval.c
Date: Tue, 11 Jun 2002 21:50:05 -0400

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Branch:         lexbind
Changes by:     Miles Bader <address@hidden>    02/06/11 21:50:05

Modified files:
        src            : eval.c 

Log message:
        (Fcurry, Ffunctionp): New functions.
        (syms_of_eval): Initialize them.
        (funcall_lambda): Call `exec_byte_code' instead of Fbyte_code.
        If a compiled-function object has a `push-args' slot, call the
        byte-code interpreter without binding any arguments.
        (Ffuncall): Add support for curried functions.
        (Vinterpreter_lexical_environment): New variable.
        (syms_of_eval): Initialize it.
        (Fsetq): Modify SYM's lexical binding if appropriate.
        (Ffunction): Return a closure if within a lexical environment.
        (Flet, FletX): Lexically bind non-defvar'd variables if inside a
        lexical environment.
        (Feval): Return lexical binding of variables, if they have one.
        Pass current lexical environment to embedded lambdas.  Handle closures.
        (Ffuncall): Pass nil lexical environment to lambdas.  Handle closures.
        (funcall_lambda): Add new LEXENV argument, and lexically bind
        arguments if it's non-nil.  Bind `interpreter-lexenv' if it changed.
        (apply_lambda): Add new LEXENV argument and pass it to funcall_lambda.
        (Fdefvaralias, Fdefvar, Fdefconst): Mark the variable as special.
        (Qinternal_interpreter_environment, Qclosure): New constants.
        (syms_of_eval): Initialize them.
        (Fdefun, Fdefmacro): Use a closure if lexical binding is active.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/emacs/emacs/src/eval.c.diff?only_with_tag=lexbind&tr1=1.189&tr2=1.189.2.1&r1=text&r2=text




reply via email to

[Prev in Thread] Current Thread [Next in Thread]