From: David Botton <David@Botton.com>
Subject: Re: Announcement: OpenToken 1.1 released
Date: 1999/05/20
Date: 1999-05-20T18:47:53+00:00 [thread overview]
Message-ID: <374458DD.F359A052@Botton.com> (raw)
In-Reply-To: 37444A4F.20183EE3@telepath.com
I added a link to your project on the Ada Lab at:
http://www.adapower.com/lab
You may consider creating a collaboration page in the lab if you get
other people involved in expanding your project.
David Botton
Ted Dennison wrote:
>
> Version 1.1 of the OpenToken package has been released. It is available
> at http://www.telepath.com/dennison/Ted/OpenToken/OpenToken.html . It is
> also available from links on my homepage and AdaPower.
>
> The new features are:
>
> * A default text feeder function that can be redirected to whatever
> file you want via Text_IO.
> * A user's guide with a tutorial.
> * An example program implementing the syntax in the Aho/Sethi/Ullman
> Compilers book's (aka: "The Dragon Book") example 3.6.
>
> Relevant portions of the Readme file are attached below:
> -----------------------------------------
> OpenToken Package Readme
>
> Version 1.1
>
> The OpenToken package is a facility for performing token analysis within
> the Ada language. It is designed to provide
> all the functionality of a traditional lexical analyzer generator, such
> as lex. But due to the magic of inheritance and
> runtime polymorphism it is implemented entirely in Ada as withed-in
> code. No precompilation step is required, and
> no messy tool-generated source code is created.
>
> Additionally, the technique of using classes of recognizers promises to
> make most token specifications as simple as
> making an easy to read procedure call. The most error prone part of
> generating analyzers, the token pattern
> matching, has been taken from the typical user's hands and placed into
> reusable classes. Over time I hope to see the
> addition of enough reusable recognizer classes that very few users will
> ever need to write a custom one.
>
> Ada's type safety features should also make misbehaving analyzers easier
> to debug. All this will hopefully add up to
> token analyzers that are much simpler and faster to create, easier to
> get working properly, and easier to understand.
>
> History
>
> Version 1.1
>
> The main code change to this version is a default text feeder function
> that has been added to the analyzer. It reads its
> input from Ada.Text_IO.Current_Input, so you can change the file to
> whatever you want fairly easily. The capability
> to create and use your own feeder function still exists, but it should
> not be nessecary in most cases. If you already
> have code that does this, it should still compile and work properly.
>
> The other addition is the first version of the OpenToken user's guide.
> All it contains right now is a user manual
> walking through the steps needed to make a simple token analyzer.
> Feedback and/or ideas on this are welcome.
>
> Version 1.0
>
> This is the very first publicly released version. This package is based
> on work I did while working on the JPATS
> trainer for FlightSafety International. The germ of this idea came while
> I was trying to port a fairly ambitious, but
> fatally buggy Ada 83 token recognition package written for a previous
> simulator. But once I was done, I was rather
> suprised at the flexibility of the final product. Seeing the possible
> benefit to the community, and to the company
> through user-submitted enhancement and debugging, I suggested that this
> code be released as Open Source. They
> were open-minded enough to agree. Bravo!
>
> Future
>
> I do plan on actively maintaining this package. How actively depends on
> user submissions, my own schedule, and
> what pans out for my studies. I am proposing to do my master's thesis on
> this, but they seem to think it "isn't enough",
> even with the proposed parsing facility added. I'll admit developing a
> parser generator in inlined code using OO
> technology to do what used to have to be done with a precompiler doesn't
> seem to be an amazingly clever idea in
> hindsight, but as near as I can tell this facility is unique. It
> certainly should be enough work. We will see what
> happens.
>
> Things I would like to add soon:
>
> A string literal recognizer
>
> Things on my plate for later:
>
> Look into changing the feeder function into a stream reference. I
> was unfamiliar with streams when I wrote this
> package. It looks like they would make several things much easier
> to deal with, but the devil's always in the
> details...
> More recognizers
> The Biggie: A parsing facility in the same vein as this token
> analysis facility!
>
> Things you can help with:
>
> More recognizers - The more of these there are, the more useful
> this facility is. If you make 'em, please send
> 'em in!
> Well isolated bug reports (or even fixes). Version 1.0 has been
> fairly thoroughly wrung out already, but that
> doesn't mean you won't find any problems.
>
> Again, I hope you find this package useful for your needs.
> --------------------
> --
> T.E.D.
>
> Home - mailto:dennison@telepath.net Work - mailto:dennison@ssd.fsi.com
> WWW - http://www.telepath.com/dennison/Ted/TED.html ICQ - 10545591
next prev parent reply other threads:[~1999-05-20 0:00 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
1999-05-20 0:00 Announcement: OpenToken 1.1 released Ted Dennison
1999-05-20 0:00 ` David Botton [this message]
1999-05-20 0:00 ` Ted Dennison
1999-05-20 0:00 ` Ted Dennison
1999-05-20 0:00 ` David Botton
1999-05-22 0:00 ` Simon Wright
1999-05-23 0:00 ` James S. Rogers
1999-05-24 0:00 ` dennison
1999-05-24 0:00 ` Robert Dewar
1999-05-25 0:00 ` Stephen Leake
1999-05-25 0:00 ` Thomas Quinot
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox