Science Score: 44.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
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.9%) to scientific vocabulary
Last synced: 9 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: lmntal
  • License: mit
  • Language: Rust
  • Default Branch: main
  • Size: 318 KB
Statistics
  • Stars: 2
  • Watchers: 11
  • Forks: 0
  • Open Issues: 6
  • Releases: 0
Created over 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License Citation

README.md

LMNtalc

LMNtal compiler written in Rust (WIP).

Installation

Install from crates.io

sh cargo install lmntalc

Install from source

sh git clone https://github.com/lmntal/lmntalc.git cd lmntalc cargo install --path .

Usage

sh lmntalc <input-file>

or

sh lmntalc -t <target-language> <input-file>

Then, the compiled code will be written to the file with the same name as the input file, but with the extension of the target language. To specify the output file, use -o option.

sh lmntalc -t <target-language> -o <output-file> <input-file>

For more information, use lmntalc --help.

Features

  • Full support of parsing HyperLMNtal.
  • Simple static analysis on parse tree level.
  • Support of compiling Flat HyperLMNtal to target languages.

Target Languages

  • C++ 20
  • Java 17
  • Python 3.11

Behavioral Difference from lmntal-compiler

Expression

a + b is the same with '+'(a, b) in lmntal-compiler, but they are different in LMNtalc.

Known Issues

  • Rules in membranes in top level rule is not supported. i.e. Cannot generate membranes with rules.

License

This software is released under the MIT License, see LICENSE.

Owner

  • Name: lmntal
  • Login: lmntal
  • Kind: organization
  • Email: lmntal@ueda.info.waseda.ac.jp

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: lmntalc
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Qirui
    family-names: Wang
    email: wang@ueda.info.waseda.ac.jp
    affiliation: 'Ueda Lab., Waseda University'
    orcid: 'https://orcid.org/0009-0008-5140-5610'
repository-code: 'https://github.com/lmntal/lmntalc'
repository-artifact: 'https://crates.io/crates/lmntalc'
keywords:
  - lmntal
  - compiler
license: MIT
commit: b9711a559192263eb03b24c65a32d7c72b633227
version: 0.9.3
date-released: '2024-01-18'

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: about 2 years ago

All Time
  • Total issues: 6
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 6
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • QRWells (5)
Pull Request Authors
Top Labels
Issue Labels
enhancement (3) documentation (1)
Pull Request Labels

Dependencies

Cargo.lock cargo
  • anstream 0.6.7
  • anstyle 1.0.4
  • anstyle-parse 0.2.3
  • anstyle-query 1.0.2
  • anstyle-wincon 3.0.2
  • ariadne 0.4.0
  • bitflags 1.3.2
  • bitflags 2.4.1
  • clap 4.4.17
  • clap_builder 4.4.17
  • clap_derive 4.4.7
  • clap_lex 0.6.0
  • colorchoice 1.0.0
  • concolor 0.1.1
  • concolor-query 0.3.3
  • equivalent 1.0.1
  • errno 0.3.8
  • fixedbitset 0.4.2
  • hashbrown 0.14.3
  • heck 0.4.1
  • hermit-abi 0.3.3
  • indexmap 2.1.0
  • is-terminal 0.4.10
  • itoa 1.0.10
  • libc 0.2.152
  • linux-raw-sys 0.4.12
  • once_cell 1.19.0
  • owo-colors 4.0.0
  • petgraph 0.6.4
  • proc-macro2 1.0.76
  • quote 1.0.35
  • rustix 0.38.30
  • ryu 1.0.16
  • serde 1.0.195
  • serde_derive 1.0.195
  • serde_json 1.0.111
  • strsim 0.10.0
  • syn 2.0.48
  • termtree 0.4.1
  • unicode-ident 1.0.12
  • unicode-width 0.1.11
  • utf8parse 0.2.1
  • windows-sys 0.45.0
  • windows-sys 0.52.0
  • windows-targets 0.42.2
  • windows-targets 0.52.0
  • windows_aarch64_gnullvm 0.42.2
  • windows_aarch64_gnullvm 0.52.0
  • windows_aarch64_msvc 0.42.2
  • windows_aarch64_msvc 0.52.0
  • windows_i686_gnu 0.42.2
  • windows_i686_gnu 0.52.0
  • windows_i686_msvc 0.42.2
  • windows_i686_msvc 0.52.0
  • windows_x86_64_gnu 0.42.2
  • windows_x86_64_gnu 0.52.0
  • windows_x86_64_gnullvm 0.42.2
  • windows_x86_64_gnullvm 0.52.0
  • windows_x86_64_msvc 0.42.2
  • windows_x86_64_msvc 0.52.0
  • yansi 0.5.1
Cargo.toml cargo