Thread overview
[phobos] small documentation fixes
Aug 16, 2010
Johannes Pfau
Aug 16, 2010
Shin Fujishiro
Aug 16, 2010
Johannes Pfau
Aug 16, 2010
Shin Fujishiro
Aug 17, 2010
Johannes Pfau
August 16, 2010
 Hi,
I found some small bugs (incorrectly nested/closed macros) in the
std.math documentation. I did not want to create a bug report, because
it should be really trivial to fix for everyone with commit access. The
fixes:

line 912: (exp)
- *    $(TD +$(INFIN))          $(TD +$(INFIN)) )
- *    $(TD -$(INFIN))          $(TD +0.0)      )
+ *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN)) )
+ *    $(TR $(TD -$(INFIN))     $(TD +0.0)      )

line 945: (expm1)
- *    $(TD +$(INFIN))          $(TD +$(INFIN))    )
- *    $(TD -$(INFIN))          $(TD -1.0)         )
+ *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN))    )
+ *    $(TR $(TD -$(INFIN))     $(TD -1.0)         )

line 1032: (exp2)
- *    $(TR $(TH x)             $(TH exp2(x)    )
- *    $(TD +$(INFIN))          $(TD +$(INFIN)) )
- *    $(TD -$(INFIN))          $(TD +0.0)      )
+ *    $(TR $(TH x)             $(TH exp2(x))   )
+ *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN)) )
+ *    $(TR $(TD -$(INFIN))     $(TD +0.0)      )

-- 
Johannes Pfau

August 17, 2010
Johannes Pfau <johannespfau at googlemail.com> wrote:
> I found some small bugs (incorrectly nested/closed macros) in the std.math documentation. I did not want to create a bug report, because it should be really trivial to fix for everyone with commit access.

Thanks!  I applied the fix and looked over std.math for other macros. It was okay, but I got the following artifact in a ddoc output:

    $(DDOC_MODULE_MEMBERS

I thought this was fixed...  Is it just me?


Shin

> The fixes:
> line 912: (exp)
> - *    $(TD +$(INFIN))          $(TD +$(INFIN)) )
> - *    $(TD -$(INFIN))          $(TD +0.0)      )
> + *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN)) )
> + *    $(TR $(TD -$(INFIN))     $(TD +0.0)      )
> 
> line 945: (expm1)
> - *    $(TD +$(INFIN))          $(TD +$(INFIN))    )
> - *    $(TD -$(INFIN))          $(TD -1.0)         )
> + *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN))    )
> + *    $(TR $(TD -$(INFIN))     $(TD -1.0)         )
> 
> line 1032: (exp2)
> - *    $(TR $(TH x)             $(TH exp2(x)    )
> - *    $(TD +$(INFIN))          $(TD +$(INFIN)) )
> - *    $(TD -$(INFIN))          $(TD +0.0)      )
> + *    $(TR $(TH x)             $(TH exp2(x))   )
> + *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN)) )
> + *    $(TR $(TD -$(INFIN))     $(TD +0.0)      )
August 16, 2010
 On 16.08.2010 20:02, Shin Fujishiro wrote:
> Johannes Pfau <johannespfau at googlemail.com> wrote:
>> I found some small bugs (incorrectly nested/closed macros) in the std.math documentation. I did not want to create a bug report, because it should be really trivial to fix for everyone with commit access.
> Thanks!  I applied the fix and looked over std.math for other macros. It was okay, but I got the following artifact in a ddoc output:
>
>     $(DDOC_MODULE_MEMBERS
>
> I thought this was fixed...  Is it just me?
>
>
> Shin
>
>> The fixes:
>> line 912: (exp)
>> - *    $(TD +$(INFIN))          $(TD +$(INFIN)) )
>> - *    $(TD -$(INFIN))          $(TD +0.0)      )
>> + *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN)) )
>> + *    $(TR $(TD -$(INFIN))     $(TD +0.0)      )
>>
>> line 945: (expm1)
>> - *    $(TD +$(INFIN))          $(TD +$(INFIN))    )
>> - *    $(TD -$(INFIN))          $(TD -1.0)         )
>> + *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN))    )
>> + *    $(TR $(TD -$(INFIN))     $(TD -1.0)         )
>>
>> line 1032: (exp2)
>> - *    $(TR $(TH x)             $(TH exp2(x)    )
>> - *    $(TD +$(INFIN))          $(TD +$(INFIN)) )
>> - *    $(TD -$(INFIN))          $(TD +0.0)      )
>> + *    $(TR $(TH x)             $(TH exp2(x))   )
>> + *    $(TR $(TD +$(INFIN))     $(TD +$(INFIN)) )
>> + *    $(TR $(TD -$(INFIN))     $(TD +0.0)      )
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
think I found it, this one was tough:
line 2007:
     /// The result cannot be represented exactly, so rounding occured.
     /// (example: x = sin(0.1); }
Not sure what it should be though. I think
     /// example: x = sin(0.1);
should work?

-- 
Johannes Pfau

August 17, 2010
Johannes Pfau <johannespfau at googlemail.com> wrote:
> think I found it, this one was tough:
> line 2007:
>      /// The result cannot be represented exactly, so rounding occured.
>      /// (example: x = sin(0.1); }
> Not sure what it should be though. I think
>      /// example: x = sin(0.1);
> should work?

Great, now the artifact disappeared.  Thanks!


Shin
August 17, 2010
 On 16.08.2010 21:01, Shin Fujishiro wrote:
> Great, now the artifact disappeared.  Thanks!
Thanks for fixing these issues. I posted a patch to http://d.puremagic.com/issues/show_bug.cgi?id=3554 which should make finding such issues easier.

I also found a few more problems in comments:

std.math uses a &radix; html entity. However this entity is not part of any html standard, I don't think it even exists.

std.random uses version(ddoc) but version=ddoc is only set in the linux makefile but not in the win32 one. There is a 'D_Ddoc' version which is set by dmd when generating documentation, this seems to be the better alternative.

std.stdint is missing lots of html closing tags. There are also empty lines in <tr>s. These empty lines produce <br>s inside the table rows which is not allowed in html. If those lines are needed they must be inside the td elements. The corrected html follows (4.01 Strict compatible)
------------------------------------------------------------------------
    <table border="1" cellspacing="0" cellpadding="5">
    <tr>
    <th>Exact Alias</th>
    <th>Description</th>
    <th>At Least Alias</th>
    <th>Description</th>
    <th>Fast Alias</th>
    <th>Description</th>
    </tr>
    <tr>
    <td>int8_t</td>
    <td>exactly 8 bits signed</td>
    <td>int_least8_t</td>
    <td>at least 8 bits signed</td>
    <td>int_fast8_t</td>
    <td>fast 8 bits signed</td>
    </tr><tr>
    <td>uint8_t</td>
    <td>exactly 8 bits unsigned</td>
    <td>uint_least8_t</td>
    <td>at least 8 bits unsigned</td>
    <td>uint_fast8_t</td>
    <td>fast 8 bits unsigned</td>
    </tr><tr>
    <td>int16_t</td>
    <td>exactly 16 bits signed</td>
    <td>int_least16_t</td>
    <td>at least 16 bits signed</td>
    <td>int_fast16_t</td>
    <td>fast 16 bits signed</td>
    </tr><tr>
    <td>uint16_t</td>
    <td>exactly 16 bits unsigned</td>
    <td>uint_least16_t</td>
    <td>at least 16 bits unsigned</td>
    <td>uint_fast16_t</td>
    <td>fast 16 bits unsigned</td>
    </tr><tr>
    <td>int32_t</td>
    <td>exactly 32 bits signed</td>
    <td>int_least32_t</td>
    <td>at least 32 bits signed</td>
    <td>int_fast32_t</td>
    <td>fast 32 bits signed</td>
    </tr><tr>
    <td>uint32_t</td>
    <td>exactly 32 bits unsigned</td>
    <td>uint_least32_t</td>
    <td>at least 32 bits unsigned</td>
    <td>uint_fast32_t</td>
    <td>fast 32 bits unsigned</td>
    </tr><tr>
    <td>int64_t</td>
    <td>exactly 64 bits signed</td>
    <td>int_least64_t</td>
    <td>at least 64 bits signed</td>
    <td>int_fast64_t</td>
    <td>fast 64 bits signed</td>
    </tr><tr>
    <td>uint64_t</td>
    <td>exactly 64 bits unsigned</td>
    <td>uint_least64_t</td>
    <td>at least 64 bits unsigned</td>
    <td>uint_fast64_t</td>
    <td>fast 64 bits unsigned</td>
    </tr>
    </table>

    The ptr aliases are integral types guaranteed to be large enough
    to hold a pointer without losing bits:

    <table border="1" cellspacing="0" cellpadding="5">
    <tr>
    <th>Alias</th>
    <th>Description</th>
    </tr><tr>
    <td>intptr_t</td>
    <td>signed integral type large enough to hold a pointer</td>
    </tr><tr>
    <td>uintptr_t</td>
    <td>unsigned integral type large enough to hold a pointer</td>
    </tr>
    </table>

    The max aliases are the largest integral types:

    <table border="1" cellspacing="0" cellpadding="5">
    <tr>
    <th>Alias</th>
    <th>Description</th>
    </tr><tr>
    <td>intmax_t</td>
    <td>the largest signed integral type</td>
    </tr><tr>
    <td>uintmax_t</td>
    <td>the largest unsigned integral type</td>
    </tr>
    </table>
------------------------------------------------------------------------
Phobos.d has the same problem, but I don't know how to fix that one.

-- 
Johannes Pfau

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/phobos/attachments/20100817/6bb8ce5c/attachment.html>