3.04 26 Sep 2012

Graphing scientific calculator.


Developer website: Mark Widholm

MathPad is a general purpose graphing scientific calculator. It uses a text worksheet rather than simulating buttons on a hand held calculator. This live scratchpad interface allows you to see and edit your entire calculation.

In addition to being a handy little calculator, MathPad can also take on larger problems. Simple plotting allows quick visualization of results. General purpose arrays allow calculations involving vectors, complex numbers, matrix algebra etc. 2D arrays can be displayed as grayscale or color images. Several examples are included showing such things as equation solving, curve fitting, vector calculations and numerical solution of differential equations.

What's New

Version 3.04:
  • Rename old MathPad documents to .mp
    • OS X 10.7 ignores the mac "creator" code so it is impossible for the new application to determine ownership of all old MathPad documents.
    • If you were already in the habit of using the .mp extension you are all set. The extension is now required to get the Finder to associate documents with the MathPad application. If you rename your files in the Finder to use .mp, you can double click on them and they will open in MathPad.
    • Alternatively you can drop the old file onto the MathPad application. When you close the document it will ask you save it with a .mp extension.
  • Learn to live without an ENTER key.
    • Sadly the enter key is gone on new keyboards and even if you use an old keyboard, OS 10.7 re-maps enter to return.
    • MathPad 3.04 provides several alternative ways to evaluate the text. The backslash key can be used. It is just above the return key on most keyboards so it is a somewhat reasonable single key substitute.
    • Key combinations fn-return or command-return can also be used.
    • Or you can click the RUN button in the lower left corner of the text window.
  • Update usage of any XFuns.
    • The old XFun plugins do not work under OS 10.7. Many of the former XFuns are now built in as Optional Functions and are available simply by enabling them in the Functions window.
    • Open the Functions window either via the Edit menu "Show Functions" or the Help menu "Show Function List". Find the function you need and check its enable column.
    • Not all former XFuns are available for version 3.04. See the Functions window for a full list of what functions are available.
    • The functionality of sizeaxis() has been implemented by a small button in the lower right corner of the PLOT window. This button allows you to set and lock the aspect ratio of the window to give equal x and y coordinate size on the screen.
    • The functionality of showPICT() has been implemented by a new imagefile statement.
  • Update the path name of any include files.
    • Unless you only used source file relative includes, you will need to modify your include file path names or move your include files. The new base directory for includes is: ~/Documents/MathPad/.
    • If you have your own custom include files it's probably easiest to just move them to ~/Documents/MathPad/.
    • Old style ":" path specifications will still work for relative paths.
    • The distributed include files have been renamed to use the .mp extension. This is not stricty required for include files but it is less confusing if all mathpad source files use .mp. If you have old documents that used the distributed include files, you will need to change your include statements to use the .mp extension.
    • Note that you can get a full path name by dragging a file from a finder window to the MathPad text window.
  • MathPad files now use rich text format (rtf)
    • MathPad now uses rtf instead of plain text as its default document format. It will read old MathPad documents and convert the old preference information. By default it will convert the document to rtf and when you close it, it will save it with a .mp extension.
    • This allows (but does not require) the user to do fancy formatting of the text. The MathPad evaluator ignores the formatting. For example, a variable named z is the same as z even if it looks different.
    • MathPad can read generic .rtf or plain text .txt files from other applications by dropping them on MathPad.
    • MathPad documents can be opened in other applications (like TextEdit) that handle rtf.
    • MathPad allows the option of saving as plain text. This will lose text formatting and document options.
  • Preferences
    • If you are converting old documents they will keep most of thier preferences.
    • There is no "Document Options" dialog. Options are settable via menu items. Some things will no longer be settable (for example syntax coloring styles). Some things that were settable via either statement or option will now only be via a statement in the text (for example Xlogaxis=on).
    • There is a Preferences panel but it is only used for setting the defaults for New or imported documents. The panel does not change anything for the current document.
  • Menu Changes
    • There are minor changes in the menus but hopefully they are fairly obvious ones.
    • There are many new menu choices associated with text formatting, most of them are not very important for MathPad.
    • When the text window is front, the Font Panel (Format > Font > Show Fonts) applies only to the selected text. If you want to change the font for the entire document use Edit > Select All.
    • When the PLOT window is front, the Font Panel will change the font used for axis labels. Labels can not be selected and changed individually. Moveable labels will not be updated until the next evaluation.
    • There is no Save Plot menu item. When the PLOT window is front Edit>Copy will put a copy of the plot onto the clipboard.
  • Pasted Plot Labels
    • Arbitrary labels can not be pasted directly onto the plot. You can still put arbitrary labels anywhere on the plot but the text must appear as a label or slabel statement in the text source file.
    • When you open old documents with pasted labels they will be converted to slabel statements and inserted into the text at the beginning of your file.
  • Pasted Graphics
    • Old documents that had graphics pasted into the text or as a plot overlay will lose that information. If the old MathPad document is your only copy of the graphic, you may want to see if you can retrieve it before converting the document to version 3.04.
    • Imbedded graphics in text is not supported in version 3.04. The text file will work but the graphic is discarded.
    • Plot graphics are still supported but they are not automatically retrieved from old documents. A new imagefile statement has been implemented to read in a graphics file and show it as a plot background.
    • imagefile "mygraphic.jpg", {x,y,width,height}
  • Binary Data Files
    • Old data files can be used as-is except for FLT8 format. The FLT8 format is the native PPC double and is not supported. There is now a corresponding format DBL8 which is the native intel double and can be used for new files.
    • The other binary formats keep the original byte ordering in the external file and they can be transferred directly between systems.


Mac OS X 10.6 or later


Current Version (3.x)


Version Downloads
Education / Mathematics
26 Sep 2012
OS X / Intel 32