* Данный текст распознан в автоматическом режиме, поэтому может содержать ошибки
Язык программирования системы Maple
1051
14.2.9. Средства контроля и отладки процедур
Для контроля и отладки процедур, а также для их разбора с целью выяснения примененного алгоритма работы прежде всего надо уметь вывести их текст. Для этого служит функция
print(name);
где name – имя процедуры. Однако перед тем как использовать эту функцию, надо исполнить команду
> interface(verboseproc=2,prettyprint=1,version); 1, 3, Standard Worksheet Interface, Maple 11.0, Windows XP, February 17 2007 Build ID 277223
Ее смысл будет пояснен ниже. Пока же отметим, что эта команда обеспечивает полный вывод текста процедур библиотеки. Встроенные в ядро процедуры, напи санные не на Maple языке, в полном тексте не представляются. Поясним это сле дующими примерами:
> print(evalf); proc() option builtin = evalf, remember; > print(erf); proc(x::algebraic) local res; option `Copyright (c) 1994 by the University of Waterloo. All rights reserved.`; if nargs <> 1 then error "expecting 1 argument, got %1", nargs elif type(x, 'complex(float)') then return evalf('erf'(x)) elif type(x, 'infinity') then if type(x, 'cx_infinity') then res := undefined + undefined*I elif type(x, 'undefined') then res := NumericTools:-ThrowUndefined(x) elif type(Re(x), 'infinity') then res := CopySign(1, Re(x)) elif type(x, 'imaginary') then res := x else res := infinity + infinity*I end if; elif type(x, 'undefined') then end proc;