https://github.com/nilqed/mma
Mock-Mma by Richard J. Fateman
https://github.com/nilqed/mma
common-lisp computer-algebra-system mma
Last synced: 3 months ago
JSON representation
Mock-Mma by Richard J. Fateman
- Host: GitHub
- URL: https://github.com/nilqed/mma
- Owner: nilqed
- License: other
- Created: 2025-03-18T13:13:36.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-03-18T13:59:08.000Z (3 months ago)
- Last Synced: 2025-03-18T14:27:17.540Z (3 months ago)
- Topics: common-lisp, computer-algebra-system, mma
- Language: Mathematica
- Homepage: https://people.eecs.berkeley.edu/~fateman/lisp/mma4max/
- Size: 572 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# mma
Mock-Mma by Richard J. FatemanThis is a version that can be loaded using [Quicklisp](https://www.quicklisp.org/beta/)
when this repo is cloned into the `~/quicklisp/local-projects/` folder[^1].## Installation
$ cd :~/quicklisp/local-projects/
$ git clone https://github.com/nilqed/mma.git## Running
Start your *lisp* (tested with ABCL, ECL, SBCL so far):(ql::quickload :cl-package-locks)
(cl-package-locks::unlock-package :common-lisp)
(ql::quickload :mma)
(cl-package-locks::lock-package :common-lisp)
(in-package :mma)
(tl)For convenience there is a file `run-mma.lisp` in the `mma` folder that
does exactly as above whenyour-lisp --load "path-to/run-mma"
*Note* that it is assumed that `quicklisp` is available in your Lisp, otherwise you have
to issue a(load "~/quicklisp/setup")
before the other commands (e.g. see `test-abcl.txt`).
## Example
kfp@omega:~/quicklisp/local-projects/mma$ sbcl --load "run-mma"
This is SBCL 2.2.9.debian, an implementation of ANSI Common Lisp.
More information about SBCL is available at .
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
To load "cl-package-locks":
Load 1 ASDF system:
cl-package-locks
; Loading "cl-package-locks"
To load "mma":
Load 1 ASDF system:
mma
; Loading "mma"
Mock-Mma 14: 9 Tuesday, Mar 18, 2025
In[1] := D[x^p*Sin[x],x]
p
x (p Sin[x] + x Cos[x])
Out[1] = ------------------------
x
In[2] := Quit[]
Exited to Lisp
* (quit)
kfp@omega:~/quicklisp/local-projects/mma$kfp@omega:~/quicklisp/local-projects/mma$
See also `test-abcl.txt` and `test-ecl.txt`. Other CL's should work as well. Using `npt`
showed a problem with loading `ASDF 3.0+` which is unrelated with `mma`, though.### Changelog
* new mma.asd
* mma.lisp
fix: issue with incomplete prompt
https://stackoverflow.com/questions/45803936/call-finish-output-from-format
A suggestion from Rob Warnock
* eval.lisp
using the ~/fo/ nil directive from above.
* rat1.lisp
commented
;; (eval-when (:compile-toplevel) (load "c:/lisp/mma4max/poly.lisp"))* using cl-package-locks to circumvent the ... (not nice but effective ;-)
### Tests
tbd. (Rubi, Batch , ...):date:
[^1]: where `~` has to be adjusted accordingly if Quicklisp is installed elsewhere.