[#17198] enhancing Ruby error messages for out of the bound constant Fixnum? — Guillaume Cottenceau <gc@...>

Hi,

11 messages 2001/07/03

[#17206] /* */ comments — Dave Thomas <Dave@...>

43 messages 2001/07/04
[#17207] Re: /* */ comments — Stephen White <spwhite@...> 2001/07/04

On Wed, 4 Jul 2001, Dave Thomas wrote:

[#17251] Re: /* */ comments — Sean Chittenden <sean-ruby-talk@...> 2001/07/04

> Over on http://www.rubygarden.org, dv posted a patch to parse.y that

[#17268] Re: /* */ comments — matz@... (Yukihiro Matsumoto) 2001/07/05

Hi,

[#17212] Ruby 1.6.4 Win32 .exe installer question — A Bull in the China Shop of Life <feoh@...>

Folks;

11 messages 2001/07/04

[#17225] Re: /* */ comments — Arnaud Meuret <ameuret@...4you.com>

|From: Mark Slagell [mailto:ms@iastate.edu]

17 messages 2001/07/04

[#17240] Ruby Mascot/logo — "Kevin Powick" <kpowick@...>

Hi there.

14 messages 2001/07/04

[#17281] Inheritance — "Aleksei Guzev" <aleksei.guzev@...>

15 messages 2001/07/05
[#17282] Re: Inheritance — ts <decoux@...> 2001/07/05

>>>>> "A" == Aleksei Guzev <aleksei.guzev@bigfoot.com> writes:

[#17348] Adding a method to a class at the top-level — Guillaume Cottenceau <gc@...>

Comrades,

14 messages 2001/07/05

[#17482] Aliases for class methods — "HarryO" <harryo@...>

Say I wanted to write my own version of File#open that adds some

23 messages 2001/07/08

[#17511] Ruby on Slashdot — jweirich@...

Ruby is currently mentioned on Slashdot. I posted some references.

29 messages 2001/07/08
[#17512] Re: Ruby on Slashdot — Tobias Reif <tobiasreif@...> 2001/07/08

Interesting...

[#17518] Re: Ruby on Slashdot — matz@... (Yukihiro Matsumoto) 2001/07/09

Hi,

[#17519] Re: Ruby on Slashdot — "James (ruby-talk)" <ruby@...> 2001/07/09

> |I thought about that too; what about Ruby being a standard?

[#17525] Re: Ruby on Slashdot — matz@... (Yukihiro Matsumoto) 2001/07/09

Hi,

[#17536] Re: Ruby on Slashdot — David Alan Black <dblack@...> 2001/07/09

Hello --

[#17572] Re: Constants and Variables — "HarryO" <harryo@...>

> If you want objects that don't change, try Object#freeze,

25 messages 2001/07/10

[#17732] Re: Array#sort! returns nil when array empty — hfulton@...

> Array#sort! returns nil if the array is empty, whereas ri

32 messages 2001/07/12
[#17736] Re: Array#sort! returns nil when array empty — Paul Brannan <pbrannan@...> 2001/07/12

On Fri, 13 Jul 2001 hfulton@pop-server.austin.rr.com wrote:

[#17739] Re: Array#sort! returns nil when array empty — ts <decoux@...> 2001/07/12

>>>>> "P" == Paul Brannan <pbrannan@atdesk.com> writes:

[#17746] Re: Array#sort! returns nil when array empty — Paul Brannan <pbrannan@...> 2001/07/12

On Fri, 13 Jul 2001, ts wrote:

[#17747] What is Array#- ? — Jim Freeze <jim@...> 2001/07/12

While following the Array thread, I noticed the minus

[#17752] Re: What is Array#- ? — Dave Thomas <Dave@...> 2001/07/12

Jim Freeze <jim@freeze.org> writes:

[#17753] Re: What is Array#- ? — Jim Freeze <jim@...> 2001/07/12

On Fri, 13 Jul 2001, Dave Thomas wrote:

[#17833] Extending objects — "Aleksei Guzev" <aleksei.guzev@...>

16 messages 2001/07/14
[#17834] Ruby-newbie seeks help with Rubywin starting IRB — "Euan Mee" <lucid@...> 2001/07/14

Once I fire up Rubywin, and then invoke _R_uby _I_rb from the

[#17839] Re: Ruby-newbie seeks help with Rubywin starting IRB — A Bull in the China Shop of Life <feoh@...> 2001/07/14

At 07:05 PM 7/14/01 +0900, Euan Mee spewed forth:

[#17859] Re: Creating methods on the fly — "HarryO" <harryo@...>

I

18 messages 2001/07/15

[#17925] Movement in scripting language communities to integrate XML-RPC — gsemones@... (Guerry Semones)

Greetings,

20 messages 2001/07/16
[#17934] Re: Movement in scripting language communities to integrate XML-RPC — Tobias Reif <tobiasreif@...> 2001/07/16

"out of the box" by including

[#18018] Broadcasting data — "HarryO" <harryo@...>

Does someone have an example of broadcasting data around a network using

12 messages 2001/07/18

[#18023] [ANN] libxslt Rubified! — Wai-Sun Chia <waisun.chia@...>

Hello,

16 messages 2001/07/18
[#18024] Re: [ANN] libxslt Rubified! — TAKAHASHI Masayoshi <maki@...> 2001/07/18

Wai-Sun Chia <waisun.chia@compaq.com> wrote:

[#18100] Looking for Ruby programming exercises — Wayne Vucenic <wvucenic@...> 2001/07/19

I've been learning Ruby, mostly with the Pickaxe book, and it's going

[#18188] Newbie. Sinking fast. Please help. — Matt <matt@...>

I bought Programming Ruby a number of months back and finally have an opportunity to try out Ruby. However, I can't get it to build. Actually, that's not quite accurate. It builds fine. It won't pass 'make test'.

12 messages 2001/07/20

[#18193] Re: 99 bottles of beer — "Dat Nguyen" <thucdat@...>

18 messages 2001/07/20
[#18204] Re: 99 bottles of beer — Glen Starchman <glen@...> 2001/07/20

99.downto(0){|x|w=" on the wall";u="#{x!=0?eval(x.to_s):'no more'}

[#18306] Ruby as opposed to Python? — "Mark Nenadov" <mnenadov@...>

Hello. I have toyed with the idea of trying Ruby out for some time now.

118 messages 2001/07/22
[#18759] Re: Ruby as opposed to Python? — Paul Prescod <paulp@...> 2001/07/29

Yukihiro Matsumoto wrote:

[#18774] Re: Ruby as opposed to Python? — "Florian G. Pflug" <fgp@...> 2001/07/30

On Mon, Jul 30, 2001 at 05:58:22AM +0900, Paul Prescod wrote:

[#18393] Trouble Using FXRuby on cygwin/Windows NT — rgilbert1@... (Robbie Gilbert)

Hi,

10 messages 2001/07/23

[#18566] Which database should I use? — Urban Hafner <the-master-of-bass@...>

Hello everybody,

17 messages 2001/07/26
[#18575] Re: Which database should I use? — Urban Hafner <the-master-of-bass@...> 2001/07/26

[#18582] Re: Which database should I use? — Michael Neumann <neumann@...> 2001/07/26

Urban Hafner wrote:

[ruby-talk:17377] Re: RubyDoc. was /* */ comments

From: Dave Thomas <Dave@...>
Date: 2001-07-06 04:27:41 UTC
List: ruby-talk #17377
matz@ruby-lang.org (Yukihiro Matsumoto) writes:

>   (a) multi-line comment for documentation
>   (b) multi-line comment for debugging tool
>   (c) inline comment
> 
> For (a), we already have =begin/=end; for (b), I think we can use
> =begin/=end too.  RDtool does not handle embedded documentation with
> tag other than "RD", so that you can do
... 
> So, I think, we have to discuss about (c) inline comments only.
> What do you think?

OK, this is where I make myself unpopular.

I really, really don't like =begin/=end for anything other than
top-level documentation. If you try to intersperse =begin/=end within
the body of a class, you end up with an indentation nightmare.

I'd very much like to see a full Javadoc-like package for Ruby, but
one that used a subset of Wiki-like formating, and that included a
fairly complete Ruby parser. This would let me write (for example)

  ##
  #  Handle ISO8601 dates. We current accept a subset in the format
  #
  #    CCYY-MM-DDThh:mm:ss+HH:MM
  #    CCYY-MM-DDThh:mm:ssZ
  #

  class Iso8601

    ##
    # Create a new date given an ISO8601 formatted string.
    # Throw: InvalidDateFormat if the string cannot be parsed

    def initialize(date_string)
      # ...
    end


    ##
    # Convert this date to a Ruby <tt>Time</tt> object.
    # Return: aTime

    def to_time()
      # ...
    end
  end


Given the above, I'd expect the tool to be able to do the following:

1. Associate the first comment with the overall class definition.

2. Identify the class, determine it has no explicit superclass.

3. Analyze the class body for attr_xxx and includes

4. Associate the two comment blocks within the class with the
   corresponding methods, and extract the method signatures.

5. Notice that <tt>Time</tt> is a reference to something it knows
   about, and flag it for hyperlinking (and in fact notice any
   references of the form Class::name, Class#name, and Class.name as
   potential hyperlinks)

6. Format the contents of comment blocks using the simple rules of a
   standard Wiki: paragraphs are separated by blank lines, code is
   indented, lists have '*'s or numbers, and so on.

7. Write out a nicely formatted and cross-referenced set of
   documentation that can grow incrementally. Ideally this would
   involve maintaining an intermediate form than can be processed on
   the fly to give me ri-style output, HTML, LaTeX, Postscript, etc,
   etc. For example, if I fed the code above into the documentation
   thingy, I'd then be able to position my cursor on 'to_time()' in my
   Emacs buffer, type C-c C-c C-r, and have it pop up

       ----------------------------------- Iso8601#to_time
         to_time() -> aTime
       ---------------------------------------------------

       Returns this date as a Ruby Time object.

   Where _Time_ was a hyperlink to the Time class's documentation.


The thing I particularly like about this style of documentation is
that it's transparent. The comments aren't littered with all sorts of
punctuation and other markup. If you didn't know that documentation
was being produced, you'd think the code was commented normally. I
also like the fact that the documentation uses a parser to extract
stuff from the source: that means I don't have to type it twice, and
that I don't have to worry about keeping documentation up to date.

I've got much of this working right now, using irb's lexer and
parser. However, I ran into problems getting it to handle method
parameter lists, so I'm waiting for one of the RiR parser teams to
deliver something.

Now none of this requires any change to any existing comment
mechanism. I think that '#'s work just fine. I'm just pointing out
that maybe there are alternatives to =begin/=end for documentation
comments.


Regards


Dave


In This Thread