Science Score: 57.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.9%) to scientific vocabulary
Keywords
Repository
Language bindings for Maude
Basic Info
- Host: GitHub
- Owner: fadoss
- License: gpl-2.0
- Language: SWIG
- Default Branch: master
- Homepage: https://fadoss.github.io/maude-bindings
- Size: 444 KB
Statistics
- Stars: 23
- Watchers: 4
- Forks: 1
- Open Issues: 0
- Releases: 19
Topics
Metadata Files
README.md
Language bindings for Maude
Language bindings for the Maude specification language using SWIG. They make use of a modified version of Maude extended with a model checker for system controlled by strategies, which is also accessible through the bindings.
The Python package is available at PyPI. After installing it using pip install maude, it can be directly used since Maude is embedded in the package:
python
import maude
maude.init()
nat = maude.getModule('NAT')
t = nat.parseTerm('1 + 2')
t.reduce()
print(t)
Bindings for other languages supported by SWIG can be built from this repository, but they have not been given specific support and testing. Specific instructions for some of them are available here.
Building
This repository includes the extended version of Maude as a submodule, which has to be cloned first with git submodule update --init or an equivalent Git command. To build the Python package, scikit-build-core is used through any of the standard commands:
python -m build # or
pip wheel .
This will cause Maude to be built in the subprojects directory, for which the Meson build system, Ninja, and various external libraries and tools are required, as described in its repository. Alternatively, compiled versions of Maude as a library can be downloaded from its releases section and placed in their expected locations:
* subprojects/maudesmc/installdir/lib for the libraries, and
* subprojects/maudesmc/build for the config.h header file.
In this case or when building Maude directly from its subdirectory, CMAKE_ARGS="-DBUILD_LIBMAUDE=OFF" should be added before the previous command.
Bindings for other languages can also be built using CMake directly, where srcdir is the directory where the repository has been cloned, and language is one of the languages supported by SWIG:
cmake <srcdir> -DLANGUAGE=<language>
cmake --build .
For some language targets this will be enough, but additional steps could be expected for others.
Documentation
Documentation for the Python package is available here, which can be largely extrapolated to other target languages. Javadoc-generated documentation is also available. In addition to these, the examples in the repository can be used as a reference for various topics:
- Loading files, parsing terms, reducing, rewriting, rewriting with strategies, and searching in
test.py. - Matching in
match.py. - Applying rules selectively in
apply.py. - Unification in
unify.py. - Manipulating the rewrite graph in
graph.py. - Model checking in
modelcheck.py. - Narrowing in
vunarrow.py. - Variant generation in
variants.py. - Iterating over the arguments of a term in
gui.py. - Building terms from symbols in
buildTerm.py. - Inspecting modules in
maudedoc.py. - Loading files and input raw text in
loading.py. - Metalevel manipulations in
metalevel.py. - Custom special operators in
hooks.py.
Moreover, a tutorial on the library is available in the article Maude as a library: an efficient all-purpose programming interface, along with a description of its design and implementation.
Owner
- Name: FADoSS
- Login: fadoss
- Kind: organization
- Location: Madrid
- Website: https://maude.ucm.es/fadoss
- Repositories: 5
- Profile: https://github.com/fadoss
Formal Analysis and Design of Software Systems group (Universidad Complutense de Madrid)
Citation (CITATION.cff)
cff-version: 1.2.0
message: If you use this software, please cite it as below.
authors:
- family-names: Rubio
given-names: Rubén
orcid: https://orcid.org/0000-0003-2983-3404
title: Language bindings for Maude
version: 1.2.0
date-released: 2022-08-10
url: https://github.com/fadoss/maude-bindings
preferred-citation:
type: conference-paper
doi: 10.1007/978-3-031-12441-9_14
authors:
- family-names: Rubio
given-names: Rubén
orcid: https://orcid.org/0000-0003-2983-3404
title: "Maude as a Library: An Efficient All-Purpose Programming Interface"
conference:
name: 14th International Workshop on Rewriting Logic and Applications (WRLA) 2022
date-end: 2022-04-03
year: 2022
month: 7
start: 274
end: 294
volume: 13252
collection-title: Lecture Notes in Computer Science
publisher:
name: Springer
GitHub Events
Total
- Release event: 1
- Watch event: 6
- Push event: 2
- Fork event: 1
- Create event: 1
Last Year
- Release event: 1
- Watch event: 6
- Push event: 2
- Fork event: 1
- Create event: 1
Issues and Pull Requests
Last synced: 9 months ago
All Time
- Total issues: 6
- Total pull requests: 0
- Average time to close issues: about 2 months
- Average time to close pull requests: N/A
- Total issue authors: 6
- Total pull request authors: 0
- Average comments per issue: 4.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- jkhourybbn (1)
- ozan-k (1)
- canary00 (1)
- UberPyro (1)
- canary01 (1)
- DanieleMarchei (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 694 last-month
- Total dependent packages: 1
- Total dependent repositories: 2
- Total versions: 17
- Total maintainers: 1
pypi.org: maude
Python bindings for Maude
- Homepage: https://github.com/fadoss/maude-bindings
- Documentation: https://fadoss.github.io/maude-bindings
- License: GPLv2
-
Latest release: 1.5.0
published about 1 year ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v2 composite
- actions/setup-python v1 composite
- softprops/action-gh-release v1 composite