[#362083] Teaching Programming Languages (including Ruby) — Samuel Williams <space.ship.traveller@...>

Hello,

20 messages 2010/05/02

[#362098] Main working window for Ruby is DOS? — Kaye Ng <sbstn26@...>

I know nothing about programming and am not a techy person, so please

16 messages 2010/05/03

[#362116] School teacher still at it learning programming language — Hilary Bailey <my77elephants@...>

Now I while glimpsing at the beauty of Ruby, there is the software of

11 messages 2010/05/03

[#362166] Something I expected to work, but didn't! — Kurtis Rainbolt-greene <kurtisrainboltgreene@...>

irb(main):001:0> x = 2

11 messages 2010/05/04

[#362215] for-in vs. map closures — Mike Austin <mike_ekim@...>

I was experimenting with closures and JavaScript's and Ruby's

11 messages 2010/05/05

[#362286] ri on sqlite — Intransition <transfire@...>

What do others think of a creating a new ri tool which uses a SQLite

17 messages 2010/05/06

[#362341] ease of porting (translating) ruby to C (vs. python)? — bwv549 <jtprince@...>

In a very small bioinformatics group I know of, they are deciding

17 messages 2010/05/07

[#362375] Strings iteration — Viorel <viorelvladu@...>

I have some names like aaxxbbyy where xx is '01'..'10' and yy is also

14 messages 2010/05/08

[#362425] Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...>

Have apps moved over to the web (or GUI) totally ? Will there be any

21 messages 2010/05/10
[#362441] Re: Any future for curses applications/toolkits like rbcurse ? — botp <botpena@...> 2010/05/10

On Mon, May 10, 2010 at 2:13 PM, R. Kumar <sentinel.2001@gmx.com> wrote:

[#362448] Re: Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...> 2010/05/10

interface and/or the installation itself is terrible.

[#362458] Re: Any future for curses applications/toolkits like rbcurse ? — botp <botpena@...> 2010/05/10

On Mon, May 10, 2010 at 10:28 PM, R. Kumar <sentinel.2001@gmx.com> wrote:

[#362460] Re: Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...> 2010/05/10

botp wrote:

[#362463] Re: Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...> 2010/05/10

Strange. I cant push a gem even after yanking.

[#362452] Unit Test of method calling system() - how? — Martin Hansen <mail@...>

How can I unit test the two methods:

16 messages 2010/05/10

[#362498] In Ruby, can the coerce() method know what operator it is th — Jian Lin <blueskybreeze@...>

In Ruby, it seems that a lot of coerce() help can be done by

12 messages 2010/05/11
[#362546] Re: In Ruby, can the coerce() method know what operator it is th — Caleb Clausen <vikkous@...> 2010/05/11

On 5/10/10, Jian Lin <blueskybreeze@gmail.com> wrote:

[#362611] Re: In Ruby, can the coerce() method know what operator it is th — Colin Bartlett <colinb2r@...> 2010/05/12

On Tue, May 11, 2010 at 4:46 PM, Caleb Clausen <vikkous@gmail.com> wrote:

[#362657] Asynchronous HTTP request — Daniel DeLorme <dan-ml@...42.com>

Does anyone know how to do the following, but without threads, purely

28 messages 2010/05/13

[#362718] Range on strings. — Vikrant Chaudhary <nasa42@...>

Hi,

13 messages 2010/05/14

[#362787] class best way for getters ? — unbewusst.sein@... (Une B騅ue)

i have a class "HFSFile" initialized by a parsed string

12 messages 2010/05/15

[#362979] curl library? — Xeno Campanoli / Eskimo North and Gmail <xeno.campanoli@...>

Two questions:

14 messages 2010/05/18
[#362980] Re: curl library? — Xeno Campanoli / Eskimo North and Gmail <xeno.campanoli@...> 2010/05/18

On 10-05-18 02:35 PM, Xeno Campanoli / Eskimo North and Gmail wrote:

[#362982] Re: curl library? — Luis Parravicini <lparravi@...> 2010/05/18

On Tue, May 18, 2010 at 6:56 PM, Xeno Campanoli / Eskimo North and

[#362984] Re: curl library? — Xeno Campanoli / Eskimo North and Gmail <xeno.campanoli@...> 2010/05/18

Well, I got that -dev thing installed with apt-get, and then I tried again and

[#363027] Retrieve instance — Walle Wallen <walle.sthlm@...>

Quick question. Can I somehow retrieve the instance of the class Test in

11 messages 2010/05/19

[#363076] Scrape javascript content — Phil Mcdonnell <phil.a.mcdonnell@...>

I'm trying to scrape a page that hides some data behind a javascript

11 messages 2010/05/20

[#363115] OMG, why are there so many Strings in ObjectSpace! — timr <timrandg@...>

I was playing around looking at ObjectSpace in irb and was astounded

14 messages 2010/05/21

[#363225] Redefine a Class? — Mark T <paradisaeidae@...>

Currently this raises: superclass mismatch for class Soda (TypeError)

12 messages 2010/05/25

[#363240] Funny IO.select behaviour — Dennis Nedry <dennis@...>

I've been debugging my full screen console ruby editor.

13 messages 2010/05/25

[#363348] Ruby as Client Side Language in Web Browser (replacing JS) — "Simone R." <k5mmx@...>

Hi everybody,

17 messages 2010/05/27

[#363412] A better way to write this function? — Jason Lillywhite <jason.lillywhite@...>

Here is my attempt at Newton's second law in Ruby:

14 messages 2010/05/28

[#363417] Interrupting the evaluation of a ruby script — Emmanuel Emmanuel <emmanuel.bacry@...>

This is my problem :

12 messages 2010/05/28
[#363447] Re: Interrupting the evaluation of a ruby script — Branden Tanga <branden.tanga@...> 2010/05/28

Emmanuel Emmanuel wrote:

[#363483] Re: Interrupting the evaluation of a ruby script — Emmanuel Emmanuel <emmanuel.bacry@...> 2010/05/29

[#363426] A complete beginners question — Ant Walliams <anthonywainwright@...>

Hi there,

19 messages 2010/05/28

[#363432] Dynamic SVG with Ruby/Tk — Yotta Meter <spam@...>

The example I'm looking for in regards to ruby/SVG differs from the

14 messages 2010/05/28

[#363467] Date.today problem on linux with Ruby 1.8.6 — Jarmo Pertman <jarmo.p@...>

Hello.

10 messages 2010/05/29

[#363524] enumerator problem in 1.9.1 — Bug Free <amberarrow@...>

The following line:

19 messages 2010/05/31
[#363528] Re: enumerator problem in 1.9.1 — botp <botpena@...> 2010/05/31

On Mon, May 31, 2010 at 9:04 AM, Bug Free <amberarrow@yahoo.com> wrote:

[#363533] Re: enumerator problem in 1.9.1 — Robert Klemme <shortcutter@...> 2010/05/31

2010/5/31 botp <botpena@gmail.com>:

[ANN] antlr3 1.7.2 ( improved ANTLR v3 language recognition for Ruby )

From: Kyle <kcy5b@...>
Date: 2010-05-17 00:42:16 UTC
List: ruby-talk #362847
There have been a hand full of releases since I have posted an announcement 
here. Since then, I have implemented a simple ERB-based template output mode, 
in lieu of the StringTemplate-based template mode provided by ANTLR's Java and 
Python targets. I have also fixed several bugs, made a number of code tweaks, 
and authored a significant amount of usage and API documentation. Scroll on 
down for a catalog of significant changes since version 1.3.

Gem installation: gem install antlr3
Homepage:         http://antlr.ohboyohboyohboy.org
Rubygems.org:     http://rubygems.org/gems/antlr3
GitHub:           http://github.com/ohboyohboyohboy/antlr3


== About

Fully-featured ANTLR 3 parser generation for Ruby.

ANTLR (ANother Tool for Language Recognition) is a tool that is used to 
generate code for performing a variety of language recognition tasks: lexing, 
parsing, abstract syntax tree construction and manipulation, tree structure 
recognition, and input translation. The tool operates similarly to other 
parser generators, taking in a grammar specification written in the special 
ANTLR metalanguage and producing source code that implements the recognition 
functionality.

While the tool itself is implemented in Java, it has an extensible design that 
allows for code generation in other programming languages. To implement an 
ANTLR language target, a developer may supply a set of templates written in 
the StringTemplate (http://www.stringtemplate.org) language.

ANTLR is currently distributed with a fairly limited Ruby target 
implementation. While it does provide implementation for basic lexer and 
parser classes, the target does not provide any implementation for abstract 
syntax tree construction, tree parser class generation, input translation, or 
a number of the other ANTLR features that give the program an edge over 
traditional code generators.

This gem packages together a complete implementation of the majority of 
features ANTLR provides for other language targets, such as Java and Python. 
It contains:

* A customized version of the latest ANTLR program, bundling all necessary
  java code and templates for producing fully featured language recognition
  in ruby code

* a ruby run-time library that collects classes used throughout the code that
  ANTLR generates
  
* a wrapper script, `antlr4ruby', which executes the ANTLR command line tool
  after ensuring the ruby-tailored ANTLR jar is in java's class path


== Features

* powerful LALR lexer, parser, and tree-parser class generation
* rapid development with ANTLR features like LL(*) prediction,
  backtracking w/ memoization, and predicates
* ANTLR run-time library code that aims to be more intuitive and stylized for
  the conventions ruby developers are accustomed to
* integrated Abstract Syntax Tree (AST) construction, rewriting, and parsing
* an ERB-based template output mode to simplify source translation and 
  extraction
* built-in test driver code to quickly try out grammar output
* debug and profile modes to help develop and optimize grammars
* extra utilities such as DOT-based graph generation and tree building
  wizards to help with the development process

== History

=== 1.7.2 / 05-16-10

* Minor Enhancements
  - added new #hold convenience method to ANTLR3::CommonTokenStream

* Bug Fixes
  - corrected a typo in ANTLR3::Error#FailedPredicate which caused a
    NoMethodError to raise instead of FailedPredicate when semantic
    predicates failed

* Documentation
  - added more content to the ruby antlr3 guide
  - set up an official project website at
    http://antlr.ohboyohboyohboy.org

=== 1.7.0 / 04-20-10

* Minor Enhancements
  - added new #each_on_channel and #walk convenience methods to 
ANTLR3::CommonTokenStream

* Bug Fixes
  - discovered and fixed a rare but serious bug in the way the output code 
evaluates
    syntactic predicates

* Documentation
  - began developing a more thorough usage guide for the package
  - the guide is currently available on GitHub at
    http://ohboyohboyohboy.github.com/antlr3

=== 1.6.3 / 02-12-10

* 4 Minor Enhancements
  - added --help and --version options to antlr4ruby
  - documented the antlr4ruby source and added license information
  - prettied up the source code in all of the library files a little
  - added a hoe-based rakefile with the gem distribution of the source code

=== 1.6.0 / 01-27-10

* 4 Minor Enhancements to run-time library
  - CommonTokenStream and subclasses can now also accept another 
CommonTokenStream
    object, serving sort of as a copy constructor. This provides a reasonable 
way
    to cast a CommonTokenStream into a TokenRewriteStream and vice-versa
  - CommonTreeNodeStream can take an options hash at the end of any of its 
various
    signatures to provide values for attributes like token_stream
  - If a parser is created with a CharacterStream object (i.e., StringStream), 
it
    will also try to cast it by checking for an associated lexer (like it 
currently
    does when created with String or IO objects).
  - Template-output mode parsers have a new class method "load_templates( path 
)"
    which will attempt to load the template group file at +path+ and, if 
successful,
    set it to the parser's default template library. (See the CMinus example 
set for
    an example of how this can be used)

* 2 bug fixes / 1 change to templates
  - backtracking was broken in situations where recognition failed when
    a semantic predicate was encountered as the template code did not
    throw BacktrackingFailed when it was in backtracking mode instead of
    PredicateFailed
  - rule memoization also had a major bug in that rules that were memoized
    after failure did not throw BacktrackingFailed when it was needed
  - I changed `attribute scope' structures (not rule return scopes, but
    the groups of attributes you can assign to rules with the `scope' 
keyword),
    from being implemented as named constants in the class body to class
    variables belonging to the recognizer. As class variables do not need
    to follow naming conventions, this provides more freedom in naming without
    all of the ugly name mangling. These are generally used privately by 
parsers,
    so it shouldn't be too drastic of a change as to break end user's code.

=== 1.5.0 / 01-25-10

* 2 minor enhancements
  - Added BaseTree#walk, which iterates in a top-down fashion across all notes 
in a tree.
  - Added BaseTree#prune, which stops decent into the current node during 
BaseTree#walk.

* 1 optimization
  - changed `closure loops' ( uses of the `*' or `+' modifiers ) from using
    Kernel#loop to `while true ... end' style loops, which should be slightly
    faster

* new test code
  - test/functional/template-output/template-output.rb serves as a basic
    functional test implementation for the new template output mode

=== 1.4.0 / 01-17-10

* 1 major new feature
  - finished basic implementation of a template output mode.
  - lib/antlr3/template.rb defines a number of classes for
    ERB-based template output translation
  - templates/ST.stg defines the Ruby target templates to
    generate template output mode recognizers
    
* new test code
  - added template unit tests at test/unit/test-template.rb
  - test/functional/template-output/template-output.rb serves as a basic
    functional test implementation for the new template output mode


Best Regards,
  Kyle Yetter

In This Thread

Prev Next