- Add p5-Pegex 0.59

Pegex is an Acmeist parser framework. It allows you to easily create parsers
that will work equivalently in lots of programming languages! The inspiration
for Pegex comes from the parsing engine upon which the postmodern programming
language Perl 6 is based on. Pegex brings this beauty to the other justmodern
languages that have a normal regular expression engine available.

Pegex gets it name by combining Parsing Expression Grammars (PEG), with Regular
Expessions (Regex). That's actually what Pegex does.

PEG is the cool new way to elegantly specify recursive descent grammars. The
Perl 6 language is defined in terms of a self modifying PEG language called Perl
6 Rules. Regexes are familiar to programmers of most modern programming
languages. Pegex defines a simple PEG syntax, where all the terminals are
regexes. This means that Pegex can be quite fast and powerful.

Pegex attempts to be the simplest way to define new (or old) Domain Specific
Languages (DSLs) that need to be used in several programming languages and
environments. Things like JSON, YAML, Markdown etc. It also great for writing
parsers/compilers that only need to work in one language.

WWW: http://search.cpan.org/dist/Pegex/
This commit is contained in:
Sunpoet Po-Chuan Hsieh 2015-01-01 16:08:27 +00:00
parent f5955219ea
commit 9a22ab8b75
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=375935
5 changed files with 109 additions and 0 deletions

View file

@ -2635,6 +2635,7 @@
SUBDIR += p5-Path-Resource
SUBDIR += p5-Path-Tiny
SUBDIR += p5-PathTools
SUBDIR += p5-Pegex
SUBDIR += p5-Penguin
SUBDIR += p5-Perl-Critic-Deprecated
SUBDIR += p5-Perl-Metrics-Lite

25
devel/p5-Pegex/Makefile Normal file
View file

@ -0,0 +1,25 @@
# Created by: Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org>
# $FreeBSD$
PORTNAME= Pegex
PORTVERSION= 0.59
CATEGORIES= devel perl5
MASTER_SITES= CPAN
MASTER_SITE_SUBDIR= CPAN:INGY
PKGNAMEPREFIX= p5-
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= Acmeist PEG Parser Framework
LICENSE= ART10 GPLv1
LICENSE_COMB= dual
BUILD_DEPENDS= p5-JSON-XS>=0:${PORTSDIR}/converters/p5-JSON-XS \
p5-YAML-LibYAML>=0:${PORTSDIR}/textproc/p5-YAML-LibYAML
RUN_DEPENDS:= ${BUILD_DEPENDS}
BUILD_DEPENDS+= p5-File-ShareDir-Install>=0.06:${PORTSDIR}/devel/p5-File-ShareDir-Install
USE_PERL5= configure
USES= perl5
.include <bsd.port.mk>

2
devel/p5-Pegex/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (Pegex-0.59.tar.gz) = f6561f6884a0b7c54e7d41ad989c5732c788fed35f3bbb0b5c08c30456aa231e
SIZE (Pegex-0.59.tar.gz) = 149423

21
devel/p5-Pegex/pkg-descr Normal file
View file

@ -0,0 +1,21 @@
Pegex is an Acmeist parser framework. It allows you to easily create parsers
that will work equivalently in lots of programming languages! The inspiration
for Pegex comes from the parsing engine upon which the postmodern programming
language Perl 6 is based on. Pegex brings this beauty to the other justmodern
languages that have a normal regular expression engine available.
Pegex gets it name by combining Parsing Expression Grammars (PEG), with Regular
Expessions (Regex). That's actually what Pegex does.
PEG is the cool new way to elegantly specify recursive descent grammars. The
Perl 6 language is defined in terms of a self modifying PEG language called Perl
6 Rules. Regexes are familiar to programmers of most modern programming
languages. Pegex defines a simple PEG syntax, where all the terminals are
regexes. This means that Pegex can be quite fast and powerful.
Pegex attempts to be the simplest way to define new (or old) Domain Specific
Languages (DSLs) that need to be used in several programming languages and
environments. Things like JSON, YAML, Markdown etc. It also great for writing
parsers/compilers that only need to work in one language.
WWW: http://search.cpan.org/dist/Pegex/

60
devel/p5-Pegex/pkg-plist Normal file
View file

@ -0,0 +1,60 @@
%%SITE_PERL%%/Pegex.pm
%%SITE_PERL%%/Pegex.pod
%%SITE_PERL%%/Pegex/API.pod
%%SITE_PERL%%/Pegex/Base.pm
%%SITE_PERL%%/Pegex/Bootstrap.pm
%%SITE_PERL%%/Pegex/Bootstrap.pod
%%SITE_PERL%%/Pegex/Compiler.pm
%%SITE_PERL%%/Pegex/Compiler.pod
%%SITE_PERL%%/Pegex/Grammar.pm
%%SITE_PERL%%/Pegex/Grammar.pod
%%SITE_PERL%%/Pegex/Grammar/Atoms.pm
%%SITE_PERL%%/Pegex/Grammar/Atoms.pod
%%SITE_PERL%%/Pegex/Input.pm
%%SITE_PERL%%/Pegex/Input.pod
%%SITE_PERL%%/Pegex/Miscellany.pod
%%SITE_PERL%%/Pegex/Module.pm
%%SITE_PERL%%/Pegex/Module.pod
%%SITE_PERL%%/Pegex/Optimizer.pm
%%SITE_PERL%%/Pegex/Overview.pod
%%SITE_PERL%%/Pegex/Parser.pm
%%SITE_PERL%%/Pegex/Parser.pod
%%SITE_PERL%%/Pegex/Parser/Indent.pm
%%SITE_PERL%%/Pegex/Pegex/AST.pm
%%SITE_PERL%%/Pegex/Pegex/Grammar.pm
%%SITE_PERL%%/Pegex/Pegex/Grammar.pod
%%SITE_PERL%%/Pegex/Receiver.pm
%%SITE_PERL%%/Pegex/Receiver.pod
%%SITE_PERL%%/Pegex/Regex.pm
%%SITE_PERL%%/Pegex/Regex.pod
%%SITE_PERL%%/Pegex/Resources.pod
%%SITE_PERL%%/Pegex/Syntax.pod
%%SITE_PERL%%/Pegex/Tree.pm
%%SITE_PERL%%/Pegex/Tree.pod
%%SITE_PERL%%/Pegex/Tree/Wrap.pm
%%SITE_PERL%%/Pegex/Tree/Wrap.pod
%%SITE_PERL%%/Pegex/Tutorial.pod
%%SITE_PERL%%/Pegex/Tutorial/Calculator.pod
%%SITE_PERL%%/Pegex/Tutorial/JSON.pod
%%SITE_PERL%%/auto/share/dist/Pegex/pegex.pgx
%%PERL5_MAN3%%/Pegex.3.gz
%%PERL5_MAN3%%/Pegex::API.3.gz
%%PERL5_MAN3%%/Pegex::Bootstrap.3.gz
%%PERL5_MAN3%%/Pegex::Compiler.3.gz
%%PERL5_MAN3%%/Pegex::Grammar.3.gz
%%PERL5_MAN3%%/Pegex::Grammar::Atoms.3.gz
%%PERL5_MAN3%%/Pegex::Input.3.gz
%%PERL5_MAN3%%/Pegex::Miscellany.3.gz
%%PERL5_MAN3%%/Pegex::Module.3.gz
%%PERL5_MAN3%%/Pegex::Overview.3.gz
%%PERL5_MAN3%%/Pegex::Parser.3.gz
%%PERL5_MAN3%%/Pegex::Pegex::Grammar.3.gz
%%PERL5_MAN3%%/Pegex::Receiver.3.gz
%%PERL5_MAN3%%/Pegex::Regex.3.gz
%%PERL5_MAN3%%/Pegex::Resources.3.gz
%%PERL5_MAN3%%/Pegex::Syntax.3.gz
%%PERL5_MAN3%%/Pegex::Tree.3.gz
%%PERL5_MAN3%%/Pegex::Tree::Wrap.3.gz
%%PERL5_MAN3%%/Pegex::Tutorial.3.gz
%%PERL5_MAN3%%/Pegex::Tutorial::Calculator.3.gz
%%PERL5_MAN3%%/Pegex::Tutorial::JSON.3.gz