-
Notifications
You must be signed in to change notification settings - Fork 36
Description
Submitting Author: Name (@eliotwrobson)
Package Name: automata
One-Line Description of Package: A Python library for simulating finite automata, pushdown automata, and Turing machines
Repository Link (if existing): https://github.com/caleb531/automata
Code of Conduct & Commitment to Maintain Package
- I agree to abide by pyOpenSci's Code of Conduct during the review process and in maintaining my package after should it be accepted.
- I have read and will commit to package maintenance after the review as per the pyOpenSci Policies Guidelines.
Description
- Include a brief paragraph describing what your package does:
Automata is a Python 3 library implementing structures and algorithms for manipulating finite automata, pushdown automata, and Turing machines. The algorithms have been optimized and are capable of processing large inputs. Visualization logic has also been implemented.
Community Partnerships
We partner with communities to support peer review with an additional layer of
checks that satisfy community requirements. If your package fits into an
existing community please check below:
- Pangeo
- My package adheres to the Pangeo standards listed in the pyOpenSci peer review guidebook
Scope
- Please indicate which category or categories this package falls under:
Scope
-
Please indicate which category or categories.
Check out our package scope page to learn more about our
scope. (If you are unsure of which category you fit, we suggest you make a pre-submission inquiry):- Data retrieval
- Data extraction
- Data processing/munging
- Data deposition
- Data validation and testing
- Data visualization
- Workflow automation
- Citation management and bibliometrics
- Scientific software wrappers
- Database interoperability
Domain Specific & Community Partnerships
- [ ] Geospatial
- [x] Education
- [ ] Pangeo
- [ ] Unsure/Other (explain below)
- Explain how and why the package falls under these categories (briefly, 1-2 sentences). Please note any areas you are unsure of:
The package falls under the data processing and visualization categories, as there are a number of algorithms for manipulating and visualizing automata implemented (where the automata themselves are the data being operated on). The package is also useful as an educational tool, as automata are a common topic in theoretical computer science courses (and, in fact, the package has already been cited in publications for this purpose).
- Who is the target audience and what are the scientific applications of this package?
This package is suitable for both researchers wishing to manipulate automata and for instructors teaching courses on theoretical computer science. Automata (especially finite automata) are important models in computing that appear in a variety of educational and research contexts, and the ability to manipulate them with this package is valuable to this effort.
- Are there other Python packages that accomplish similar things? If so, how does yours differ?
There are some smaller packages with similar scope (for example here), but automata is the most popular, best maintained, and most feature-rich.
- Any other questions or issues we should be aware of:
We've submitted the package to JOSS already and the review is in progress. Assuming automata is in-scope, we don't plan on submitting the package here until that review is completed.
P.S. Have feedback/comments about our review process? Leave a comment here
Metadata
Metadata
Assignees
Type
Projects
Status
Status