Skip to content

Latest commit

 

History

History
88 lines (64 loc) · 3.73 KB

License.md

File metadata and controls

88 lines (64 loc) · 3.73 KB

License Background

This license was derived by studying the JFLAP 7.0 license at http://www.jflap.org/jflaptmp/ created by Susan H. Rodger, Duke University. Since this author has used and learned a great deal from JFLAP, and the purpose of this software is similar (i.e., educate students about the topif of Automata and Computability), we felt the use of similar terms as befitting.

Jove, the software offered here, takes a different approach than JFLAP in that it aims to expose students to a ``Read/Eval/Print'' style of interaction within Jupyter notebooks. They also profit from reading the Jove source code -- another form of education not obtained by merely interacting with a piece of software.

Jove is described almost in its entirety in its README.md file

Jove License

Jove Version 1.0, draft begun February 18, 2018.

Jove was written by Ganesh Gopalakrishnan as part of his forthcoming book ``Automata and Computability: A Programmer's Perspective'' (hereafter abbreviated as ACPP).

Some of the example Turing machines used in Jove were written by Ian Briggs, University of Utah. The section on Lambda Calculus was written entirely by Ian Briggs, including the Python code. Jove also benefited from Michael Bentley and Heath French, University of Utah, who contributed to the use of Jupyter widgets, and also helped test the software.

Other acknowledgements, either for the ACPP book or the Jove software include: Prof. John Brzozowski, University of Waterloo, Canada (proof-reading the ACPP book and writing its Foreword), Dr. Ching-Tsun Chou, Intel Corporation, Santa Clara, CA (for trying out Jove), and students who took CS 3100 (Models of Computation) at the University of Utah during Fall 2017 (taught by Ganesh Gopalakrishnan).

Jove immensely benefits from PLY (Python's Lexer and Yacc) written by David Beazley. In fact, Jove introduces a markdown language for automata whose lexer and parser are written using PLY. Plans to upgrade to SLY (Beazley-authored successor to PLY) are in the works.

Jove also directly depends on the Jupyter notebook eco-system of software (jupyter.org) as its features are directly dependent on Jupyter.

License Terms

This software is provided ``as is'' and without any express or implied warranties, including, without limitation, the implied warranties of merchantibility and fitness for a particular purpose.

In addition,

  1. You are allowed distribute unmodified copies of Jove under the following two conditions:

    • You must include a copy of this license text.
    • You cannot charge a fee for any product that includes any part of Jove, in source or any other form.
  2. You are allowed to distribute modified copies of Jove under the following conditions:

    • You must include a copy of this license text.
    • You cannot charge a fee for any product that includes any part of your modified Jove, in source or other form.
    • If you made the changes yourself, you must clearly describe in the code or a README addition how to contact you.
    • When the maintainer asks you (in any way) for a copy of the modified Jove you distributed, you must make your changes, including source code, available to the maintainer without fee.
    • The maintainer reserves the right to include your changes in the official version of Jove.
    • The current maintainer is Ganesh Gopalakrishnan. If this changes, it will be announced at the official site of the ACPP book.
    • The official site of the book is bit.ly/Automata_Jove
  3. The name of the author of Jove may not be used to endorse or promote products derived from this software without specific prior written permission.

Contact Information

Ganesh Gopalakrishnan, Professor, School of Computing, University of Utah, Salt Lake City, UT 84112