МЕСИВО - Mathematica, Пишущий сценарий Взлома - сделает это.
Начиная с версии 6 Mathematica, следующий сценарий жемчуга достаточен:
http://ai.eecs.umich.edu/people/dreeves/mash/mash.pl
Для предыдущих версий Mathematica, программа C необходима:
http://ai.eecs.umich.edu/people/dreeves/mash/pre6
ОБНОВЛЕНИЕ: В конце концов Mathematica 8 поддерживает это исходно с "-сценарий" параметр командной строки:
http://www.wolfram.com/mathematica/new-in-8/mathematica-shell-scripts/
Попробуйте
имя файла-initfile
И поместите команду выхода в свою программу
Вот решение, которое не требует дополнительного вспомогательного скрипта. Вы можете использовать следующий shebang для прямого вызова ядра Mathematica:
#!/bin/sh
exec <"$0" || exit; read; read; exec /usr/local/bin/math -noprompt "$@" | sed '/^$/d'; exit
(* Mathematica code starts here *)
x = 2+2;
Print[x];
Код shebang пропускает первые две строки сценария и передает остальные в ядро Mathematica в качестве стандартного ввода. Команда sed удаляет пустые строки, созданные ядром.
Этот прием не такой универсальный, как MASH . Поскольку код Mathematica считывается из stdin , вы не можете использовать stdin для пользовательского ввода, т. Е. Функции Input и InputString не работают .