devel/lemon 3.34 MidnightBSD
LALR(1) parser generator. Similar in function to yacc and bison
- System
- MidnightBSD
- Repository
- mports
- Maintainer
- [email protected]
- License
- publicdom
- Categories
- devel
Description
The Lemon program is an LALR(1) parser generator. It takes a context free grammar and converts it into a subroutine that will parse a file using that grammar.
Lemon is similar to much more famous programs Yacc and Bison. But lemon is not compatible with either of them; there are several important differences:
-
Lemon using a different grammar syntax which is less prone to programming errors
-
Lemon generates a parser that is faster than Yacc or Bison parsers (according to the author)
-
The parser generated by Lemon is both re-entrant and thread-safe
-
Lemon includes the concept of a non-terminal destructor, which makes it much easier to write a parser that does not leak memory
In the other systems
| System | Port | Version |
|---|---|---|
| MidnightBSD | devel/lemon | 3.34 |
| FreeBSD | devel/lemon | 3.34 |
| NetBSD | devel/lemon | 1.0.3.53.4 |
| DragonFly | devel/lemon | 3.34 |
| HardenedBSD | devel/lemon | 3.34 |
| GhostBSD | devel/lemon | 3.34 |
Install
Binary package:
mport install lemon
From mports:
cd /usr/mports/devel/lemon && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= lemon>0:devel/lemon
Dependencies
Required by 1
Configuration
No options to configure.
- USES
- tar:bzip2
- Service scripts
- none
Files
pkg-plist 3
- bin/lemon
- share/lemon/lempar.c
- @dirrm share/lemon
distinfo 1
| File | Size | SHA256 |
|---|---|---|
| lemon-3.34.tar.bz2 | 44876 | 5a786739d4f9e858fa2ba38dec49a7d0fa5b93142961e1117d2cf8a3762c2ae4 |
Master sites 2
- http://tx97.net/pub/distfiles/
- https://bsdforge.com/projects/source/devel/lemon/