https://github.com/apertium/lexd
A lexicon compiler for non-suffixational morphologies
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.1%) to scientific vocabulary
Keywords
apertium-core
apertium-tools
Keywords from Contributors
apertium-languages
Last synced: 11 months ago
·
JSON representation
Repository
A lexicon compiler for non-suffixational morphologies
Basic Info
Statistics
- Stars: 13
- Watchers: 6
- Forks: 3
- Open Issues: 5
- Releases: 4
Topics
apertium-core
apertium-tools
Created almost 7 years ago
· Last pushed 11 months ago
Metadata Files
Readme
Changelog
License
Authors
README
# Lexd A lexicon compiler specialising in non-suffixational morphologies. This module compiles lexicons in a format loosely based on hfst-lexc and produces transducers in ATT format which are equivalent to those produced using the overgenerate-and-constrain approach with hfst-twolc (see [here](https://wiki.apertium.org/wiki/Morphotactic_constraints_with_twol) and [here](https://wiki.apertium.org/wiki/Replacement_for_flag_diacritics)). However, it is much faster (see below). See [Usage.md](Usage.md) for the rule file syntax. ## Installation First, clone this repository. To build, do ```bash ./autogen.sh make make install ``` If installing to a system-wide path, you may want to run `sudo make install` instead for the last step. To compile a lexicon file into a transducer, do ```bash lexd lexicon_file att_file ``` To get a speed comparison, do ```bash make timing-test ``` To run basic feature smoke-tests (fast), do ```bash make check ``` ## Why is it faster? When dealing with prefixes, the overgenerate-and-constrain approach initially builds a transducer like this:  Then composes that with a twolc rule to turn it into somehting like this:  But compiling the rule needed to do that can take hundreds of times longer than compiling the lexicon. Lexd, meanwhile, makes multiple copies of the lexical portion and attaches one to each prefix, thus generating the second transducer directly in a similar amount of time to what is required to generate the first one. | Language | Wamesa | Hebrew | Navajo | Lingala | |---|---:|---:|---:|---:| | Stems | 262 | 127 | 19 | 1470 | Total forms | 12576 | 2540 | 473 | 1649496 | Path restrictions | 14 | 10 | 17 | 19 | **Lexc + Twolc** | Lexc compilation | 25ms | 15ms | 25ms | 230ms | Twolc compilation | 10245ms | 1360ms | 8460ms | 275525ms | Rule composition | 2050ms | 225ms | 1705ms | 45550ms | Minimization | 65ms | 5ms | 20ms | 155ms | | Total time | 12385ms | 1605ms | 10210ms | 321460ms | | **Lexd** | Lexd compilation | 210ms | 85ms | 10ms | 490ms | | Format conversion | 30ms | 5ms | 5ms | 55ms | | Total time | 240ms | 90ms | 15ms | 545ms | | **Speedup** | 52x | 18x | 681x | 590x |
Owner
- Name: Apertium
- Login: apertium
- Kind: organization
- Email: apertium-contact@lists.sourceforge.net
- Website: https://wiki.apertium.org/
- Repositories: 630
- Profile: https://github.com/apertium
Free/open-source platform for developing rule-based machine translation systems and language technology
GitHub Events
Total
- Issues event: 7
- Watch event: 2
- Issue comment event: 7
- Push event: 2
- Fork event: 1
- Create event: 1
Last Year
- Issues event: 7
- Watch event: 2
- Issue comment event: 7
- Push event: 2
- Fork event: 1
- Create event: 1
Committers
Last synced: 12 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Nick Howell | n****l@g****m | 81 |
| Daniel Swanson | p****e@g****m | 79 |
| Tino Didriksen | m****l@t****m | 12 |
| jonorthwash | j****n@g****m | 3 |
| Ahmed Siam | 9****0 | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 24
- Total pull requests: 9
- Average time to close issues: 5 months
- Average time to close pull requests: 2 days
- Total issue authors: 8
- Total pull request authors: 2
- Average comments per issue: 1.58
- Average comments per pull request: 0.22
- Merged pull requests: 6
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 4
- Pull requests: 0
- Average time to close issues: about 2 hours
- Average time to close pull requests: N/A
- Issue authors: 3
- Pull request authors: 0
- Average comments per issue: 0.75
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- mr-martian (7)
- reynoldsnlp (4)
- jonorthwash (3)
- TinoDidriksen (3)
- agricolamz (3)
- ApertiumBot (2)
- nlhowell (1)
- Affenmilchmann (1)
Pull Request Authors
- mr-martian (7)
- ahmedsiam0 (2)
Top Labels
Issue Labels
bug (3)
enhancement (2)
Pull Request Labels
Dependencies
.github/workflows/build.yaml
actions
- actions/checkout v3 composite