aboutsummaryrefslogtreecommitdiffstats
path: root/devel/bison/pkg-descr
blob: c968b052baf721b6b0c1af383e16da34d2c399a2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Bison is a tool used to write parsers, such as the parser for GNU cc.
It is similar to Yacc, which is included in the base FreeBSD system.

The main difference between Bison and Yacc that I know of is that
Bison supports the @N construction, which gives you access to
the starting and ending line number and character number associated
with any of the symbols in the current rule.

Also, Bison supports the command `%expect N' which says not to mention
the conflicts if there are N shift/reduce conflicts and no reduce/reduce
conflicts.

The differences in the algorithms stem mainly from the horrible
kludges that Johnson had to perpetrate to make Yacc fit in a PDP-11.

Also, Bison uses a faster but less space-efficient encoding for the
parse tables (see Corbett's PhD thesis from Berkeley, "Static
Semantics in Compiler Error Recovery", June 1985, Report No. UCB/CSD
85/251), and more modern technique for generating the lookahead sets.
(See "Efficient Construction of LALR(1) Lookahead Sets" by F. DeRemer
and A. Pennello, in ACM TOPLS Vol 4 No 4, October 1982.  Their
technique is the standard one now.)
q' value=''/>
path: root/multimedia
Commit message (Expand)AuthorAgeFilesLines
* - Update to 0.4.20sunpoet2013-11-063-5/+5
* multimedia/gpac-libgpac: remove CR from pkg-plistwg2013-11-051-75/+75
* Support STAGEDIR.vanilla2013-11-0510-64/+57
* multimedia/vlc: fix seek error with OSSwg2013-11-052-1/+18
* multimedia/deforaos-player: update to 0.1.6wg2013-11-054-9/+42
* Deprecated, set an EXPIRATION_DATE of 2 months from now, because upstreamolivierd2013-11-041-0/+3
* Tentatively convert to USES=kmodrene2013-11-042-6/+7
* Finish stage conversion.kwm2013-11-042-8/+4
* Mark BROKEN, does not compile:rene2013-11-041-0/+2
* multimedia/vlc: enable OSSwg2013-11-032-8/+27
* multimedia/kmplayer-kde4: update to 0.11.3dwg2013-11-025-23/+38
* - Update to version 1.8.5pawel2013-11-024-32/+21
* Stagify Gstreamer ports.kwm2013-11-0255-149/+161
* Fix the build of audio/gstreamer1-plugins-modplug on 10.0+ by removingkwm2013-11-021-0/+11
* Fix dynamic plist creation when DOXYGEN=onpawel2013-11-022-3/+3
* - Fix build with clang on i386jhale2013-11-021-0/+11
* Update to 0.9.8.10.215feld2013-11-023-7/+4
* multimedia/ffmpeg: fix typo in port namewg2013-11-011-1/+1
* multimedia/gpac-libgpac: update to 0.5wg2013-11-0112-221/+304
* multimedia/ffmpeg: do not link to libs not selectedwg2013-11-011-2/+10
* multimedia/vlc: fix typo in MAD optionwg2013-10-311-1/+1
* Bump portrevision after r332194 and r331197 where librtmp was split offkwm2013-10-311-1/+1
* Fix pathname in files/patch-*.hrs2013-10-312-4/+4
* s/rtmpdump/librtmp/hrs2013-10-311-1/+1
* - Split the library part of multimedia/rtmpdump into multimedia/librtmp.hrs2013-10-31