Warning: this is an htmlized version!
The original is here, and
the conversion rules are here.
;; This file:
;;   http://anggtwu.net/MAXIMA/ppshort.lisp.html
;;   http://anggtwu.net/MAXIMA/ppshort.lisp
;;          (find-angg "MAXIMA/ppshort.lisp")
;; Author: Richard Fateman
;; Small changes by: Eduardo Ochs <eduardoochs@gmail.com>
;; Date: 2024oct29
;;
;; From: (find-maximamsg "58834949 202410 29" "RFateman: ppshort.lisp")
;;       https://sourceforge.net/p/maxima/mailman/message/58834949/

;; Make Maxima general form expression more lisp-like
;;
(defun shorten (r)
  (cond ((atom r) r)
	(t (cons (caar r) (mapcar #'shorten (cdr r))))))

(defun shortmore (r)
  (cond ((atom r) (shortatom r))
	(t (mapcar #'shortmore r))))

(defun shortatom (r)
  (cond ((eq r 'mtimes) '*)
	((eq r 'mplus)  '+)
	((eq r 'mexpt)  '^)
	;; etc
	(t r)))

(defun $pp (r)
  (pprint (shortmore (shorten r))))


#|
* (eepitch-maxima)
* (eepitch-kill)
* (eepitch-maxima)
load("ppshort.lisp");
q:ratsimp((a+b+c+1)^10);
pp(q);

|#




;; Local Variables:
;; coding:  utf-8-unix
;; End: