commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benson Margulies <bimargul...@gmail.com>
Subject Re: Proposed Contribution to Apache Commons,
Date Sat, 24 Oct 2015 22:09:26 GMT
gh-pages is the right place for it. You just have to browse to the
correct place on github.io to see it.


On Sat, Oct 24, 2015 at 5:59 PM, Dave Brosius <dbrosius@apache.org> wrote:
> Correct.
>
> This was the branch that Mr Shapiro used when he introduced the project to
> us, so that's where i did the work. And yes, it is now merged.
>
> My colleague Jeff Rothenberg and I, retirees, have developed an alternative
> to
> using regular expressions for searching for (and optionally replacing)
> patterns in text. We believe it is generally useful to Java programmers and
> would like to contribute it to Apache Commons, where we will continue to be
> active in maintaining the software. You can find the software and associated
> documentation athttps://github.com/NormanShapiro/Naomi/tree/gh-pages.
>
> Please let us know what further steps we should take to have our
> contribution
> considered.
>
> Thank you,
>
>     Norman Shapiro
>
>
>
> On 10/24/2015 05:44 PM, Pascal Schumacher wrote:
>>
>> Hello everybody,
>>
>> the pull request was merged, but it is in the "gh-pages" branch not in
>> "master", so it's not visible by default on the github page.
>>
>> -Pascal
>>
>> Am 24.10.2015 um 22:27 schrieb Dave Brosius:
>>>
>>> Dear My. Shapiro,
>>>
>>> Greetings!
>>>
>>> Thanks for wanting to share this codebase, and making it available at
>>> github.
>>>
>>> I have attempted to cleanup the repository to make it more approachable
>>> for others who want to take a look, including reorganizing the src tree and
>>> adding a proper maven build system. These things would make it easier to
>>> consume.
>>>
>>> If you wouldn't mind going to
>>>
>>> https://github.com/NormanShapiro/Naomi/pull/1
>>>
>>> and looking at the pull request, and if acceptable, pushing the merge
>>> button, that would be great.
>>>
>>> Thanks again for you source contributions,
>>>
>>> dave.
>>>
>>>
>>>
>>> On 10/24/2015 11:14 AM, norm@dad.org wrote:
>>>>
>>>> My colleague, Jeff Rothenberg, and I are retired computer scientists and
>>>> are
>>>> no strangers to regular expression theory and practice. Both of us have
>>>> used
>>>> regular expressions for decades and have taught many other programmers
>>>> how to
>>>> use them. Stephen Kleene
>>>> (https://en.wikipedia.org/wiki/Stephen_Cole_Kleene),
>>>> the inventor of regular expressions and I
>>>> (https://en.wikipedia.org/wiki/Norman_Shapiro) were both doctoral
>>>> students of
>>>> Alonzo Church (https://en.wikipedia.org/wiki/Alonzo_Church). Rothenberg
>>>> used
>>>> SNOBOL3 and SNOBOL4 (more powerful than all but a few of the most recent
>>>> versions of regular expressions) extensively in his graduate work in
>>>> Artificial Intelligence in the late 1960 and early 1970s.
>>>>
>>>> In our experience, although skilled programmers can write regular
>>>> expressions
>>>> that solve a wide range of problems, for all but the simplest tasks
>>>> regular
>>>> expressions quickly become "write only". That is, once they have aged
>>>> for a
>>>> while, no one other than their authors (and, in our experience, often
>>>> not even
>>>> they) can understand them well enough to verify, modify, debug, or
>>>> maintain
>>>> them without considerable effort. Analogous low-level programming
>>>> formalisms,
>>>> such as machine code and assembly language, have been replaced by
>>>> higher-level, more readable and modular languages to produce programs
>>>> that
>>>> have proven easier and more cost-effective to debug, verify, maintain,
>>>> reuse,
>>>> and extend.
>>>>
>>>> In a similar fashion, Naomi is a means of "taming" complex regular
>>>> expressions, as well as offering an easier alternative for those who are
>>>> unfamiliar with them. Naomi makes pattern matching programs more
>>>> readable,
>>>> modular, and therefore verifiable, maintainable, and extensible. Naomi
>>>> ultimately generates regular expressions, and it can do everything they
>>>> can
>>>> do, but it provides a higher-level API that uses object-oriented
>>>> constructs to
>>>> define complex, modular, parameterized patterns and subpatterns.
>>>>
>>>> Naomi's advantages over bare regular expressions become apparent only
>>>> for
>>>> larger scale pattern matching tasks. Whereas regular expressions are
>>>> highly
>>>> compact and terse, this virtue becomes a vice for complex patterns.
>>>> Coupled
>>>> with the extensive use of metacharacters and escape sequences, this
>>>> makes even
>>>> moderately complex regular expressions effectively unreadable for all
>>>> but the
>>>> most experienced and practiced regular expression programmers. Newer
>>>> features
>>>> that go beyond the original regular expression formalism--such as
>>>> namable
>>>> groups, built-in names for common character classes, comments, and free
>>>> white
>>>> space--make regular expressions less terse. But their use is not enough
>>>> to
>>>> render complex regular expressions easily readable. These extensions are
>>>> analogous to replacing binary machine language by assembly language
>>>> coding. It
>>>> is only necessary to consider a complex problem--such as that of parsing
>>>> the
>>>> e-mail date-time specification of RFC 2822 in src/DateTime.java--to
>>>> appreciate
>>>> the obscurity of regular expressions and to understand Naomi's
>>>> advantages.
>>>>
>>>>
>>>>
>>>>      Norman Shapiro
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
>>>> For additional commands, e-mail: dev-help@commons.apache.org
>>>>
>>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
>>> For additional commands, e-mail: dev-help@commons.apache.org
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
>> For additional commands, e-mail: dev-help@commons.apache.org
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Mime
View raw message