summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--textproc/ruby-treetop/DESCR18
-rw-r--r--textproc/ruby-treetop/Makefile16
-rw-r--r--textproc/ruby-treetop/PLIST116
-rw-r--r--textproc/ruby-treetop/distinfo5
4 files changed, 155 insertions, 0 deletions
diff --git a/textproc/ruby-treetop/DESCR b/textproc/ruby-treetop/DESCR
new file mode 100644
index 00000000000..eeee4e1a62d
--- /dev/null
+++ b/textproc/ruby-treetop/DESCR
@@ -0,0 +1,18 @@
+Languages can be split into two components, their *syntax* and their
+*semantics*. It's your understanding of English syntax that tells you
+the stream of words "Sleep furiously green ideas colorless" is not a
+valid sentence. Semantics is deeper. Even if we rearrange the above
+sentence to be "Colorless green ideas sleep furiously", which is
+syntactically correct, it remains nonsensical on a semantic
+level. With Treetop, you'll be dealing with languages that are much
+simpler than English, but these basic concepts apply. Your programs
+will need to address both the syntax and the semantics of the
+languages they interpret.
+
+Treetop equips you with powerful tools for each of these two aspects
+of interpreter writing. You'll describe the syntax of your language
+with a *parsing expression grammar*. From this description, Treetop
+will generate a Ruby parser that transforms streams of characters
+written into your language into *abstract syntax trees* representing
+their structure. You'll then describe the semantics of your language
+in Ruby by defining methods on the syntax trees the parser generates.
diff --git a/textproc/ruby-treetop/Makefile b/textproc/ruby-treetop/Makefile
new file mode 100644
index 00000000000..3ef3e0e71da
--- /dev/null
+++ b/textproc/ruby-treetop/Makefile
@@ -0,0 +1,16 @@
+# $NetBSD: Makefile,v 1.1.1.1 2010/09/12 01:53:43 taca Exp $
+
+DISTNAME= treetop-1.4.8
+CATEGORIES= textproc
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://www.rubyonrails.org/
+COMMENT= Ruby-based text parsing and interpretation DSL
+LICENSE= mit
+
+DEPENDS+= ${RUBY_PKGPREFIX}-polyglot>=0.3.1:../../devel/ruby-polyglot
+
+CONFLICTS= ruby[1-9][0-9]-treetop-[0-9]*
+
+.include "../../lang/ruby/gem.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/textproc/ruby-treetop/PLIST b/textproc/ruby-treetop/PLIST
new file mode 100644
index 00000000000..3c84fb1de5d
--- /dev/null
+++ b/textproc/ruby-treetop/PLIST
@@ -0,0 +1,116 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2010/09/12 01:53:43 taca Exp $
+bin/tt
+${GEM_HOME}/cache/${GEM_NAME}.gem
+${GEM_LIBDIR}/LICENSE
+${GEM_LIBDIR}/README.md
+${GEM_LIBDIR}/Rakefile
+${GEM_LIBDIR}/bin/tt
+${GEM_LIBDIR}/doc/contributing_and_planned_features.markdown
+${GEM_LIBDIR}/doc/grammar_composition.markdown
+${GEM_LIBDIR}/doc/index.markdown
+${GEM_LIBDIR}/doc/pitfalls_and_advanced_techniques.markdown
+${GEM_LIBDIR}/doc/semantic_interpretation.markdown
+${GEM_LIBDIR}/doc/site.rb
+${GEM_LIBDIR}/doc/sitegen.rb
+${GEM_LIBDIR}/doc/syntactic_recognition.markdown
+${GEM_LIBDIR}/doc/using_in_ruby.markdown
+${GEM_LIBDIR}/examples/lambda_calculus/arithmetic.rb
+${GEM_LIBDIR}/examples/lambda_calculus/arithmetic.treetop
+${GEM_LIBDIR}/examples/lambda_calculus/arithmetic_node_classes.rb
+${GEM_LIBDIR}/examples/lambda_calculus/arithmetic_test.rb
+${GEM_LIBDIR}/examples/lambda_calculus/lambda_calculus
+${GEM_LIBDIR}/examples/lambda_calculus/lambda_calculus.rb
+${GEM_LIBDIR}/examples/lambda_calculus/lambda_calculus.treetop
+${GEM_LIBDIR}/examples/lambda_calculus/lambda_calculus_node_classes.rb
+${GEM_LIBDIR}/examples/lambda_calculus/lambda_calculus_test.rb
+${GEM_LIBDIR}/examples/lambda_calculus/test_helper.rb
+${GEM_LIBDIR}/lib/treetop.rb
+${GEM_LIBDIR}/lib/treetop/bootstrap_gen_1_metagrammar.rb
+${GEM_LIBDIR}/lib/treetop/compiler.rb
+${GEM_LIBDIR}/lib/treetop/compiler/grammar_compiler.rb
+${GEM_LIBDIR}/lib/treetop/compiler/lexical_address_space.rb
+${GEM_LIBDIR}/lib/treetop/compiler/metagrammar.rb
+${GEM_LIBDIR}/lib/treetop/compiler/metagrammar.treetop
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/anything_symbol.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/atomic_expression.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/character_class.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/choice.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/declaration_sequence.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/grammar.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/inline_module.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/nonterminal.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/optional.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/parenthesized_expression.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/parsing_expression.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/parsing_rule.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/predicate.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/predicate_block.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/repetition.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/sequence.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/terminal.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/transient_prefix.rb
+${GEM_LIBDIR}/lib/treetop/compiler/node_classes/treetop_file.rb
+${GEM_LIBDIR}/lib/treetop/compiler/ruby_builder.rb
+${GEM_LIBDIR}/lib/treetop/polyglot.rb
+${GEM_LIBDIR}/lib/treetop/ruby_extensions.rb
+${GEM_LIBDIR}/lib/treetop/ruby_extensions/string.rb
+${GEM_LIBDIR}/lib/treetop/runtime.rb
+${GEM_LIBDIR}/lib/treetop/runtime/compiled_parser.rb
+${GEM_LIBDIR}/lib/treetop/runtime/interval_skip_list.rb
+${GEM_LIBDIR}/lib/treetop/runtime/interval_skip_list/head_node.rb
+${GEM_LIBDIR}/lib/treetop/runtime/interval_skip_list/interval_skip_list.rb
+${GEM_LIBDIR}/lib/treetop/runtime/interval_skip_list/node.rb
+${GEM_LIBDIR}/lib/treetop/runtime/syntax_node.rb
+${GEM_LIBDIR}/lib/treetop/runtime/terminal_parse_failure.rb
+${GEM_LIBDIR}/lib/treetop/runtime/terminal_parse_failure_debug.rb
+${GEM_LIBDIR}/lib/treetop/runtime/terminal_syntax_node.rb
+${GEM_LIBDIR}/lib/treetop/version.rb
+${GEM_LIBDIR}/spec/compiler/and_predicate_spec.rb
+${GEM_LIBDIR}/spec/compiler/anything_symbol_spec.rb
+${GEM_LIBDIR}/spec/compiler/character_class_spec.rb
+${GEM_LIBDIR}/spec/compiler/choice_spec.rb
+${GEM_LIBDIR}/spec/compiler/circular_compilation_spec.rb
+${GEM_LIBDIR}/spec/compiler/failure_propagation_functional_spec.rb
+${GEM_LIBDIR}/spec/compiler/grammar_compiler_spec.rb
+${GEM_LIBDIR}/spec/compiler/grammar_spec.rb
+${GEM_LIBDIR}/spec/compiler/multibyte_chars_spec.rb
+${GEM_LIBDIR}/spec/compiler/nonterminal_symbol_spec.rb
+${GEM_LIBDIR}/spec/compiler/not_predicate_spec.rb
+${GEM_LIBDIR}/spec/compiler/occurrence_range_spec.rb
+${GEM_LIBDIR}/spec/compiler/one_or_more_spec.rb
+${GEM_LIBDIR}/spec/compiler/optional_spec.rb
+${GEM_LIBDIR}/spec/compiler/parenthesized_expression_spec.rb
+${GEM_LIBDIR}/spec/compiler/parsing_rule_spec.rb
+${GEM_LIBDIR}/spec/compiler/repeated_subrule_spec.rb
+${GEM_LIBDIR}/spec/compiler/semantic_predicate_spec.rb
+${GEM_LIBDIR}/spec/compiler/sequence_spec.rb
+${GEM_LIBDIR}/spec/compiler/terminal_spec.rb
+${GEM_LIBDIR}/spec/compiler/terminal_symbol_spec.rb
+${GEM_LIBDIR}/spec/compiler/test_grammar.treetop
+${GEM_LIBDIR}/spec/compiler/test_grammar.tt
+${GEM_LIBDIR}/spec/compiler/test_grammar_do.treetop
+${GEM_LIBDIR}/spec/compiler/tt_compiler_spec.rb
+${GEM_LIBDIR}/spec/compiler/zero_or_more_spec.rb
+${GEM_LIBDIR}/spec/composition/a.treetop
+${GEM_LIBDIR}/spec/composition/b.treetop
+${GEM_LIBDIR}/spec/composition/c.treetop
+${GEM_LIBDIR}/spec/composition/d.treetop
+${GEM_LIBDIR}/spec/composition/f.treetop
+${GEM_LIBDIR}/spec/composition/grammar_composition_spec.rb
+${GEM_LIBDIR}/spec/composition/subfolder/e_includes_c.treetop
+${GEM_LIBDIR}/spec/ruby_extensions/string_spec.rb
+${GEM_LIBDIR}/spec/runtime/compiled_parser_spec.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/delete_spec.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/expire_range_spec.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/insert_and_delete_node.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/insert_spec.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/interval_skip_list_spec.graffle
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/interval_skip_list_spec.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/palindromic_fixture.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/palindromic_fixture_spec.rb
+${GEM_LIBDIR}/spec/runtime/interval_skip_list/spec_helper.rb
+${GEM_LIBDIR}/spec/runtime/syntax_node_spec.rb
+${GEM_LIBDIR}/spec/spec_helper.rb
+${GEM_LIBDIR}/treetop.gemspec
+${GEM_HOME}/specifications/${GEM_NAME}.gemspec
diff --git a/textproc/ruby-treetop/distinfo b/textproc/ruby-treetop/distinfo
new file mode 100644
index 00000000000..0f72c41f30f
--- /dev/null
+++ b/textproc/ruby-treetop/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2010/09/12 01:53:43 taca Exp $
+
+SHA1 (treetop-1.4.8.gem) = b107eca5e06736db93a92536fde33bdbfdbc01a5
+RMD160 (treetop-1.4.8.gem) = 2760c0b944ab4676922a6c4ce09698ed2243cb17
+Size (treetop-1.4.8.gem) = 69632 bytes