devel/lemon 3.34 FreeBSD
LALR(1) parser generator. Similar in function to yacc and bison
- System
- FreeBSD
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- License
- PD
- Categories
- devel
- Package size
- 46.7 KiB, 115.3 KiB installed
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 |
|---|---|---|
| FreeBSD | devel/lemon | 3.34 |
| NetBSD | devel/lemon | 1.0.3.53.4 |
| DragonFly | devel/lemon | 3.34 |
| MidnightBSD | devel/lemon | 3.34 |
| HardenedBSD | devel/lemon | 3.34 |
| GhostBSD | devel/lemon | 3.34 |
Install
Binary package:
pkg install lemon
From the ports tree:
cd /usr/ports/devel/lemon/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= lemon>0:devel/lemon
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 3.34 | 3.34 | 3.34 | 3.34 | 3.34 |
| FreeBSD:14:quarterly | 3.34 | 3.34 | n/a | 3.34 | 3.34 |
| FreeBSD:15:latest | 3.34 | 3.34 | n/a | 3.34 | 3.34 |
| FreeBSD:15:quarterly | 3.34 | 3.34 | n/a | n/a | n/a |
| FreeBSD:16:latest | 3.34 | 3.34 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependencies
The Makefile names none itself; they come from USES and USE_*.
The full lists below include those, and their dependencies in turn.
Required by 1
Configuration
No options to configure.
- USES
- tar:bzip2
- Service scripts
- none
Files
pkg-plist 2
- bin/lemon
- share/lemon/lempar.c
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/
Commit history 0
No commits in the history this site was built from.