FriCAS
Vorlage:Infobox Programmiersprache FriCAS ist ein Allzweck-Computeralgebrasystem mit einem starken Fokus auf mathematische Forschung und Entwicklung neuer Algorithmen. Es besteht aus einem Interpreter, einem Compiler und einer immer noch wachsenden Bibliothek[1] mit mehr als 1.000 Domänen und Kategorien.
FriCAS bietet eine stark typisierte höhere Programmiersprache namens SPAD und eine ähnliche interaktive Sprache, die zur Vereinfachung die Typinferenzierung verwendet. Aldor wurde ursprünglich als Compiler der nächsten Generation für Axiom und Abspaltungen entwickelt. Mit FriCAS können (optional) Aldor-Programme ausgeführt werden. Beide Sprachen haben eine ähnliche Syntax und ein ausgeklügeltes (abhängiges) Typsystem.[2][3][4]
FriCAS ist umfassend dokumentiert und sowohl als Quellcode als auch in binärer Form für die gängigsten Plattformen erhältlich. Das Kompilieren der Quellen erfordert neben anderen Voraussetzungen eine Common-Lisp-Umgebung (wobei viele der wichtigsten Implementierungen unterstützt werden und als Open Source frei verfügbar sind).
FriCAS läuft auf diversen POSIX-Plattformen wie Linux, MacOS, Unix, BSD sowie unter Cygwin und Microsoft Windows WSL.
FriCAS besitzt neben der Kommandozeile verschiedene Front-Ends, z. B. Emacs, TeXmacs, Jupyter.
Geschichte
FriCAS ist ein Nachkomme von Axiom, das seinen Ursprung in Scratchpad hat, einem Projekt, das 1965 von James Griesmer[5] in IBM Laboratories gestartet wurde. Weitere Details finden sich unter Axiom/Geschichte.[6]
Beispiele
FriCAS hat eine ziemlich vollständige Implementierung des Risch-Bronstein-Trager-Algorithmus (kurz Risch-Algorithmus).
Ein weiteres nützliches Feature ist Stream:
)set stream calculate 5 exp_series := series(exp x, x=0)
Type: UnivariatePuiseuxSeries(Expression(Integer),x,0)
So kann jeder Koeffizient abgerufen werden, zum Beispiel: :
coefficient(exp_series,40)
Type: Expression(Integer)
Weblinks
- FriCAS Homepage
- FriCAS Wiki
- Documentation at fricas.github.io
- FriCAS API (sphinx)
- Quelltext: SourceForge,GitHub mirror
- Rosetta stone (pdf)
- rosettacode.org, Category:SPAD
- Forum: fricas-devel
- FriCAS Jupyter Kernel (jfricas/src)
- FriCAS Jupyter (pypi)
- FriCAS Tutorium von Franz Lehner (deutsch, PDF)
Verwandt: