MARTHA is an extension of the computer language
APL for electric circuit analysis.
LLAMA is a suite of tools that enhance MARTHA and make it more useful.
Both MARTHA and LLAMA, and their documentation, are
available here for downloading.
To use MARTHA, you need to have APL installed on your own computer.
A free DOS-based APL interpreter is available on this site.
APL (A Programming Language) is a general-purpose, interactive, interpreted language designed by Kenneth E. Iverson and colleagues at IBM. APL objects (variables, functions, etc.) are traditionally written in an italic Courier font, as is done here. APL was based on a more rigorous and thoughtful mathematical foundation than any other widely deployed language except possibly Lisp. APL is particularly well suited for dealing with arrays of numbers or characters. Its interactive environment is easily accessed by novices and yet its power is appreciated by experts. It is very effective for rapid prototyping, and for programs that only need to be run a few times, where the cost of developing a program is more important than the cost of running it.
Commercial versions of APL are available for most computers. The APL Section of this site contains additional historical notes on the APL language, links to additional Web APL resources, and a free DOS-based APL interpreter that will run all of the MARTHA and LLAMA code. There is also information about running this APL interpreter on modern systems with limited DOS support.
MARTHA is a set of cooperating APL functions and variables that extend APL to analyze linear electric circuits. MARTHA uses APL syntax; all APL capabilities are automatically available to MARTHA users.
MARTHA was written in the early 1970s by Prof. Paul Penfield, Jr., of MIT, as part of a research program to explore the ability of special-purpose languages to support application domains, particularly electric and electronic circuit design. It is a language rather than simply a circuit analysis program.
Although MARTHA was made available commercially through the Steinbrecher Corporation (Don Steinbrecher, the company founder, was a very innovative electrical engineer and MARTHA user) it never achieved wide use, for several reasons. It was limited in its implementation to frequency-domain analysis of linear noise-free circuits that could be made as connections of two-port networks. Its use required some minimal ability to use APL. It was never maintained as a commercial product, with the necessary attention paid to customer relations. As other commercial programs for circuit simulation became available, potential users did not always appreciate the advantages of a language rather than a circuit simulator. A copy of the original 1971 sales brochure for the commercial mainframe version is available here: MARTHA_Brochure.pdf (417 kbytes).
MIT has agreed to allow MARTHA to be distributed without charge and without restrictions. This site contains all MARTHA software and documentation in its MARTHA Section.
LLAMA (Lincoln Laboratory Advanced MARTHA Applications) is a set of APL workspaces and functions that enhance MARTHA in several ways. It was developed at MIT Lincoln Laboratory by several microwave and RF engineers after MARTHA became available in the early 1970s. In the early 1990s, Doug White was tasked with rescuing MARTHA and all of the related APL workspaces when the Lincoln Lab mainframe computer was eliminated.
While at MIT Lincoln Laboratory, White maintained these resources for himself and for the benefit of his colleagues, eventually grouping them together and giving them the name LLAMA. Some LLAMA resources facilitate high-quality output, particularly graphics. Some implement special devices and circuits, such as microstrip transmission lines or radial microstrip stubs. A few workspaces are devoted to microstrip and LC filter synthesis. Some calculate properties that are not done by MARTHA, such as group delay or time-domain response. Some facilitate analysis with complex, not real, frequency.
MIT Lincoln Laboratory has agreed to allow LLAMA to be distributed without charge and without restrictions. This site contains all LLAMA software and documentation in its LLAMA Section.
This site was designed and is maintained jointly by Doug White and Paul Penfield. We are pleased to offer this software and the associated documentation without charge. We would be happy to hear from you, either with questions about MARTHA or LLAMA, with complaints, or with comments. You can use the Comment and Inquiry form linked at the bottom of this page. Also, we plan to establish a forum on this site for the interchange of information among MARTHA and LLAMA users.
However, we are not in a position to devote as much time to MARTHA or LLAMA as we would like. Further enhancements of these resources must come from others. If you have made use of MARTHA or LLAMA and developed material that you think would interest others, please tell us. This site will contain contributed material in its Submissions Section.
There are a number of useful resources in the Development Section. This includes notes on all of the changes made to MARTHA and LLAMA to date, test workspaces, and instructions on how to document APL code using Microsoft Word. There is considerable information on the mainframe-to-PC conversion that might be helpful to anyone doing a similar port of ancient APL code.
The original creation of MARTHA and LLAMA was the work of many individuals, and the process of releasing the code and documentation has required the cooperation of several entities. In addition to giving credit to those people who helped develop the software, we would like to thank the various organizations for their support in making these valuable resources available to everyone. If we have left anyone out, please let us know.
MARTHA: The chief architect of MARTHA was Prof. Paul Penfield. A number of other faculty and students added to the effort, and they are credited in the MARTHA User's Manual, 1973 Addendum. Doug White performed the mainframe to PC conversion, and converted the documentation to searchable PDFs.
LLAMA: A number of the original mainframe workspaces were created by David Hodsdon. Doug White was responsible for rescuing the code on the mainframe and getting it working smoothly on the PC. Doug also wrote the bulk of the PC plotting software, with help from Mark Stevens and others, who are mentioned in the LLAMA manual.
Permissions: MIT (including Lincoln Laboratory) has given permission to place the MARTHA and LLAMA software into the public domain. MIT Press has given permission to reproduce the original MARTHA manual, and the MIT Department of Electrical Engineering and Computer Science has done the same with the MARTHA User's Manual, 1973 Addendum. The U. S. Air Force, who sponsored the work at Lincoln Laboratory, has given permission to reproduce the LLAMA manual without restriction.
APL2000, Inc. (also known as APLNow LLC, and originally called Scientific Time Sharing Corporation, or STSC, and then known as Manugistics, and more recently operating as a division of Cognos) made the APLSE interpreter and the PLUSDEMO APL software available free of charge. They have also allowed us to use and distribute their APL fonts for use with the workspaces and for documentation purposes.