Forum: Redcloth The rewrite

A50dcaaf8e545e6cc1fb4e32919be6ad?d=identicon&s=25 Jason Garber (jgarber)
on 2009-08-21 02:42
(Received via mailing list)
Hi, RedCloth watchers.  Just wanted to tell you Gaspard and I have
agreed on a rewrite plan.  We're setting up a project to compare
redcloth-treetop and redcloth-regexp and any other alternatives that
come along.  We'll implement some common features and then ask the
Ruby community to weigh in on what they like and what they don't.
Hopefully that will give us a clear sense of where to go with it.

Certainly by now you've heard about _why.  RedCloth owes everything to
him and I hope I can speak for all of us when I say we're extremely
grateful for the code he gave us over the years and the contributions
he made to the community.  He'll be missed if, in fact, he's truly gone.

Jason
D3c9a4e663c77df1fe4888da3ba85bcc?d=identicon&s=25 * William (Guest)
on 2009-08-21 11:46
(Received via mailing list)
Hi gentlefolk ...

I'm mostly and observer there, however I wonder if the "rewrite plan"
has
time to consider a kind of plug-able structure for things like different
regexp engines, and may be other engines -- Say plugable HTML, XHTML,
DocBook, etc.

I thinking myself about the changes in Sequel to use plug-ins.  It felt
a
bit 'funny' for a bit -- Now I see the sense of it.  If you think it is
worth considering that kind of option; I'd just suggest using a notion
for a
"default plugin" if you are a new-starter, so thing /work/ out of the
box.

There you are, two cents for free - Please excuse my Kibbutz*ing*.

aloha,
        \_w_/
___________________________________
   º http://mbimarketing.wordpress.com
   º http://adroit-process.blogspot.com


2009/8/21 Jason Garber <jg@jasongarber.com>
457cf540784a12ba2f30e06565a2c189?d=identicon&s=25 Hugh Sasse (Guest)
on 2009-08-21 12:24
(Received via mailing list)
On Thu, 20 Aug 2009, Jason Garber wrote:

> Hi, RedCloth watchers.  Just wanted to tell you Gaspard and I have agreed on a
> rewrite plan.  We're setting up a project to compare redcloth-treetop and
> redcloth-regexp and any other alternatives that come along.  We'll implement

I've not looked at racc for years, but that might be a possibility.

> some common features and then ask the Ruby community to weigh in on what they
> like and what they don't.  Hopefully that will give us a clear sense of where
> to go with it.

Sounds good.
>
> Certainly by now you've heard about _why.  RedCloth owes everything to him and
> I hope I can speak for all of us when I say we're extremely grateful for the
> code he gave us over the years and the contributions he made to the community.
> He'll be missed if, in fact, he's truly gone.

In the Art and Code talk he was self-deprecating about his code,
and, regrettably, once I was harsh about some bloopsaphone code
which I didn't realize was one of his projects.  But _Why had
already learned something I'm still trying to take on board, that
often quickly rolled together code that does the job is MUCH better
than code which is "done properly" by the standards of computer
science purists but is too late to be useful.  He was phenomenally
productive as a programmer, produced stuff many people used, and it
was novel, reaching into niches others never considered.  Some of
the artistic work I still don't understand, but there was genius
there.  Why do the cartoon foxes in the Poignant Guide "work", on
any level?  I don't know.  I'm glad he had the nerve to risk
ridicule, and produce something so wonderfully bizarre.  To receive
praise from him like:
http://thread.gmane.org/gmane.comp.lib.shoes/1623/focus=1627
was something I really appreciated and still do.  I hope he is still
about somewhere, if only so he can look at the web and see he was
valued.  If he's dramatically taken a sabbatical, I hope he enjoys
it.

>
> Jason

        Hugh
A50dcaaf8e545e6cc1fb4e32919be6ad?d=identicon&s=25 Jason Garber (jgarber)
on 2009-08-21 20:11
(Received via mailing list)
Yes, I definitely want it to be more extensible.  In the past you were
able to write your own formatters (HTML and LaTeX came standard, but
you could have made XHTML, DocBook, etc.) and I want to continue
that.  RedCloth 4 parsing couldn't really be extended, though.  You
had to pre- or post-parse for custom signatures (emoticons, ticket
numbers, or whatever).  I want the rewrite to be simple to extend and
to have all that open Ruby goodness we've come to expect.  And
wouldn't it be cool if you could just gem install redcloth-docbook to
have that formatter available?  It seems very possible.

While I'm at it, here are my goals for the rewrite (copied from an
email to Gaspard):
1. Many other people can understand and contribute to it. This isn't
true with the current Ragel implementation—I have to do all the work
while very capable programmers sit on the sidelines just because the
code is so foreign and unapproachable.
2. It doesn't require compilation.  I want GitHub to be able to
generate the gem.  And nobody likes waiting for a compile.
3. It is written in just one language (not four) and that language is
Ruby (does Treetop count?  meh, close enough.)
4. It is fast enough, but speed isn't the most important thing.  We're
all Ruby programmers, right?  If speed were our top priority, we
wouldn't be here.
5. The code is clean, modular, beautiful, and easily approached.  This
is what makes Ruby so great and it carries over into a lot of Ruby
software.
6. It can easily be extended and manipulated to meet people's needs.
Right now they can't inject more parsing rules, disable all but a few,
or generally hack it into what they need.
7. It is 100% backwards-compatible and the output is practically
identical, minus the currently identified bugs
8. The development cycle is very short.  Right now I procrastinate on
fixing bugs because they take so much time and experimentation to fix
and release.  I would rather turn around bug reports in hours, not
months, and release often.
This topic is locked and can not be replied to.