-@c -*-texinfo-*-
+@c -*- mode: texinfo; coding: utf-8 -*-
@c This is part of the GNU Emacs Lisp Reference Manual.
-@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software
+@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software
@c Foundation, Inc.
@c See the file elisp.texi for copying conditions.
@node Lisp Data Types
have similar structures and may usually be used in the same contexts.
Types can overlap, and objects can belong to two or more types.
Consequently, we can ask whether an object belongs to a particular type,
-but not for ``the'' type of an object.
+but not for @emph{the} type of an object.
@cindex primitive type
A few fundamental object types are built into Emacs. These, from
@samp{?\b}, @samp{?\t}, @samp{?\n}, @samp{?\v}, @samp{?\f},
@samp{?\s}, @samp{?\r}, @samp{?\d}, and @samp{?\e}, respectively.
(@samp{?\s} followed by a dash has a different meaning---it applies
-the ``super'' modifier to the following character.) Thus,
+the Super modifier to the following character.) Thus,
@example
?\a @result{} 7 ; @r{control-g, @kbd{C-g}}
@cindex escape sequence
These sequences which start with backslash are also known as
@dfn{escape sequences}, because backslash plays the role of an
-``escape character''; this terminology has nothing to do with the
+escape character; this has nothing to do with the
character @key{ESC}. @samp{\s} is meant for use in character
constants; in string constants, just write the space.
codes. A hexadecimal escape sequence consists of a backslash,
@samp{x}, and the hexadecimal character code. Thus, @samp{?\x41} is
the character @kbd{A}, @samp{?\x1} is the character @kbd{C-a}, and
-@code{?\xe0} is the character
-@iftex
-@samp{@`a}.
-@end iftex
-@ifnottex
-@samp{a} with grave accent.
-@end ifnottex
+@code{?\xe0} is the character @kbd{à} (@kbd{a} with grave accent).
You can use any number of hex digits, so you can represent any
character code in this way.
@cindex CL note---case of letters
@quotation
@b{Common Lisp note:} In Common Lisp, lower case letters are always
-``folded'' to upper case, unless they are explicitly escaped. In Emacs
+folded to upper case, unless they are explicitly escaped. In Emacs
Lisp, upper case and lower case letters are distinct.
@end quotation
A @dfn{cons cell} is an object that consists of two slots, called
the @sc{car} slot and the @sc{cdr} slot. Each slot can @dfn{hold} any
-Lisp object. We also say that ``the @sc{car} of this cons cell is''
+Lisp object. We also say that the @sc{car} of this cons cell is
whatever object its @sc{car} slot currently holds, and likewise for
the @sc{cdr}.
@quotation
A note to C programmers: a Lisp list thus works as a @dfn{linked list}
built up of cons cells. Because pointers in Lisp are implicit, we do
-not distinguish between a cons cell slot ``holding'' a value versus
-``pointing to'' the value.
+not distinguish between a cons cell slot holding a value versus
+pointing to the value.
@end quotation
@cindex atoms
Because cons cells are so central to Lisp, we also have a word for
-``an object which is not a cons cell''. These objects are called
+an object which is not a cons cell. These objects are called
@dfn{atoms}.
@cindex parenthesis
The names @sc{car} and @sc{cdr} derive from the history of Lisp. The
original Lisp implementation ran on an @w{IBM 704} computer which
-divided words into two parts, called the ``address'' part and the
-``decrement''; @sc{car} was an instruction to extract the contents of
+divided words into two parts, the address and the
+decrement; @sc{car} was an instruction to extract the contents of
the address part of a register, and @sc{cdr} an instruction to extract
-the contents of the decrement. By contrast, ``cons cells'' are named
+the contents of the decrement. By contrast, cons cells are named
for the function @code{cons} that creates them, which in turn was named
for its purpose, the construction of cells.
cell.
In this example, the first box, which holds the @sc{car} of the first
-cons cell, refers to or ``holds'' @code{rose} (a symbol). The second
+cons cell, refers to or holds @code{rose} (a symbol). The second
box, holding the @sc{cdr} of the first cons cell, refers to the next
pair of boxes, the second cons cell. The @sc{car} of the second cons
cell is @code{violet}, and its @sc{cdr} is the third cons cell. The
@cindex @samp{#^} read syntax
The printed representation of a char-table is like a vector
except that there is an extra @samp{#^} at the beginning.@footnote{You
-may also encounter @samp{#^^}, used for ``sub-char-tables''.}
+may also encounter @samp{#^^}, used for sub-char-tables.}
@xref{Char-Tables}, for special functions to operate on char-tables.
Uses of char-tables include:
The printed representation of a bool-vector is like a string, except
that it begins with @samp{#&} followed by the length. The string
constant that follows actually specifies the contents of the bool-vector
-as a bitmap---each ``character'' in the string contains 8 bits, which
+as a bitmap---each character in the string contains 8 bits, which
specify the next 8 elements of the bool-vector (1 stands for @code{t},
and 0 for @code{nil}). The least significant bits of the character
correspond to the lowest indices in the bool-vector.
is a Lisp function object, including the @code{lambda} symbol.
Lisp macro objects are usually defined with the built-in
-@code{defmacro} function, but any list that begins with @code{macro} is
-a macro as far as Emacs is concerned. @xref{Macros}, for an explanation
+@code{defmacro} macro, but any list that begins with @code{macro} is a
+macro as far as Emacs is concerned. @xref{Macros}, for an explanation
of how to write a macro.
@strong{Warning}: Lisp macros and keyboard macros (@pxref{Keyboard
The contents of a buffer are much like a string, but buffers are not
used like strings in Emacs Lisp, and the available operations are
different. For example, you can insert text efficiently into an
-existing buffer, altering the buffer's contents, whereas ``inserting''
+existing buffer, altering the buffer's contents, whereas inserting
text into a string requires concatenating substrings, and the result
is an entirely new string object.
Though many windows may exist simultaneously, at any time one window
is designated the @dfn{selected window}. This is the window where the
cursor is (usually) displayed when Emacs is ready for a command. The
-selected window usually displays the current buffer, but this is not
-necessarily the case.
+selected window usually displays the current buffer (@pxref{Current
+Buffer}), but this is not necessarily the case.
Windows are grouped on the screen into frames; each window belongs to
one and only one frame. @xref{Frame Type}.
@end example
You can also use the same syntax to make a circular structure, which
-appears as an ``element'' within itself. Here is an example:
+appears as an element within itself. Here is an example:
@example
#1=(a #1#)