Next: Строки, Previous: Невычисляемые и вычисляемые формы, Up: Выражения [Contents][Index]
Идентификаторы Maxima могут содержать буквы алфавита,
плюс цифры от 0 до 9,
плюс любые специальные символы, с предшествующим знаком \
.
Цифра может быть первым символом идентификатора,
если ей предшествует бэкслеш \
.
Для цифр, которые являются вторыми или последующими символами, бэкслеш
не нужен.
Специальный символ может быть объявлен алфавитным, с помощью функции declare
.
Если это так, его не нужно экранировать бэкслешом в идентификаторе.
Изначально к алфавитным символам относятся
A
до Z
, a
до z
, %
и _
.
Maxima чувствительна к регистру символов. Идентификаторы foo
, FOO
и Foo
различны.
Для дальнейших сведений по этому вопросу смотрите Lisp и Maxima.
Maxima идентификатор является Lisp-символом, который начинается со знака доллар $
.
Любой другой Lisp-символ, когда он встречается в Maxima, предваряется знаком вопроса ?
.
См. Lisp и Maxima для более подробной информации по этому вопросу.
Примеры:
(%i1) %an_ordinary_identifier42; (%o1) %an_ordinary_identifier42 (%i2) embedded\ spaces\ in\ an\ identifier; (%o2) embedded spaces in an identifier (%i3) symbolp (%); (%o3) true (%i4) [foo+bar, foo\+bar]; (%o4) [foo + bar, foo+bar] (%i5) [1729, \1729]; (%o5) [1729, 1729] (%i6) [symbolp (foo\+bar), symbolp (\1729)]; (%o6) [true, true] (%i7) [is (foo\+bar = foo+bar), is (\1729 = 1729)]; (%o7) [false, false] (%i8) baz\~quux; (%o8) baz~quux (%i9) declare ("~", alphabetic); (%o9) done (%i10) baz~quux; (%o10) baz~quux (%i11) [is (foo = FOO), is (FOO = Foo), is (Foo = foo)]; (%o11) [false, false, false] (%i12) :lisp (defvar *my-lisp-variable* '$foo) *MY-LISP-VARIABLE* (%i12) ?\*my\-lisp\-variable\*; (%o12) foo
Next: Строки, Previous: Невычисляемые и вычисляемые формы, Up: Выражения [Contents][Index]