changeset 21751:b571fc85953f

maint: Use two spaces after period to indicate sentence break.
author Rik <rik@octave.org>
date Thu, 19 May 2016 18:48:52 -0700
parents 6720e5a220ba
children 949cb46e6bdb
files libinterp/corefcn/__lin_interpn__.cc libinterp/corefcn/__magick_read__.cc libinterp/corefcn/besselj.cc libinterp/corefcn/bitfcns.cc libinterp/corefcn/cdisplay.c libinterp/corefcn/cellfun.cc libinterp/corefcn/data.cc libinterp/corefcn/debug.cc libinterp/corefcn/defun-int.h libinterp/corefcn/error.cc libinterp/corefcn/event-queue.h libinterp/corefcn/find.cc libinterp/corefcn/ft-text-renderer.cc libinterp/corefcn/gl-render.cc libinterp/corefcn/graphics.cc libinterp/corefcn/graphics.in.h libinterp/corefcn/hash.cc libinterp/corefcn/jit-ir.h libinterp/corefcn/jit-typeinfo.cc libinterp/corefcn/jit-typeinfo.h libinterp/corefcn/jit-util.h libinterp/corefcn/load-save.cc libinterp/corefcn/lookup.cc libinterp/corefcn/ls-hdf5.cc libinterp/corefcn/ls-mat5.cc libinterp/corefcn/ls-oct-binary.cc libinterp/corefcn/ls-oct-text.cc libinterp/corefcn/mex.cc libinterp/corefcn/oct-map.cc libinterp/corefcn/oct-map.h libinterp/corefcn/oct-stream.cc libinterp/corefcn/pr-output.cc libinterp/corefcn/pt-jit.cc libinterp/corefcn/pt-jit.h libinterp/corefcn/quadcc.cc libinterp/corefcn/qz.cc libinterp/corefcn/sparse-xpow.cc libinterp/corefcn/strfind.cc libinterp/corefcn/strfns.cc libinterp/corefcn/symtab.cc libinterp/corefcn/symtab.h libinterp/corefcn/time.cc libinterp/corefcn/typecast.cc libinterp/corefcn/variables.cc libinterp/corefcn/xpow.cc libinterp/corefcn/zfstream.cc libinterp/corefcn/zfstream.h libinterp/dldfcn/__glpk__.cc libinterp/dldfcn/__init_fltk__.cc libinterp/dldfcn/__osmesa_print__.cc libinterp/dldfcn/ccolamd.cc libinterp/dldfcn/colamd.cc libinterp/dldfcn/symrcm.cc libinterp/octave-value/ov-base-diag.cc libinterp/octave-value/ov-base-mat.cc libinterp/octave-value/ov-base.h libinterp/octave-value/ov-class.cc libinterp/octave-value/ov-classdef.cc libinterp/octave-value/ov-classdef.h libinterp/octave-value/ov-fcn-handle.cc libinterp/octave-value/ov-fcn-handle.h libinterp/octave-value/ov-null-mat.h libinterp/octave-value/ov-oncleanup.cc libinterp/octave-value/ov-perm.cc libinterp/octave-value/ov-range.cc libinterp/octave-value/ov-usr-fcn.h libinterp/octave-value/ov.h libinterp/operators/op-scm-cm.cc libinterp/operators/op-scm-cs.cc libinterp/operators/op-scm-m.cc libinterp/operators/op-scm-s.cc libinterp/parse-tree/parse.h libinterp/parse-tree/pt-binop.cc libinterp/parse-tree/pt-exp.h libinterp/parse-tree/pt-funcall.cc libinterp/parse-tree/pt-idx.cc libinterp/parse-tree/pt-mat.cc libinterp/parse-tree/pt-misc.cc liboctave/array/Array-util.cc liboctave/array/Array.cc liboctave/array/Array.h liboctave/array/CMatrix.cc liboctave/array/CSparse.cc liboctave/array/MArray-i.cc liboctave/array/MArray-s.cc liboctave/array/PermMatrix.cc liboctave/array/PermMatrix.h liboctave/array/Range.cc liboctave/array/Sparse.cc liboctave/array/Sparse.h liboctave/array/dMatrix.cc liboctave/array/dSparse.cc liboctave/array/dim-vector.cc liboctave/array/dim-vector.h liboctave/array/fCMatrix.cc liboctave/array/fMatrix.cc liboctave/array/idx-vector.cc liboctave/array/idx-vector.h liboctave/cruft/Faddeeva/Faddeeva.cc liboctave/numeric/CollocWt.cc liboctave/numeric/DASPK.cc liboctave/numeric/DASRT.cc liboctave/numeric/DASSL.cc liboctave/numeric/eigs-base.cc liboctave/numeric/lo-mappers.h liboctave/numeric/lo-specfun.cc liboctave/numeric/oct-fftw.cc liboctave/numeric/oct-norm.cc liboctave/numeric/sparse-dmsolve.cc liboctave/operators/Sparse-op-defs.h liboctave/operators/mx-inlines.cc liboctave/system/oct-time.cc liboctave/util/action-container.h liboctave/util/kpse.cc liboctave/util/lo-macros.h liboctave/util/lo-regexp.cc liboctave/util/oct-binmap.h liboctave/util/oct-inttypes.cc liboctave/util/oct-inttypes.h liboctave/util/oct-locbuf.cc liboctave/util/oct-locbuf.h liboctave/util/oct-refcount.h liboctave/util/oct-shlib.cc liboctave/util/oct-sort.cc liboctave/util/oct-sort.h liboctave/util/sparse-sort.cc liboctave/util/unwind-prot.h liboctave/util/url-transfer.cc scripts/general/accumarray.m scripts/general/accumdim.m scripts/general/inputParser.m scripts/general/nargoutchk.m scripts/general/validateattributes.m scripts/geometry/tsearchn.m scripts/geometry/voronoi.m scripts/help/__makeinfo__.m scripts/help/__unimplemented__.m scripts/help/get_first_help_sentence.m scripts/help/print_usage.m scripts/image/imformats.m scripts/image/imwrite.m scripts/image/ind2gray.m scripts/image/private/__imfinfo__.m scripts/image/private/__imwrite__.m scripts/image/private/colorspace_conversion_input_check.m scripts/image/private/imageIO.m scripts/image/private/imwrite_filename.m scripts/image/rgb2ind.m scripts/io/strread.m scripts/io/textread.m scripts/java/javaclasspath.m scripts/miscellaneous/info.m scripts/miscellaneous/license.m scripts/miscellaneous/perl.m scripts/miscellaneous/private/__xzip__.m scripts/miscellaneous/private/display_info_file.m scripts/miscellaneous/python.m scripts/ode/ode23.m scripts/optimization/__all_opts__.m scripts/optimization/fminbnd.m scripts/optimization/fminsearch.m scripts/optimization/fminunc.m scripts/optimization/fsolve.m scripts/optimization/fzero.m scripts/optimization/lsqnonneg.m scripts/optimization/pqpnonneg.m scripts/pkg/private/configure_make.m scripts/pkg/private/get_forge_pkg.m scripts/pkg/private/install.m scripts/plot/appearance/legend.m scripts/plot/appearance/whitebg.m scripts/plot/draw/feather.m scripts/plot/draw/plotyy.m scripts/plot/draw/stemleaf.m scripts/plot/util/print.m scripts/plot/util/printd.m scripts/plot/util/private/__gnuplot_draw_axes__.m scripts/plot/util/private/__gnuplot_draw_figure__.m scripts/plot/util/private/__gnuplot_ginput__.m scripts/plot/util/private/__gnuplot_has_terminal__.m scripts/plot/util/private/__gnuplot_print__.m scripts/plot/util/struct2hdl.m scripts/plot/util/subplot.m scripts/polynomial/polyfit.m scripts/polynomial/residue.m scripts/sparse/sprandsym.m scripts/sparse/svds.m scripts/specfun/factor.m scripts/special-matrix/gallery.m scripts/special-matrix/magic.m scripts/statistics/base/histc.m scripts/statistics/base/quantile.m scripts/statistics/base/ranks.m scripts/strings/dec2base.m scripts/strings/strjust.m scripts/testfun/test.m scripts/time/datenum.m
diffstat 197 files changed, 789 insertions(+), 790 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/corefcn/__lin_interpn__.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/__lin_interpn__.cc	Thu May 19 18:48:52 2016 -0700
@@ -250,7 +250,7 @@
 
 // Perform @var{n}-dimensional interpolation.  Each element of then
 // @var{n}-dimensional array @var{v} represents a value at a location
-// given by the parameters @var{x1}, @var{x2},...,@var{xn}. The parameters
+// given by the parameters @var{x1}, @var{x2},...,@var{xn}.  The parameters
 // @var{x1}, @var{x2}, @dots{}, @var{xn} are either @var{n}-dimensional
 // arrays of the same size as the array @var{v} in the \"ndgrid\" format
 // or vectors.  The parameters @var{y1}, @var{y2}, @dots{}, @var{yn} are
--- a/libinterp/corefcn/__magick_read__.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/__magick_read__.cc	Thu May 19 18:48:52 2016 -0700
@@ -50,24 +50,24 @@
 // Image is composed of pixels which represent literal color values.
 //
 //  GraphicsMagick does not really distinguishes between indexed and
-//  normal images. After reading a file, it decides itself the optimal
+//  normal images.  After reading a file, it decides itself the optimal
 //  way to store the image in memory, independently of the how the
-//  image was stored in the file. That's what ClassType returns. While
+//  image was stored in the file.  That's what ClassType returns.  While
 //  it seems to match the original file most of the times, this is
-//  not necessarily true all the times. See
+//  not necessarily true all the times.  See
 //    https://sourceforge.net/mailarchive/message.php?msg_id=31180507
 //  In addition to the ClassType, there is also ImageType which has a
-//  type for indexed images (PaletteType and PaletteMatteType). However,
-//  they also don't represent the original image. Not only does DirectClass
+//  type for indexed images (PaletteType and PaletteMatteType).  However,
+//  they also don't represent the original image.  Not only does DirectClass
 //  can have a PaletteType, but also does a PseudoClass have non Palette
 //  types.
 //
 //        We can't do better without having format specific code which is
-//        what we are trying to avoid by using a library such as GM. We at
+//        what we are trying to avoid by using a library such as GM.  We at
 //        least create workarounds for the most common problems.
 //
 // 1) A grayscale jpeg image can report being indexed even though the
-//    JPEG format has no support for indexed images. We can at least
+//    JPEG format has no support for indexed images.  We can at least
 //    fix this one.
 // 2) A PNG file is only an indexed image if color type orig is 3 (value comes
 //    from libpng)
@@ -76,20 +76,20 @@
 {
   bool indexed = (img.classType () == Magick::PseudoClass);
   // Our problem until now is non-indexed images, being represented as indexed
-  // by GM. The following attempts educated guesses to undo this optimization.
+  // by GM.  The following attempts educated guesses to undo this optimization.
   if (indexed)
     {
       const std::string fmt = img.magick ();
       if (fmt == "JPEG")
         // The JPEG format does not support indexed images, but GM sometimes
-        // reports grayscale JPEG as indexed. Always false for JPEG.
+        // reports grayscale JPEG as indexed.  Always false for JPEG.
         indexed = false;
       else if (fmt == "PNG")
         {
           // Newer versions of GM (at least does not happens with 1.3.16) will
-          // store values from the underlying library as image attributes. In
+          // store values from the underlying library as image attributes.  In
           // the case of PNG files, this is libpng where an indexed image will
-          // always have a value of 3 for "color-type-orig". This property
+          // always have a value of 3 for "color-type-orig".  This property
           // always has a value in libpng so if we get nothing, we assume this
           // GM version does not store them and we have to go with whatever
           // GM PseudoClass says.
@@ -103,16 +103,16 @@
 }
 
 //  The depth from depth() is not always correct for us but seems to be the
-//  best value we can get. For example, a grayscale png image with 1 bit
+//  best value we can get.  For example, a grayscale png image with 1 bit
 //  per channel should return a depth of 1 but instead we get 8.
 //  We could check channelDepth() but then, which channel has the data
-//  is not straightforward. So we'd have to check all
-//  the channels and select the highest value. But then, I also
+//  is not straightforward.  So we'd have to check all
+//  the channels and select the highest value.  But then, I also
 //  have a 16bit TIFF whose depth returns 16 (correct), but all of the
-//  channels gives 8 (wrong). No idea why, maybe a bug in GM?
+//  channels gives 8 (wrong).  No idea why, maybe a bug in GM?
 //  Anyway, using depth() seems that only causes problems for binary
 //  images, and the problem with channelDepth() is not making set them
-//  all to 1. So we will guess that if all channels have depth of 1,
+//  all to 1.  So we will guess that if all channels have depth of 1,
 //  then we must have a binary image.
 //  Note that we can't use AllChannels it doesn't work for this.
 //  We also can't check only one from RGB, one from CMYK, and grayscale
@@ -137,7 +137,7 @@
 }
 
 // We need this in case one of the sides of the image being read has
-// width 1. In those cases, the type will come as scalar instead of range
+// width 1.  In those cases, the type will come as scalar instead of range
 // since that's the behavior of the colon operator (1:1:1 will be a scalar,
 // not a range).
 static Range
@@ -226,7 +226,7 @@
   const octave_idx_type nCols = region["col_out"];
 
   // imvec has all of the pages of a file, even the ones we are not
-  // interested in. We will use the first image that we will be actually
+  // interested in.  We will use the first image that we will be actually
   // reading to get information about the image.
   const octave_idx_type def_elem = frameidx(0);
 
@@ -241,7 +241,7 @@
   const octave_idx_type col_cache = region["col_cache"];
 
   // When reading PixelPackets from the Image Pixel Cache, they come in
-  // row major order. So we keep moving back and forth there so we can
+  // row major order.  So we keep moving back and forth there so we can
   // write the image in column major order.
   octave_idx_type idx = 0;
   for (octave_idx_type frame = 0; frame < nFrames; frame++)
@@ -301,7 +301,7 @@
 }
 
 // This function is highly repetitive, a bunch of for loops that are
-// very similar to account for different image types. They are different
+// very similar to account for different image types.  They are different
 // enough that trying to reduce the copy and paste would decrease its
 // readability too much.
 template <typename T>
@@ -322,7 +322,7 @@
   T img;
 
   // imvec has all of the pages of a file, even the ones we are not
-  // interested in. We will use the first image that we will be actually
+  // interested in.  We will use the first image that we will be actually
   // reading to get information about the image.
   const octave_idx_type def_elem = frameidx(0);
 
@@ -335,17 +335,17 @@
 
   // GraphicsMagick (GM) keeps the image values in memory using whatever
   // QuantumDepth it was built with independently of the original image
-  // bitdepth. Basically this means that if GM was built with quantum 16
-  // all values are scaled in the uint16 range. If the original image
+  // bitdepth.  Basically this means that if GM was built with quantum 16
+  // all values are scaled in the uint16 range.  If the original image
   // had an 8 bit depth, we need to rescale it for that range.
   // However, if the image had a bitdepth of 32, then we will be returning
-  // a floating point image. In this case, the values need to be rescaled
+  // a floating point image.  In this case, the values need to be rescaled
   // for the range [0 1] (this is what Matlab has documented on the page
   // about image types but in some cases seems to be doing something else.
   // See bug #39249).
   // Finally, we must do the division ourselves (set a divisor) instead of
   // using quantumOperator for the cases where we will be returning floating
-  // point and want things in the range [0 1]. This is the same reason why
+  // point and want things in the range [0 1].  This is the same reason why
   // the divisor is of type double.
   // uint64_t is used in expression because default 32-bit value overflows
   // when depth() is 32.
@@ -360,20 +360,20 @@
   // FIXME: this workaround should probably be fixed in GM by creating a
   //        new ImageType BilevelMatteType
   // Despite what GM documentation claims, opacity is not only on the types
-  // with Matte on the name. It is possible that an image is completely
+  // with Matte on the name.  It is possible that an image is completely
   // black (1 color), and have a second channel set for transparency (2nd
-  // color). Its type will be bilevel since there is no BilevelMatte. The
+  // color).  Its type will be bilevel since there is no BilevelMatte.  The
   // only way to check for this seems to be by checking matte ().
   Magick::ImageType type = imvec[def_elem].type ();
   if (type == Magick::BilevelType && imvec[def_elem].matte ())
     type = Magick::GrayscaleMatteType;
 
   // FIXME: ImageType is the type being used to represent the image in memory
-  // by GM. The real type may be different (see among others bug #36820). For
+  // by GM.  The real type may be different (see among others bug #36820).  For
   // example, a png file where all channels are equal may report being
-  // grayscale or even bilevel. But we must always return the real image in
-  // file. In some cases, the original image attributes are stored in the
-  // attributes but this is undocumented. This should be fixed in GM so that
+  // grayscale or even bilevel.  But we must always return the real image in
+  // file.  In some cases, the original image attributes are stored in the
+  // attributes but this is undocumented.  This should be fixed in GM so that
   // a method such as original_type returns an actual Magick::ImageType
   if (imvec[0].magick () == "PNG")
     {
@@ -399,7 +399,7 @@
       // Color types 0, 2, and 3 can also have alpha channel, conveyed
       // via the "tRNS" chunk.  For 0 and 2, it's limited to GIF-style
       // binary transparency, while 3 can have any level of alpha per
-      // palette entry. We thus must check matte() to see if the image
+      // palette entry.  We thus must check matte() to see if the image
       // really doesn't have an alpha channel.
       if (imvec[0].matte ())
         {
@@ -728,7 +728,7 @@
       // critical for multi page images).  It would also suggests that
       // it covers all images which does not (it still does not support
       // float point and signed integer images).
-      // On the other hand, 16bit images are much more common. If quantum
+      // On the other hand, 16bit images are much more common.  If quantum
       // depth is 8, there's a good chance that we will be limited.  It
       // is also the GraphicsMagick recommended setting and the default
       // for ImageMagick.
@@ -798,7 +798,7 @@
         }
     }
 
-  // Check that all frames have the same size. We don't do this at the same
+  // Check that all frames have the same size.  We don't do this at the same
   // time we decode the image because that's done in many different places,
   // to cover the different types of images which would lead to a lot of
   // copy and paste.
@@ -942,7 +942,7 @@
   const octave_idx_type bitdepth  = bitdepth_from_class<T> ();
 
   // There is no colormap object, we need to build a new one for each frame,
-  // even if it's always the same. We can least get a vector for the Colors.
+  // even if it's always the same.  We can least get a vector for the Colors.
   std::vector<Magick::ColorRGB> colormap;
   {
     const double* cmap_fvec = cmap.fortran_vec ();
@@ -968,13 +968,13 @@
 
       // Why are we also setting the pixel values instead of only the
       // index values? We don't know if a file format supports indexed
-      // images. If we only set the indexes and then try to save the
+      // images.  If we only set the indexes and then try to save the
       // image as JPEG for example, the indexed values get discarded,
       // there is no conversion from the indexes, it's the initial values
-      // that get used. An alternative would be to only set the pixel
+      // that get used.  An alternative would be to only set the pixel
       // values (no indexes), then set the image as PseudoClass and GM
-      // would create a colormap for us. However, we wouldn't have control
-      // over the order of that colormap. And that's why we set both.
+      // would create a colormap for us.  However, we wouldn't have control
+      // over the order of that colormap.  And that's why we set both.
       Magick::PixelPacket* pix = m_img.getPixels (0, 0, nCols, nRows);
       Magick::IndexPacket* ind = m_img.getIndexes ();
       const P* img_fvec        = img.fortran_vec ();
@@ -1087,8 +1087,8 @@
     }
 
   // We will be passing the values as integers with depth as specified
-  // by QuantumDepth (maximum value specified by MaxRGB). This is independent
-  // of the actual depth of the image. GM will then convert the values but
+  // by QuantumDepth (maximum value specified by MaxRGB).  This is independent
+  // of the actual depth of the image.  GM will then convert the values but
   // while in memory, it always keeps the values as specified by QuantumDepth.
   // From GM documentation:
   //  Color arguments are must be scaled to fit the Quantum size according to
@@ -1327,13 +1327,13 @@
   // Disposal Method - Indicates the way in which the graphic is to
   //                    be treated after being displayed.
   //
-  //  0 -   No disposal specified. The decoder is
+  //  0 -   No disposal specified.  The decoder is
   //        not required to take any action.
-  //  1 -   Do not dispose. The graphic is to be left
+  //  1 -   Do not dispose.  The graphic is to be left
   //        in place.
-  //  2 -   Restore to background color. The area used by the
+  //  2 -   Restore to background color.  The area used by the
   //        graphic must be restored to the background color.
-  //  3 -   Restore to previous. The decoder is required to
+  //  3 -   Restore to previous.  The decoder is required to
   //        restore the area overwritten by the graphic with
   //        what was there prior to rendering the graphic.
   //  4-7 - To be defined.
@@ -1431,7 +1431,7 @@
       else if (img.is_float_type ())
         {
           // For image formats that support floating point values, we write
-          // the actual values. For those who don't, we only use the values
+          // the actual values.  For those who don't, we only use the values
           // on the range [0 1] and save integer values.
           // But here, even for formats that would support floating point
           // values, GM seems unable to do that so we at least make them uint32.
@@ -1457,7 +1457,7 @@
   else
     {
       // We should not get floating point indexed images here because we
-      // converted them in __imwrite__.m. We should probably do it here
+      // converted them in __imwrite__.m.  We should probably do it here
       // but it would look much messier.
       if (img.is_uint8_type ())
         encode_indexed_images<uint8NDArray>  (imvec, img.uint8_array_value (),
@@ -1485,7 +1485,7 @@
       imvec[i].gifDisposeMethod (disposal_methods[disposalmethod(i)]);
     }
 
-  // If writemode is set to append, read the image and append to it. Even
+  // If writemode is set to append, read the image and append to it.  Even
   // if set to append, make sure that something was read at all.
   const std::string writemode = options.getfield ("writemode").string_value ();
   if (writemode == "append" && octave::sys::file_stat (filename).exists ())
@@ -1503,12 +1503,12 @@
   // FIXME: LoopCount or animationIterations
   //  How it should work:
   //
-  // This value is only set for the first image in the sequence. Trying
+  // This value is only set for the first image in the sequence.  Trying
   // to set this value with the append mode should have no effect, the
   // value used with the first image is the one that counts (that would
-  // also be Matlab compatible). Thus, the right way to do this would be
+  // also be Matlab compatible).  Thus, the right way to do this would be
   // to have an else block on the condition above, and set this only
-  // when creating a new file. Since Matlab does not interpret a 4D
+  // when creating a new file.  Since Matlab does not interpret a 4D
   // matrix as sequence of images to write, its users need to use a for
   // loop and set LoopCount only on the first iteration (it actually
   // throws warnings otherwise)
@@ -1561,8 +1561,8 @@
 %!assert (1)
 */
 
-// Gets the minimum information from images such as its size and format. Much
-// faster than using imfinfo, which slows down a lot since. Note than without
+// Gets the minimum information from images such as its size and format.  Much
+// faster than using imfinfo, which slows down a lot since.  Note than without
 // this, we need to read the image once for imfinfo to set defaults (which is
 // done in Octave language), and then again for the actual reading.
 DEFUN (__magick_ping__, args, ,
@@ -1651,7 +1651,7 @@
 
       // The following are present only in recent versions of GraphicsMagick.
       // At the moment the only use of this would be to have imfinfo report
-      // the compression method. In the future, someone could implement
+      // the compression method.  In the future, someone could implement
       // the Compression option for imwrite in which case a macro in
       // configure.ac will have to check for their presence of this.
       // See bug #39913
@@ -1816,14 +1816,14 @@
   const octave_idx_type nFrames = imvec.size ();
   const std::string format = imvec[0].magick ();
 
-  // Here's how this function works. We need to return a struct array, one
+  // Here's how this function works.  We need to return a struct array, one
   // struct for each image in the file (remember, there are image
-  // that allow for multiple images in the same file). Now, Matlab seems
+  // that allow for multiple images in the same file).  Now, Matlab seems
   // to have format specific code so the fields on the struct are different
-  // for each format. It only has a small subset that is common to all
-  // of them, the others are undocumented. Because we try to abstract from
+  // for each format.  It only has a small subset that is common to all
+  // of them, the others are undocumented.  Because we try to abstract from
   // the formats we always return the same list of fields (note that with
-  // GM we support more than 88 formats. That's way more than Matlab, and
+  // GM we support more than 88 formats.  That's way more than Matlab, and
   // I don't want to write specific code for each of them).
   //
   // So what we do is we create an octave_scalar_map, fill it with the
@@ -1847,7 +1847,7 @@
     "BitDepth",
     "ColorType",
 
-    // These are format specific or not existent in Matlab. The most
+    // These are format specific or not existent in Matlab.  The most
     // annoying thing is that Matlab may have different names for the
     // same thing in different formats.
     "DelayTime",
@@ -1875,7 +1875,7 @@
     "GPSInfo",
     // Notes for the future: GM allows one to get many attributes, and even has
     // attribute() to obtain arbitrary ones, that may exist in only some
-    // cases. The following is a list of some methods and into what possible
+    // cases.  The following is a list of some methods and into what possible
     // Matlab compatible values they may be converted.
     //
     //  colorSpace()      -> PhotometricInterpretation
@@ -1889,7 +1889,7 @@
   octave_map info (dim_vector (nFrames, 1), string_vector (fields));
 
   // Some of the fields in the struct are about file information and will be
-  // the same for all images in the file. So we create a template, fill in
+  // the same for all images in the file.  So we create a template, fill in
   // those values, and make a copy of the template for each image.
   octave_scalar_map template_info = (string_vector (fields));
 
@@ -1920,7 +1920,7 @@
                            octave_value (get_depth (const_cast<Magick::Image&> (img))));
 
       // Stuff related to colormap, image class and type
-      // Because GM is too smart for us... Read the comments in is_indexed()
+      // Because GM is too smart for us...  Read the comments in is_indexed()
       {
         std::string color_type;
         Matrix cmap;
@@ -1965,8 +1965,8 @@
       }
 
       {
-        // Not all images have chroma values. In such cases, they'll
-        // be all zeros. So rather than send a matrix of zeros, we will
+        // Not all images have chroma values.  In such cases, they'll
+        // be all zeros.  So rather than send a matrix of zeros, we will
         // check for that, and send an empty vector instead.
         RowVector chromaticities (8);
         double* chroma_fvec = chromaticities.fortran_vec ();
@@ -1998,7 +1998,7 @@
                            magick_to_octave_value (img.endian ()));
 
       // It is not possible to know if there's an Exif field so we just
-      // check for the Exif Version value. If it does exists, then we
+      // check for the Exif Version value.  If it does exists, then we
       // bother about looking for specific fields.
       {
         Magick::Image& cimg = const_cast<Magick::Image&> (img);
@@ -2006,7 +2006,7 @@
         // These will be in Exif tags but must appear as fields in the
         // base struct array, not as another struct in one of its fields.
         // This is likely because they belong to the Baseline TIFF specs
-        // and may appear out of the Exif tag. So first we check if it
+        // and may appear out of the Exif tag.  So first we check if it
         // exists outside the Exif tag.
         // See Section 4.6.4, table 4, page 28 of Exif specs version 2.3
         // (CIPA DC- 008-Translation- 2010)
@@ -2055,7 +2055,7 @@
               "LensSerialNumber",
               "SpectralSensitivity",
               // These last two are of type undefined but most likely will
-              // be strings. Even if they're not GM returns a string anyway.
+              // be strings.  Even if they're not GM returns a string anyway.
               "UserComment",
               "MakerComment",
               0
@@ -2138,7 +2138,7 @@
               fill_exif_floats (camera, cimg, exif_float[field]);
 
             // Inside a Exif field, it is possible that there is also a
-            // GPS field. This is not the same as ExifVersion but seems
+            // GPS field.  This is not the same as ExifVersion but seems
             // to be how we have to check for it.
             if (cimg.attribute ("EXIF:GPSInfo") != "unknown")
               {
@@ -2267,7 +2267,7 @@
 
           fmt.setfield ("description", octave_value (coder.description ()));
           fmt.setfield ("multipage", coder.isMultiFrame () ? true : false);
-          // default for read and write is a function handle. If we can't
+          // default for read and write is a function handle.  If we can't
           // read or write them, them set it to an empty value
           if (! coder.isReadable ())
             fmt.setfield ("read",  Matrix ());
@@ -2277,7 +2277,7 @@
         }
       catch (Magick::Exception& e)
         {
-          // Exception here are missing formats. So we remove the format
+          // Exception here are missing formats.  So we remove the format
           // from the structure and reduce idx.
           formats.delete_elements (idx);
           idx--;
--- a/libinterp/corefcn/besselj.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/besselj.cc	Thu May 19 18:48:52 2016 -0700
@@ -853,27 +853,27 @@
  Abramowitz and Stegun, "Handbook of Mathematical Functions",
  1972.
 
-For regular Bessel functions, there are 3 tests. These compare octave
+For regular Bessel functions, there are 3 tests.  These compare octave
 results against Tables 9.1, 9.2, and 9.4 in A&S. Tables 9.1 and 9.2
 are good to only a few decimal places, so any failures should be
-considered a broken implementation. Table 9.4 is an extended table
-for larger orders and arguments. There are some differences between
+considered a broken implementation.  Table 9.4 is an extended table
+for larger orders and arguments.  There are some differences between
 Octave and Table 9.4, mostly in the last decimal place but in a very
-few instances the errors are in the last two places. The comparison
+few instances the errors are in the last two places.  The comparison
 tolerance has been changed to reflect this.
 
-Similarly for modifed Bessel functions, there are 3 tests. These
+Similarly for modified Bessel functions, there are 3 tests.  These
 compare octave results against Tables 9.8, 9.9, and 9.11 in A&S.
 Tables 9.8 and 9.9 are good to only a few decimal places, so any
-failures should be considered a broken implementation. Table 9.11 is
-an extended table for larger orders and arguments. There are some
+failures should be considered a broken implementation.  Table 9.11 is
+an extended table for larger orders and arguments.  There are some
 differences between octave and Table 9.11, mostly in the last decimal
 place but in a very few instances the errors are in the last two
-places. The comparison tolerance has been changed to reflect this.
+places.  The comparison tolerance has been changed to reflect this.
 
 For spherical Bessel functions, there are also three tests, comparing
-octave results to Tables 10.1, 10.2, and 10.4 in A&S. Very similar
-comments may be made here as in the previous lines. At this time,
+octave results to Tables 10.1, 10.2, and 10.4 in A&S.  Very similar
+comments may be made here as in the previous lines.  At this time,
 modified spherical Bessel function tests are not included.
 
 % Table 9.1 - J and Y for integer orders 0, 1, 2.
--- a/libinterp/corefcn/bitfcns.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/bitfcns.cc	Thu May 19 18:48:52 2016 -0700
@@ -110,7 +110,7 @@
 }
 
 // Trampoline function, instantiates the proper template above, with
-// reflective information hardwired. We can't hardwire this information
+// reflective information hardwired.  We can't hardwire this information
 // in Fbitxxx DEFUNs below, because at that moment, we still don't have
 // information about which integer types we need to instantiate.
 template <typename T>
--- a/libinterp/corefcn/cdisplay.c	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/cdisplay.c	Thu May 19 18:48:52 2016 -0700
@@ -89,7 +89,7 @@
 
 #else
 
-      /* FIXME: This will only work for MacOS > 10.5. For earlier versions
+      /* FIXME: This will only work for MacOS > 10.5.  For earlier versions
          this code is not needed (use CGDisplayBitsPerPixel instead).  */
 
       CGDisplayModeRef mode = CGDisplayCopyDisplayMode (display);
--- a/libinterp/corefcn/cellfun.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/cellfun.cc	Thu May 19 18:48:52 2016 -0700
@@ -1907,7 +1907,7 @@
 
   if (ivec >= 0)
     {
-      // Vector split. Use 1D indexing.
+      // Vector split.  Use 1D indexing.
       octave_idx_type l = 0;
       octave_idx_type nidx = (ivec == 0 ? nridx : ncidx);
       for (octave_idx_type i = 0; i < nidx; i++)
@@ -1919,7 +1919,7 @@
     }
   else
     {
-      // General 2D case. Use 2D indexing.
+      // General 2D case.  Use 2D indexing.
       OCTAVE_LOCAL_BUFFER (idx_vector, ridx, nridx);
       prepare_idx (ridx, 0, nd, d);
 
@@ -1938,7 +1938,7 @@
   return retval;
 }
 
-// Nd case. Works for Arrays and octave_map.
+// Nd case.  Works for Arrays and octave_map.
 // Uses Nd indexing.
 
 template <typename ArrayND>
@@ -2003,7 +2003,7 @@
     return do_mat2cell_nd (a, d, nd);
 }
 
-// General case. Works for any class supporting do_index_op.
+// General case.  Works for any class supporting do_index_op.
 // Uses Nd indexing.
 
 Cell
--- a/libinterp/corefcn/data.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/data.cc	Thu May 19 18:48:52 2016 -0700
@@ -2080,7 +2080,7 @@
 
           // The lines below might seem crazy, since we take a copy
           // of the first argument, resize it to be empty and then resize
-          // it to be full. This is done since it means that there is no
+          // it to be full.  This is done since it means that there is no
           // recopying of data, as would happen if we used a single resize.
           // It should be noted that resize operation is also significantly
           // slower than the do_cat_op function, so it makes sense to have
@@ -2089,7 +2089,7 @@
           // We might also start with a empty octave_value using
           //   tmp = octave_value_typeinfo::lookup_type
           //                                (args(1).type_name());
-          // and then directly resize. However, for some types there might
+          // and then directly resize.  However, for some types there might
           // be some additional setup needed, and so this should be avoided.
 
           octave_value tmp = args(0);
@@ -7497,7 +7497,7 @@
     {
       dim = array.dims ().first_non_singleton ();
 
-      // Bother Matlab. This behavior is really wicked.
+      // Bother Matlab.  This behavior is really wicked.
       if (dv(dim) <= order)
         {
           if (dv(dim) == 1)
--- a/libinterp/corefcn/debug.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/debug.cc	Thu May 19 18:48:52 2016 -0700
@@ -297,7 +297,7 @@
 
             if (! seen_in)
               {
-                // It was a line number. Get function name from debugger.
+                // It was a line number.  Get function name from debugger.
                 if (Vdebugging)
                   symbol_name = get_user_code ()->profiler_name ();
                 else
--- a/libinterp/corefcn/defun-int.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/defun-int.h	Thu May 19 18:48:52 2016 -0700
@@ -62,7 +62,7 @@
 get_current_shlib (void);
 
 // This is a convenience class that calls the above function automatically at
-// construction time. When deriving new classes, you can either use it as a
+// construction time.  When deriving new classes, you can either use it as a
 // field or as a parent (with multiple inheritance).
 
 class octave_auto_shlib : public octave::dynamic_library
--- a/libinterp/corefcn/error.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/error.cc	Thu May 19 18:48:52 2016 -0700
@@ -180,7 +180,7 @@
     }
 
   // If with_fcn is specified, we'll attempt to prefix the message with the name
-  // of the current executing function. But we'll do so only if:
+  // of the current executing function.  But we'll do so only if:
   // 1. the name is not empty (anonymous function)
   // 2. it is not already there (including the following colon)
   if (with_cfn)
--- a/libinterp/corefcn/event-queue.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/event-queue.h	Thu May 19 18:48:52 2016 -0700
@@ -85,9 +85,8 @@
 };
 
 // Like event_queue, but this one will guard against the
-// possibility of seeing an exception (or interrupt) in the cleanup
-// actions. Not that we can do much about it, but at least we won't
-// crash.
+// possibility of seeing an exception (or interrupt) in the cleanup actions.
+// Not that we can do much about it, but at least we won't crash.
 
 class
 event_queue_safe : public event_queue
@@ -108,7 +107,7 @@
           {
             run_first ();
           }
-        catch (...) // Yes, the black hole. Remember we're in a dtor.
+        catch (...) // Yes, the black hole.  Remember we're in a dtor.
           {
             warn_unhandled_exception ();
           }
--- a/libinterp/corefcn/find.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/find.cc	Thu May 19 18:48:52 2016 -0700
@@ -431,7 +431,7 @@
       else if (nargout <= 1 && n_to_find == -1 && direction == 1)
         {
           // This case is equivalent to extracting indices from a logical
-          // matrix. Try to reuse the possibly cached index vector.
+          // matrix.  Try to reuse the possibly cached index vector.
 
           // No need to catch index_exception, since arg is bool.
           // Out-of-range errors have already set pos, and will be caught later.
--- a/libinterp/corefcn/ft-text-renderer.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/ft-text-renderer.cc	Thu May 19 18:48:52 2016 -0700
@@ -132,7 +132,7 @@
   typedef std::pair<std::string, double> ft_key;
   typedef std::map<ft_key, FT_Face> ft_cache;
 
-  // Cache the fonts loaded by FreeType. This cache only contains
+  // Cache the fonts loaded by FreeType.  This cache only contains
   // weak references to the fonts, strong references are only present
   // in class text_renderer.
   ft_cache cache;
@@ -183,7 +183,7 @@
     FT_Face retval = 0;
 
 #if defined (HAVE_FT_REFERENCE_FACE)
-    // Look first into the font cache, then use fontconfig. If the font
+    // Look first into the font cache, then use fontconfig.  If the font
     // is present in the cache, simply add a reference and return it.
 
     ft_key key (name + ":" + weight + ":" + angle, size);
@@ -276,7 +276,7 @@
         else
           {
             // Install a finalizer to notify ft_manager that the font is
-            // being destroyed. The class ft_manager only keeps weak
+            // being destroyed.  The class ft_manager only keeps weak
             // references to font objects.
 
             retval->generic.data = new ft_key (key);
@@ -463,19 +463,19 @@
   // Used to stored the bounding box corresponding to the rendered text.
   // The bounding box has the form [x, y, w, h] where x and y represent the
   // coordinates of the bottom left corner relative to the anchor point of
-  // the text (== start of text on the baseline). Due to font descent or
+  // the text (== start of text on the baseline).  Due to font descent or
   // multiple lines, the value y is usually negative.
   Matrix bbox;
 
-  // Used to stored the rendered text. It's a 3D matrix with size MxNx4
+  // Used to stored the rendered text.  It's a 3D matrix with size MxNx4
   // where M and N are the width and height of the bounding box.
   uint8NDArray pixels;
 
-  // Used to store the bounding box of each line. This is used to layout
+  // Used to store the bounding box of each line.  This is used to layout
   // multiline text properly.
   std::list<Matrix> line_bbox;
 
-  // The current horizontal alignment. This is used to align multi-line text.
+  // The current horizontal alignment.  This is used to align multi-line text.
   int halign;
 
   // The X offset for the next glyph.
@@ -484,8 +484,8 @@
   // The Y offset of the baseline for the current line.
   int line_yoffset;
 
-  // The Y offset of the baseline for the next glyph. The offset is relative
-  // to line_yoffset. The total Y offset is computed with:
+  // The Y offset of the baseline for the next glyph.  The offset is relative
+  // to line_yoffset.  The total Y offset is computed with:
   // line_yoffset + yoffset.
   int yoffset;
 
@@ -616,7 +616,7 @@
 ft_text_renderer::update_line_bbox (void)
 {
   // Called after a font change, when in MODE_BBOX mode, to update the
-  // current line bbox with the new font metrics. This also includes the
+  // current line bbox with the new font metrics.  This also includes the
   // current yoffset, that is the offset of the current glyph's baseline
   // the line's baseline.
 
@@ -791,7 +791,7 @@
 
                   // If we have a previous glyph, use kerning information.
                   // This usually means moving a bit backward before adding
-                  // the next glyph. That is, "delta.x" is usually < 0.
+                  // the next glyph.  That is, "delta.x" is usually < 0.
                   if (previous)
                     {
                       FT_Vector delta;
@@ -803,7 +803,7 @@
                     }
 
                   // Extend current X offset box by the width of the current
-                  // glyph. Then extend the line bounding box if necessary.
+                  // glyph.  Then extend the line bounding box if necessary.
 
                   xoffset += (face->glyph->advance.x >> 6);
                   bb(2) = xmax (bb(2), xoffset);
--- a/libinterp/corefcn/gl-render.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/gl-render.cc	Thu May 19 18:48:52 2016 -0700
@@ -70,7 +70,7 @@
 };
 
 // Win32 API requires the CALLBACK attributes for
-// GLU callback functions. Define it to empty on
+// GLU callback functions.  Define it to empty on
 // other platforms.
 #if ! defined (CALLBACK)
 #  define CALLBACK
@@ -2487,7 +2487,7 @@
   std::string msg;
   if (props.has_bad_data (msg))
     {
-      warning ("opengl_renderer: %s. Not rendering.", msg.c_str ());
+      warning ("opengl_renderer: %s.  Not rendering.", msg.c_str ());
       return;
     }
 
--- a/libinterp/corefcn/graphics.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/graphics.cc	Thu May 19 18:48:52 2016 -0700
@@ -5320,7 +5320,7 @@
       double af;
 
       // FIXME: was this really needed?  When compared to Matlab, it
-      // does not seem to be required. Need investigation with concrete
+      // does not seem to be required.  Need investigation with concrete
       // graphics toolkit to see results visually.
       if (false && dowarp)
         af = 1.0 / (xM > yM ? xM : yM);
@@ -6804,7 +6804,7 @@
   double hi = (lims.get ().matrix_value ())(1);
   bool is_negative = lo < 0 && hi < 0;
   double tmp;
-  // FIXME: should this be checked for somewhere else? (i.e. set{x,y,z}lim)
+  // FIXME: should this be checked for somewhere else? (i.e., set{x,y,z}lim)
   if (hi < lo)
     std::swap (hi, lo);
 
@@ -11245,7 +11245,7 @@
 \n\
 An optional timeout can be specified using the property @code{timeout}.\n\
 This timeout value is the number of seconds to wait for the condition to be\n\
-true.  @var{timeout} must be at least 1. If a smaller value is specified, a\n\
+true.  @var{timeout} must be at least 1.  If a smaller value is specified, a\n\
 warning is issued and a value of 1 is used instead.  If the timeout value is\n\
 not an integer, it is truncated towards 0.\n\
 \n\
@@ -11396,7 +11396,7 @@
         }
     }
 
-  // FIXME: There is still a "hole" in the following loop. The code
+  // FIXME: There is still a "hole" in the following loop.  The code
   //        assumes that an object handle is unique, which is a fair
   //        assumption, except for figures.  If a figure is destroyed
   //        then recreated with the same figure ID, within the same
--- a/libinterp/corefcn/graphics.in.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/graphics.in.h	Thu May 19 18:48:52 2016 -0700
@@ -2233,8 +2233,8 @@
   { return rep->initialize (h); }
 
   // Notifies graphics toolkit that object was destroyed.
-  // This is called only for explicitly deleted object. Children are
-  // deleted implicitly and graphics toolkit isn't notified.
+  // This is called only for explicitly deleted object.
+  // Children are deleted implicitly and graphics toolkit isn't notified.
   void finalize (const graphics_object& go)
   { rep->finalize (go); }
 
@@ -4984,7 +4984,7 @@
     {
       warning_with_id ("Octave:deprecated-property",
         "patch: Property 'normalmode' is deprecated and will be removed "
-        "from a future version of Octave. Use 'vertexnormalsmode' instead.");
+        "from a future version of Octave.  Use 'vertexnormalsmode' instead.");
       set_vertexnormalsmode (val);
     }
 
@@ -4992,7 +4992,7 @@
     {
       warning_with_id ("Octave:deprecated-property",
         "patch: Property 'normalmode' is deprecated and will be removed "
-        "from a future version of Octave. Use 'vertexnormalsmode' instead.");
+        "from a future version of Octave.  Use 'vertexnormalsmode' instead.");
       return vertexnormalsmode.current_value ();
     }
   };
@@ -5164,7 +5164,7 @@
     {
       warning_with_id ("Octave:deprecated-property",
         "surface: Property 'normalmode' is deprecated and will be removed "
-        "from a future version of Octave. Use 'vertexnormalsmode' instead.");
+        "from a future version of Octave.  Use 'vertexnormalsmode' instead.");
       set_vertexnormalsmode (val);
     }
 
@@ -5172,7 +5172,7 @@
     {
       warning_with_id ("Octave:deprecated-property",
         "surface: Property 'normalmode' is deprecated and will be removed "
-        "from a future version of Octave. Use 'vertexnormalsmode' instead.");
+        "from a future version of Octave.  Use 'vertexnormalsmode' instead.");
       return vertexnormalsmode.current_value ();
     }
   };
--- a/libinterp/corefcn/hash.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/hash.cc	Thu May 19 18:48:52 2016 -0700
@@ -29,7 +29,7 @@
 https://www.gnu.org/software/gnulib/MODULES.html#module=crypto/hmac-md5
 so a future project might be including these algorithms as well, adding
 a third key input parameter.  There is also a GNULIB "high-level"
-interface to Libcrypt. It might be easier to use, but it introduces
+interface to Libcrypt.  It might be easier to use, but it introduces
 a new build dependency, so better stick to the "low-level" functions
 for now.
 */
--- a/libinterp/corefcn/jit-ir.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/jit-ir.h	Thu May 19 18:48:52 2016 -0700
@@ -732,8 +732,8 @@
   // used to prevent visiting the same node twice in the graph
   size_t visit_count (void) const { return mvisit_count; }
 
-  // check if this node has been visited yet at the given visit count. If we
-  // have not been visited yet, mark us as visited.
+  // check if this node has been visited yet at the given visit count.
+  // If we have not been visited yet, mark us as visited.
   bool visited (size_t avisit_count)
   {
     if (mvisit_count <= avisit_count)
@@ -919,7 +919,7 @@
   }
 
   // variables don't get modified in an SSA, but COW requires we modify
-  // variables. An artificial assign is for when a variable gets modified. We
+  // variables.  An artificial assign is for when a variable gets modified.  We
   // need an assign in the SSA, but the reference counts shouldn't be updated.
   bool artificial (void) const { return martificial; }
 
--- a/libinterp/corefcn/jit-typeinfo.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/jit-typeinfo.cc	Thu May 19 18:48:52 2016 -0700
@@ -712,9 +712,9 @@
 {
   assert (idx < args.size ());
 
-  // FIXME: We should be treating arguments like a list, not a vector. Shouldn't
-  // matter much for now, as the number of arguments shouldn't be much bigger
-  // than 4
+  // FIXME: We should be treating arguments like a list, not a vector.
+  // Shouldn't matter much for now, as the number of arguments shouldn't
+  // be much bigger than 4
   llvm::Function::arg_iterator iter = llvm_function->arg_begin ();
   if (sret ())
     ++iter;
@@ -1267,9 +1267,9 @@
   binary_ops[octave_value::op_ldiv].add_overload (fn);
   binary_ops[octave_value::op_el_ldiv].add_overload (fn);
 
-  // In general, the result of scalar ^ scalar is a complex number. We might be
-  // able to improve on this if we keep track of the range of values varaibles
-  // can take on.
+  // In general, the result of scalar ^ scalar is a complex number.  We might
+  // be able to improve on this if we keep track of the range of values
+  // variables can take on.
   fn = create_external (JIT_FN (octave_jit_pow_scalar_scalar), complex, scalar,
                         scalar);
   binary_ops[octave_value::op_pow].add_overload (fn);
@@ -2237,7 +2237,7 @@
       Complex cv = ov.complex_value ();
 
       // We don't really represent complex values, instead we represent
-      // complex_or_scalar. If the imag value is zero, we assume a scalar.
+      // complex_or_scalar.  If the imag value is zero, we assume a scalar.
       if (cv.imag () != 0)
         return get_complex ();
     }
--- a/libinterp/corefcn/jit-typeinfo.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/jit-typeinfo.h	Thu May 19 18:48:52 2016 -0700
@@ -125,10 +125,10 @@
   };
 }
 
-// Used to keep track of estimated (infered) types during JIT. This is a
+// Used to keep track of estimated (infered) types during JIT.  This is a
 // hierarchical type system which includes both concrete and abstract types.
 //
-// The types form a lattice. Currently we only allow for one parent type, but
+// The types form a lattice.  Currently we only allow for one parent type, but
 // eventually we may allow for multiple predecessors.
 class
 jit_type
@@ -162,7 +162,7 @@
 
   // A function declared like: mytype foo (int arg0, int arg1);
   // Will be converted to: void foo (mytype *retval, int arg0, int arg1)
-  // if mytype is sret. The caller is responsible for allocating space for
+  // if mytype is sret.  The caller is responsible for allocating space for
   // retval. (on the stack)
   bool sret (jit_convention::type cc) const { return msret[cc]; }
 
@@ -177,7 +177,7 @@
   void mark_pointer_arg (jit_convention::type cc)
   { mpointer_arg[cc] = true; }
 
-  // Convert into an equivalent form before calling. For example, complex is
+  // Convert into an equivalent form before calling.  For example, complex is
   // represented as two values llvm vector, but we need to pass it as a two
   // valued llvm structure to C functions.
   convert_fn pack (jit_convention::type cc) { return mpack[cc]; }
@@ -232,14 +232,14 @@
                 const llvm::Twine& aname, jit_type *aresult,
                 const std::vector<jit_type *>& aargs);
 
-  // Use an existing function, but change the argument types. The new argument
+  // Use an existing function, but change the argument types.  The new argument
   // types must behave the same for the current calling convention.
   jit_function (const jit_function& fn, jit_type *aresult,
                 const std::vector<jit_type *>& aargs);
 
   jit_function (const jit_function& fn);
 
-  // erase the interal LLVM function (if it exists). Will become invalid.
+  // erase the interal LLVM function (if it exists).  Will become invalid.
   void erase (void);
 
   template <typename T>
--- a/libinterp/corefcn/jit-util.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/jit-util.h	Thu May 19 18:48:52 2016 -0700
@@ -103,8 +103,8 @@
 class jit_internal_node;
 
 // jit_internal_list and jit_internal_node implement generic embedded doubly
-// linked lists. List items extend from jit_internal_list, and can be placed
-// in nodes of type jit_internal_node. We use CRTP twice.
+// linked lists.  List items extend from jit_internal_list, and can be placed
+// in nodes of type jit_internal_node.  We use CRTP twice.
 template <typename LIST_T, typename NODE_T>
 class
 jit_internal_list
--- a/libinterp/corefcn/load-save.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/load-save.cc	Thu May 19 18:48:52 2016 -0700
@@ -427,7 +427,7 @@
 
                       output_buf
                         << std::setiosflags (std::ios::left)
-                        << std::setw (16) << tc.type_name () . c_str ()
+                        << std::setw (16) << tc.type_name ().c_str ()
                         << std::setiosflags (std::ios::right)
                         << std::setw (7) << tc.rows ()
                         << std::setw (7) << tc.columns ()
--- a/libinterp/corefcn/lookup.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/lookup.cc	Thu May 19 18:48:52 2016 -0700
@@ -98,7 +98,7 @@
 
 // FIXME: perhaps there should be octave_value::lookup?
 // The question is, how should it behave w.r.t. the second argument's type.
-// We'd need a dispatch on two arguments. Hmmm...
+// We'd need a dispatch on two arguments.  Hmmm...
 
 #define INT_ARRAY_LOOKUP(TYPE) \
   (table.is_ ## TYPE ## _type () && y.is_ ## TYPE ## _type ()) \
@@ -146,7 +146,7 @@
         }
       else if (left_inf && right_inf)
         {
-          // Results in valid indices. Optimize using lazy index.
+          // Results in valid indices.  Optimize using lazy index.
           octave_idx_type zero = 0;
           for (octave_idx_type i = 0; i < nval; i++)
             {
@@ -158,7 +158,7 @@
         }
       else if (left_inf)
         {
-          // Results in valid indices. Optimize using lazy index.
+          // Results in valid indices.  Optimize using lazy index.
           octave_idx_type zero = 0;
           for (octave_idx_type i = 0; i < nval; i++)
             {
--- a/libinterp/corefcn/ls-hdf5.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/ls-hdf5.cc	Thu May 19 18:48:52 2016 -0700
@@ -307,7 +307,7 @@
 // The following subroutines creates an HDF5 representations of the way
 // we will store Octave complex types (pairs of floating-point numbers).
 // NUM_TYPE is the HDF5 numeric type to use for storage (e.g.
-// H5T_NATIVE_DOUBLE to save as 'double'). Note that any necessary
+// H5T_NATIVE_DOUBLE to save as 'double').  Note that any necessary
 // conversions are handled automatically by HDF5.
 
 octave_hdf5_id
@@ -335,7 +335,7 @@
 //
 // It returns 1 on success (in which case H5Giterate stops and returns),
 // -1 on error, and 0 to tell H5Giterate to continue on to the next item
-// (e.g. if NAME was a data type we don't recognize).
+// (e.g., if NAME was a data type we don't recognize).
 
 octave_hdf5_err
 hdf5_read_next_data (octave_hdf5_id group_id, const char *name, void *dv)
@@ -613,8 +613,8 @@
               H5Sclose (space_id);
             }
           else
-            // Assume that if its not complex its a range. If its not
-            // it'll be rejected later in the range code
+            // Assume that if its not complex its a range.
+            // If its not, it'll be rejected later in the range code.
             d->tc = octave_value_typeinfo::lookup_type ("range");
 
           H5Tclose (complex_type);
@@ -848,7 +848,7 @@
 #endif
 }
 
-// Save an empty matrix, if needed. Returns
+// Save an empty matrix, if needed.  Returns
 //    > 0  Saved empty matrix
 //    = 0  Not an empty matrix; did nothing
 //    < 0  Error condition
@@ -904,7 +904,7 @@
 #endif
 }
 
-// Load an empty matrix, if needed. Returns
+// Load an empty matrix, if needed.  Returns
 //    > 0  loaded empty matrix, dimensions returned
 //    = 0  Not an empty matrix; did nothing
 //    < 0  Error condition
--- a/libinterp/corefcn/ls-mat5.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/ls-mat5.cc	Thu May 19 18:48:52 2016 -0700
@@ -843,7 +843,7 @@
           goto data_read_error;
 
         // Octave can handle both "/" and "\" as a directory seperator
-        // and so can ignore the separator field of m0. I think the
+        // and so can ignore the separator field of m0.  I think the
         // sentinel field is also save to ignore.
         octave_scalar_map m0 = tc2.scalar_map_value ();
         octave_scalar_map m1
@@ -869,7 +869,7 @@
                     // If fpath starts with matlabroot, and matlabroot
                     // doesn't equal __octave_config_info__ ("exec_prefix")
                     // then the function points to a version of Octave
-                    // or Matlab other than the running version. In that
+                    // or Matlab other than the running version.  In that
                     // case we replace with the same function in the
                     // running version of Octave?
 
@@ -1185,7 +1185,7 @@
             if (classname == "inline")
               {
                 // inline is not an object in Octave but rather an
-                // overload of a function handle. Special case.
+                // overload of a function handle.  Special case.
                 tc =
                   new octave_fcn_inline (m.contents ("expr")(0).string_value (),
                                          m.contents ("args")(0).string_value ());
@@ -1421,7 +1421,7 @@
                 else if (type == miUTF8)
                   {
                     // Search for multi-byte encoded UTF8 characters and
-                    // replace with 0x3F for '?'... Give the user a warning
+                    // replace with 0x3F for '?'...  Give the user a warning
 
                     bool utf8_multi_byte = false;
                     for (octave_idx_type i = 0; i < n; i++)
@@ -1997,10 +1997,10 @@
       //       size = 2;
       //     else if (max_val <= 2147483647L && min_val >= -2147483647L)
       //       size = 4;
-      //   }
-
-      // Round nel up to nearest even number of elements. Take into account
-      // Short tags for 4 byte elements.
+      //   
+
+      // Round nel up to nearest even number of elements.
+      // Take into account short tags for 4 byte elements.
       return PAD ((nel > 0 && nel * size <= 4 ? 4 : 8) + nel * size);
     }
   else
@@ -2174,7 +2174,7 @@
         ret += 8 + PAD (6 > max_namelen ? max_namelen : 6);
       else if (tc.is_object ())
         {
-          size_t classlen = tc.class_name (). length ();
+          size_t classlen = tc.class_name ().length ();
 
           ret += 8 + PAD (classlen > max_namelen ? max_namelen : classlen);
         }
@@ -2294,15 +2294,15 @@
 
       std::ostringstream buf;
 
-      // The code seeks backwards in the stream to fix the header. Can't
-      // do this with zlib, so use a stringstream.
+      // The code seeks backwards in the stream to fix the header.
+      // Can't do this with zlib, so use a stringstream.
       ret = save_mat5_binary_element (buf, tc, name, mark_as_global, true,
                                       save_as_floats, true);
 
       if (ret)
         {
           // destLen must be at least 0.1% larger than source buffer
-          // + 12 bytes. Reality is it must be larger again than that.
+          // + 12 bytes.  Reality is it must be larger again than that.
           std::string buf_str = buf.str ();
           uLongf srcLen = buf_str.length ();
           uLongf destLen = srcLen * 101 / 100 + 12;
--- a/libinterp/corefcn/ls-oct-binary.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/ls-oct-binary.cc	Thu May 19 18:48:52 2016 -0700
@@ -110,7 +110,7 @@
 //   type                 string    type_length
 //
 // The string "type" is then used with octave_value_typeinfo::lookup_type
-// to create an octave_value of the correct type. The specific load/save
+// to create an octave_value of the correct type.  The specific load/save
 // function is then called.
 //
 // For backward compatibility "data type" can also be a value between 1
@@ -128,7 +128,7 @@
 //
 // Except for "data type" equal 5 that requires special treatment, these
 // old style "data type" value also cause the specific load/save functions
-// to be called. FILENAME is used for error messages.
+// to be called.  FILENAME is used for error messages.
 
 std::string
 read_binary_data (std::istream& is, bool swap,
@@ -206,8 +206,8 @@
     case 5:
       {
         // FIXME:
-        // This is cruft, since its for a save type that is old. Maybe
-        // this is taking backward compatibility too far!!
+        // This is cruft, since its for a save type that is old.
+        // Maybe this is taking backward compatibility too far!
         int32_t len;
         if (! is.read (reinterpret_cast<char *> (&len), 4))
           error ("load: trouble reading binary file '%s'", filename.c_str ());
@@ -294,7 +294,7 @@
   const char *btmp = typ.data ();
   os.write (btmp, len);
 
-  // The octave_value of tc is const. Make a copy...
+  // The octave_value of tc is const.  Make a copy...
   octave_value val = tc;
 
   // Call specific save function
--- a/libinterp/corefcn/ls-oct-text.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/ls-oct-text.cc	Thu May 19 18:48:52 2016 -0700
@@ -191,8 +191,8 @@
 //  <string info> : # elements: <integer>
 //                : # length: <integer> (once before each string)
 //
-//  For backward compatibility the type "string array" is treated as a
-// "string" type. Also "string" can have a single element with no elements
+// For backward compatibility the type "string array" is treated as a
+// "string" type.  Also "string" can have a single element with no elements
 // line such that
 //
 //  <string info> : # length: <integer>
--- a/libinterp/corefcn/mex.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/mex.cc	Thu May 19 18:48:52 2016 -0700
@@ -2077,9 +2077,9 @@
     return ptr;
   }
 
-  // Reallocate a pointer obtained from malloc or calloc. If the
-  // pointer is NULL, allocate using malloc.  We don't need an
-  // "unmarked" version of this.
+  // Reallocate a pointer obtained from malloc or calloc.
+  // If the pointer is NULL, allocate using malloc.
+  // We don't need an "unmarked" version of this.
   void *realloc (void *ptr, size_t n)
   {
     void *v;
--- a/libinterp/corefcn/oct-map.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/oct-map.cc	Thu May 19 18:48:52 2016 -0700
@@ -461,7 +461,7 @@
   // FIXME:
   // There is no dim_vector::permute for technical reasons.
   // We pick the dim vector from results if possible, otherwise use a dummy
-  // array to get it. Need (?) a better solution to this problem.
+  // array to get it.  Need (?) a better solution to this problem.
   if (nf > 0)
     retval.dimensions = retval.xvals[0].dims ();
   else
@@ -829,7 +829,7 @@
     retval.dimensions = retval.xvals[0].dims ();
   else
     {
-      // Use dummy array. FIXME: Need(?) a better solution.
+      // Use dummy array.  FIXME: Need(?) a better solution.
       Array<char> dummy (dimensions);
       dummy = dummy.index (i, resize_ok);
       retval.dimensions = dummy.dims ();
@@ -854,7 +854,7 @@
     retval.dimensions = retval.xvals[0].dims ();
   else
     {
-      // Use dummy array. FIXME: Need(?) a better solution.
+      // Use dummy array.  FIXME: Need(?) a better solution.
       Array<char> dummy (dimensions);
       dummy = dummy.index (i, j, resize_ok);
       retval.dimensions = dummy.dims ();
@@ -878,7 +878,7 @@
     retval.dimensions = retval.xvals[0].dims ();
   else
     {
-      // Use dummy array. FIXME: Need(?) a better solution.
+      // Use dummy array.  FIXME: Need(?) a better solution.
       Array<char> dummy (dimensions);
       dummy = dummy.index (ia, resize_ok);
       retval.dimensions = dummy.dims ();
@@ -946,7 +946,7 @@
   return retval;
 }
 
-// Perhaps one day these will be optimized. Right now, they just call index.
+// Perhaps one day these will be optimized.  Right now, they just call index.
 octave_map
 octave_map::column (octave_idx_type k) const
 {
@@ -976,7 +976,7 @@
         dimensions = xvals[0].dims ();
       else
         {
-          // Use dummy array. FIXME: Need(?) a better solution.
+          // Use dummy array.  FIXME: Need(?) a better solution.
           Array<char> dummy (dimensions), rhs_dummy (rhs.dimensions);
           dummy.assign (i, rhs_dummy);;
           dimensions = dummy.dims ();
@@ -1024,7 +1024,7 @@
         dimensions = xvals[0].dims ();
       else
         {
-          // Use dummy array. FIXME: Need(?) a better solution.
+          // Use dummy array.  FIXME: Need(?) a better solution.
           Array<char> dummy (dimensions), rhs_dummy (rhs.dimensions);
           dummy.assign (i, j, rhs_dummy);;
           dimensions = dummy.dims ();
@@ -1072,7 +1072,7 @@
         dimensions = xvals[0].dims ();
       else
         {
-          // Use dummy array. FIXME: Need(?) a better solution.
+          // Use dummy array.  FIXME: Need(?) a better solution.
           Array<char> dummy (dimensions), rhs_dummy (rhs.dimensions);
           dummy.assign (ia, rhs_dummy);;
           dimensions = dummy.dims ();
@@ -1208,7 +1208,7 @@
     dimensions = xvals[0].dims ();
   else
     {
-      // Use dummy array. FIXME: Need(?) a better solution.
+      // Use dummy array.  FIXME: Need(?) a better solution.
       Array<char> dummy (dimensions);
       dummy.delete_elements (i);
       dimensions = dummy.dims ();
@@ -1228,7 +1228,7 @@
     dimensions = xvals[0].dims ();
   else
     {
-      // Use dummy array. FIXME: Need(?) a better solution.
+      // Use dummy array.  FIXME: Need(?) a better solution.
       Array<char> dummy (dimensions);
       dummy.delete_elements (dim, i);
       dimensions = dummy.dims ();
@@ -1248,7 +1248,7 @@
     dimensions = xvals[0].dims ();
   else
     {
-      // Use dummy array. FIXME: Need(?) a better solution.
+      // Use dummy array.  FIXME: Need(?) a better solution.
       Array<char> dummy (dimensions);
       dummy.delete_elements (ia);
       dimensions = dummy.dims ();
--- a/libinterp/corefcn/oct-map.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/oct-map.h	Thu May 19 18:48:52 2016 -0700
@@ -34,7 +34,7 @@
 
 class string_vector;
 
-// A class holding a map field->index. Supports reference-counting.
+// A class holding a map field->index.  Supports reference-counting.
 class OCTINTERP_API
 octave_fields
 {
@@ -115,15 +115,15 @@
   // check whether a field exists.
   bool isfield (const std::string& name) const;
 
-  // get index of field. return -1 if not exist
+  // get index of field.  return -1 if not exist
   octave_idx_type getfield (const std::string& name) const;
-  // get index of field. add if not exist
+  // get index of field.  add if not exist
   octave_idx_type getfield (const std::string& name);
   // remove field and return the index. -1 if didn't exist.
   octave_idx_type rmfield (const std::string& name);
 
-  // order the fields of this map. creates a permutation
-  // used to order the fields.
+  // order the fields of this map.
+  // creates a permutation used to order the fields.
   void orderfields (Array<octave_idx_type>& perm);
 
   // compares two instances for equality up to order of fields.
@@ -172,8 +172,9 @@
     return *this;
   }
 
-  // iteration support. note that both const and non-const iterators are the
-  // same. The const/non-const distinction is made by the key & contents method.
+  // iteration support.
+  // note that both const and non-const iterators are the same.
+  // The const/non-const distinction is made by the key & contents method.
   typedef octave_fields::const_iterator const_iterator;
   typedef const_iterator iterator;
 
@@ -215,15 +216,15 @@
   string_vector keys (void) const
   { return fieldnames (); }
 
-  // get contents of a given field. empty value if not exist.
+  // get contents of a given field.  empty value if not exist.
   octave_value getfield (const std::string& key) const;
 
-  // set contents of a given field. add if not exist.
+  // set contents of a given field.  add if not exist.
   void setfield (const std::string& key, const octave_value& val);
   void assign (const std::string& k, const octave_value& val)
   { setfield (k, val); }
 
-  // remove a given field. do nothing if not exist.
+  // remove a given field.  do nothing if not exist.
   void rmfield (const std::string& key);
   void del (const std::string& k) { rmfield (k); }
 
@@ -294,8 +295,9 @@
     return *this;
   }
 
-  // iteration support. note that both const and non-const iterators are the
-  // same. The const/non-const distinction is made by the key & contents method.
+  // iteration support.
+  // note that both const and non-const iterators are the same.
+  // The const/non-const distinction is made by the key & contents method.
   typedef octave_fields::const_iterator const_iterator;
   typedef const_iterator iterator;
 
@@ -337,10 +339,10 @@
   string_vector keys (void) const
   { return fieldnames (); }
 
-  // get contents of a given field. empty value if not exist.
+  // get contents of a given field.  empty value if not exist.
   Cell getfield (const std::string& key) const;
 
-  // set contents of a given field. add if not exist. checks for
+  // set contents of a given field.  add if not exist.  checks for
   // correct dimensions.
   void setfield (const std::string& key, const Cell& val);
   void assign (const std::string& k, const Cell& val)
--- a/libinterp/corefcn/oct-stream.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/oct-stream.cc	Thu May 19 18:48:52 2016 -0700
@@ -1263,7 +1263,7 @@
   }
 
   // Report if any characters have been consumed.
-  // (get, read etc. not cancelled by putback or seekg)
+  // (get, read, etc. not cancelled by putback or seekg)
 
   void progress_benchmark (void) { progress_marker = idx; }
 
@@ -4225,7 +4225,7 @@
     }
 
   // If conversion produces an integer that overflows, failbit is set but
-  // value is non-zero. We want to treat this case as success, so clear
+  // value is non-zero.  We want to treat this case as success, so clear
   // failbit from the stream state to keep going.
   // FIXME: Maybe set error state on octave stream as above? Matlab does
   // *not* indicate an error message on overflow.
@@ -4264,7 +4264,7 @@
 }
 
 // Note that this specialization is only used for reading characters, not
-// character strings. See BEGIN_S_CONVERSION for details.
+// character strings.  See BEGIN_S_CONVERSION for details.
 
 template <>
 std::istream&
--- a/libinterp/corefcn/pr-output.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/pr-output.cc	Thu May 19 18:48:52 2016 -0700
@@ -1982,7 +1982,7 @@
 
           pr_scale_header (os, scale);
 
-          // kluge. Get the true width of a number.
+          // kluge.  Get the true width of a number.
           int zero_fw;
 
           {
@@ -2402,7 +2402,7 @@
 
           pr_scale_header (os, scale);
 
-          // kluge. Get the true width of a number.
+          // kluge.  Get the true width of a number.
           int zero_fw;
 
           {
@@ -2886,7 +2886,7 @@
                        bool pr_as_read_syntax, int /* extra_indent */)
 {
   // FIXME: this mostly duplicates the code in the print_nd_array<>
-  // function. Can fix this with std::is_same from C++11.
+  // function.  Can fix this with std::is_same from C++11.
 
   if (nda.is_empty ())
     print_empty_nd_array (os, nda.dims (), pr_as_read_syntax);
@@ -3155,7 +3155,7 @@
                                 bool pr_as_read_syntax, int extra_indent)
 {
   // FIXME: this mostly duplicates the code in the print_nd_array<>
-  // function. Can fix this with std::is_same from C++11.
+  // function.  Can fix this with std::is_same from C++11.
 
   if (nda.is_empty ())
     print_empty_nd_array (os, nda.dims (), pr_as_read_syntax);
@@ -3929,7 +3929,7 @@
 @item  short eng\n\
 @itemx long eng\n\
 Identical to @samp{short e} or @samp{long e} but displays the value\n\
-using an engineering format, where the exponent is divisible by 3. For\n\
+using an engineering format, where the exponent is divisible by 3.  For\n\
 example, with the @samp{short eng} format, @code{10 * pi} is displayed as\n\
 @code{31.4159e+00}.\n\
 \n\
--- a/libinterp/corefcn/pt-jit.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/pt-jit.cc	Thu May 19 18:48:52 2016 -0700
@@ -105,7 +105,8 @@
 // -------------------- jit_break_exception --------------------
 
 // jit_break is thrown whenever a branch we are converting has only breaks or
-// continues. This is because all code that follows a break or continue is dead.
+// continues.  This is because all code that follows a break or continue
+// is dead.
 class jit_break_exception : public std::exception {};
 
 // -------------------- jit_convert --------------------
@@ -377,7 +378,7 @@
 {
   // Note we do an initial check to see if the loop will run atleast once.
   // This allows us to get better type inference bounds on variables defined
-  // and used only inside the for loop (e.g. the index variable)
+  // and used only inside the for loop (e.g., the index variable)
 
   // If we are a nested for loop we need to store the previous breaks
   octave::unwind_protect frame;
@@ -550,12 +551,12 @@
   size_t last_else = static_cast<size_t> (last->is_else_clause ());
 
   // entry_blocks represents the block you need to enter in order to execute
-  // the condition check for the ith clause. For the else, it is simple the
-  // else body. If there is no else body, then it is padded with the tail
+  // the condition check for the ith clause.  For the else, it is simple the
+  // else body.  If there is no else body, then it is padded with the tail.
   std::vector<jit_block *> entry_blocks (lst.size () + 1 - last_else);
   entry_blocks[0] = block;
 
-  // we need to construct blocks first, because they have jumps to eachother
+  // we need to construct blocks first, because they have jumps to each other.
   tree_if_command_list::iterator iter = lst.begin ();
   ++iter;
   for (size_t i = 1; iter != lst.end (); ++iter, ++i)
@@ -758,8 +759,8 @@
 
   if (op != octave_value::op_asn_eq)
     {
-      // do the equivlent binary operation, then assign. This is always correct,
-      // but isn't always optimal.
+      // Do the equivalent binary operation, then assign.
+      // This is always correct, but it isn't always optimal.
       tree_expression *lhs = tsa.left_hand_side ();
       jit_value *lhsv = visit (lhs);
       octave_value::binary_op bop = octave_value::assign_op_to_binary_op (op);
@@ -857,7 +858,7 @@
 
   std::vector<jit_block *> entry_blocks (case_blocks_num + 1 - has_otherwise);
 
-  // the first entry point is always the actual block. afterward new blocks
+  // the first entry point is always the actual block.  Afterward, new blocks
   // are created for every case and the otherwise branch
   entry_blocks[0] = block;
   for (size_t i = 1; i < case_blocks_num; ++i)
@@ -2158,9 +2159,9 @@
 bool
 tree_jit::enabled (void)
 {
-  // Ideally, we should only disable JIT if there is a breakpoint in the code we
-  // are about to run. However, we can't figure this out in O(1) time, so we
-  // conservatively check for the existence of any breakpoints.
+  // Ideally, we should only disable JIT if there is a breakpoint in the code
+  // we are about to run. However, we can't figure this out in O(1) time, so
+  // we conservatively check for the existence of any breakpoints.
   return Vjit_enable && ! bp_table::have_breakpoints ()
          && ! Vdebug_on_interrupt && ! Vdebug_on_error;
 }
--- a/libinterp/corefcn/pt-jit.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/pt-jit.h	Thu May 19 18:48:52 2016 -0700
@@ -198,21 +198,21 @@
 
   jit_call *create_checked_impl (jit_call *ret);
 
-  // get an existing vairable. If the variable does not exist, it will not be
+  // get an existing vairable.  If the variable does not exist, it will not be
   // created
   jit_variable *find_variable (const std::string& vname) const;
 
-  // get a variable, create it if it does not exist. The type will default to
+  // get a variable, create it if it does not exist.  The type will default to
   // the variable's current type in the symbol table.
   jit_variable *get_variable (const std::string& vname);
 
-  // create a variable of the given name and given type. Will also insert an
+  // create a variable of the given name and given type.  Will also insert an
   // extract statement
   jit_variable *create_variable (const std::string& vname, jit_type *type,
                                  bool isarg = true);
 
-  // The name of the next for loop iterator. If inc is false, then the iterator
-  // counter will not be incremented.
+  // The name of the next for loop iterator.  If inc is false, then the
+  // iterator counter will not be incremented.
   std::string next_iterator (bool inc = true)
   { return next_name ("#iter", iterator_count, inc); }
 
--- a/libinterp/corefcn/quadcc.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/quadcc.cc	Thu May 19 18:48:52 2016 -0700
@@ -1396,7 +1396,7 @@
 
 // Allocates a workspace for the given maximum number of intervals.
 // Note that if the workspace gets filled, the intervals with the lowest
-// error estimates are dropped. The maximum number of intervals is
+// error estimates are dropped.  The maximum number of intervals is
 // therefore not the maximum number of intervals that will be computed,
 // but merely the size of the buffer.
 
--- a/libinterp/corefcn/qz.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/qz.cc	Thu May 19 18:48:52 2016 -0700
@@ -443,7 +443,7 @@
   std::cout << "qz: check argument 1" << std::endl;
 #endif
 
-  // Argument 1: check if it's o.k. dimensioned.
+  // Argument 1: check if it's okay dimensioned.
   octave_idx_type nn = args(0).rows ();
 
 #if defined (DEBUG)
--- a/libinterp/corefcn/sparse-xpow.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/sparse-xpow.cc	Thu May 19 18:48:52 2016 -0700
@@ -52,7 +52,7 @@
 }
 
 
-// Safer pow functions. Only two make sense for sparse matrices, the
+// Safer pow functions.  Only two make sense for sparse matrices, the
 // others should all promote to full matrices.
 
 octave_value
@@ -64,7 +64,7 @@
   octave_idx_type nc = a.cols ();
 
   if (nr == 0 || nc == 0 || nr != nc)
-    error ("for A^b, A must be a square matrix. Use .^ for elementwise power.");
+    error ("for A^b, A must be a square matrix.  Use .^ for elementwise power.");
 
   if (static_cast<int> (b) != b)
     error ("use full(a) ^ full(b)");
@@ -133,7 +133,7 @@
   octave_idx_type nc = a.cols ();
 
   if (nr == 0 || nc == 0 || nr != nc)
-    error ("for A^b, A must be a square matrix. Use .^ for elementwise power.");
+    error ("for A^b, A must be a square matrix.  Use .^ for elementwise power.");
 
   if (static_cast<int> (b) != b)
     error ("use full(a) ^ full(b)");
@@ -319,7 +319,7 @@
 {
   // FIXME: What should a .^ 0 give?  Matlab gives a
   // sparse matrix with same structure as a, which is strictly
-  // incorrect. Keep compatibility.
+  // incorrect.  Keep compatibility.
 
   octave_value retval;
 
@@ -439,9 +439,9 @@
 done:
 
   // This is a dumb operator for sparse matrices anyway, and there is
-  // no sensible way to handle the 0.^0 versus the 0.^x cases. Therefore
+  // no sensible way to handle the 0.^0 versus the 0.^x cases.  Therefore
   // allocate a full matrix filled for the 0.^0 case and shrink it later
-  // as needed
+  // as needed.
 
   if (convert_to_complex)
     {
--- a/libinterp/corefcn/strfind.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/strfind.cc	Thu May 19 18:48:52 2016 -0700
@@ -307,7 +307,7 @@
           if (overlaps)
             {
               retsiz = 0;
-              // OMG. Is this the "right answer" MW always looks for, or
+              // OMG.  Is this the "right answer" MW always looks for, or
               // someone was just lazy?
               octave_idx_type k = 0;
               for (octave_idx_type i = 0; i < nidx; i++)
--- a/libinterp/corefcn/strfns.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/strfns.cc	Thu May 19 18:48:52 2016 -0700
@@ -604,7 +604,7 @@
 %!error strcmp ("foo", "bar", 3)
 */
 
-// Apparently, Matlab ignores the dims with strncmp. It also
+// Apparently, Matlab ignores the dims with strncmp.
 static bool
 strncmp_array_op (const charNDArray& s1, const charNDArray& s2,
                   octave_idx_type n)
@@ -615,7 +615,7 @@
           && std::equal (s1.data (), s1.data () + n, s2.data ()));
 }
 
-// Otherwise, just use strings. Note that we neither extract substrings (which
+// Otherwise, just use strings.  Note that we neither extract substrings (which
 // would mean a copy, at least in GCC), nor use string::compare (which is a
 // 3-way compare).
 static bool
--- a/libinterp/corefcn/symtab.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/symtab.cc	Thu May 19 18:48:52 2016 -0700
@@ -91,9 +91,9 @@
   octave_user_function *fcn = curr_fcn;
 
   // FIXME: If active_context () == -1, then it does not make much
-  // sense to use this symbol_record. This means an attempt at accessing
+  // sense to use this symbol_record.  This means an attempt at accessing
   // a variable from a function that has not been called yet is
-  // happening. This should be cleared up when an implementing closures.
+  // happening.  This should be cleared up when an implementing closures.
 
   return fcn && fcn->active_context () != static_cast<context_id> (-1)
          ? fcn->active_context () : xcurrent_context;
@@ -444,7 +444,7 @@
   else
     {
       // Classdef constructors can be defined anywhere in the path, not
-      // necessarily in @-folders. Look for a normal function and load it.
+      // necessarily in @-folders.  Look for a normal function and load it.
       // If the loaded function is a classdef constructor, store it as such
       // and restore function_on_path to its previous value.
 
@@ -586,8 +586,8 @@
 }
 
 // :-) JWE, can you parse this? Returns a 2D array with second dimension equal
-// to btyp_num_types (static constant). Only the leftmost dimension can be
-// variable in C/C++. Typedefs are boring.
+// to btyp_num_types (static constant).  Only the leftmost dimension can be
+// variable in C/C++.  Typedefs are boring.
 
 static builtin_type_t (*build_sup_table (void))[btyp_num_types]
 {
@@ -1633,7 +1633,7 @@
       symbol_table *inst = iter->second;
       iter->second = 0;
 
-      // Now delete the scope. Note that there may be side effects, such as
+      // Now delete the scope.  Note that there may be side effects, such as
       // deleting other scopes.
       delete inst;
     }
--- a/libinterp/corefcn/symtab.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/symtab.h	Thu May 19 18:48:52 2016 -0700
@@ -1781,7 +1781,7 @@
     //   error ("clear: no such function '%s'", name.c_str ());
   }
 
-  // This clears oct and mex files, incl. autoloads.
+  // This clears oct and mex files, including autoloads.
   static void clear_dld_function (const std::string& name)
   {
     fcn_table_iterator p = fcn_table.find (name);
@@ -2292,7 +2292,7 @@
     symbol_table *inst = get_instance (scope);
     // FIXME: normally, functions should not usurp each other's scope.
     // If for any incredible reason this is needed, call
-    // set_user_function (0, scope) first. This may cause problems with
+    // set_user_function (0, scope) first.  This may cause problems with
     // nested functions, as the curr_fcn of symbol_records must be updated.
     assert (inst->curr_fcn == 0 || curr_fcn == 0);
     inst->curr_fcn = curr_fcn;
--- a/libinterp/corefcn/time.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/time.cc	Thu May 19 18:48:52 2016 -0700
@@ -472,7 +472,7 @@
 the control of the format string @var{fmt}.\n\
 \n\
 If @var{fmt} fails to match, @var{nchars} is 0; otherwise, it is set to the\n\
-position of last matched character plus 1. Always check for this unless\n\
+position of last matched character plus 1.  Always check for this unless\n\
 you're absolutely sure the date string will be parsed correctly.\n\
 @seealso{strftime, localtime, gmtime, mktime, time, now, date, clock, datenum, datestr, datevec, calendar, weekday}\n\
 @end deftypefn")
--- a/libinterp/corefcn/typecast.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/typecast.cc	Thu May 19 18:48:52 2016 -0700
@@ -55,7 +55,7 @@
                        octave::unwind_protect& frame)
 {
   // The array given may be a temporary, constructed from a scalar or sparse
-  // array. This will ensure the data will be deallocated after we exit.
+  // array.  This will ensure the data will be deallocated after we exit.
   frame.add_delete (new ArrayType (array));
 
   data = reinterpret_cast<const void *> (array.data ());
--- a/libinterp/corefcn/variables.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/variables.cc	Thu May 19 18:48:52 2016 -0700
@@ -1091,7 +1091,7 @@
                 {
                   a = param.first_parameter_length - param.balance;
                   a = (a < 0 ? 0 : a);
-                  b = param.parameter_length - a - param.text . length ();
+                  b = param.parameter_length - a - param.text.length ();
                   b = (b < 0 ? 0 : b);
                   os << std::setiosflags (std::ios::left) << std::setw (a)
                      << "" << std::resetiosflags (std::ios::left) << param.text
@@ -1556,7 +1556,7 @@
                 // Have to calculate space needed for printing
                 // matrix dimensions Space needed for Size column is
                 // hard to determine in prior, because it depends on
-                // dimensions to be shown. That is why it is
+                // dimensions to be shown.  That is why it is
                 // recalculated for each Size-command int first,
                 // rest = 0, total;
                 int rest = 0;
--- a/libinterp/corefcn/xpow.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/xpow.cc	Thu May 19 18:48:52 2016 -0700
@@ -64,7 +64,7 @@
 static void
 err_nonsquare_matrix (void)
 {
-  error ("for x^A, A must be a square matrix. Use .^ for elementwise power.");
+  error ("for x^A, A must be a square matrix.  Use .^ for elementwise power.");
 }
 
 static inline int
--- a/libinterp/corefcn/zfstream.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/zfstream.cc	Thu May 19 18:48:52 2016 -0700
@@ -64,7 +64,7 @@
 gzfilebuf::~gzfilebuf ()
 {
   // Sync output buffer and close only if responsible for file
-  // (i.e. attached streams should be left open at this stage)
+  // (i.e., attached streams should be left open at this stage)
   this->sync ();
   if (own_fd)
     this->close ();
@@ -210,9 +210,9 @@
     return 0;
 }
 
-// Puts back a character to the stream in two cases. Firstly, when there
+// Puts back a character to the stream in two cases.  Firstly, when there
 // is no putback position available, and secondly when the character putback
-// differs from the one in the file. We can only support the first case
+// differs from the one in the file.  We can only support the first case
 // with gzipped files.
 gzfilebuf::int_type
 gzfilebuf::pbackfail (gzfilebuf::int_type c)
@@ -379,7 +379,7 @@
   return this;
 }
 
-// Write put area to gzipped file (i.e. ensures that put area is empty)
+// Write put area to gzipped file (i.e., ensures that put area is empty)
 int
 gzfilebuf::sync ()
 {
--- a/libinterp/corefcn/zfstream.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/corefcn/zfstream.h	Thu May 19 18:48:52 2016 -0700
@@ -44,9 +44,9 @@
 /**
  *  @brief  Gzipped file stream buffer class.
  *
- *  This class implements basic_filebuf for gzipped files. It doesn't yet
+ *  This class implements basic_filebuf for gzipped files.  It doesn't yet
  *  support seeking (allowed by zlib but slow/limited), putback and read/write
- *  access *  (tricky). Otherwise, it attempts to be a drop-in replacement for
+ *  access *  (tricky).  Otherwise, it attempts to be a drop-in replacement for
  *  the standard file streambuf.
 */
 class gzfilebuf : public std::streambuf
@@ -66,7 +66,7 @@
    *  @return  Z_OK on success, Z_STREAM_ERROR otherwise.
    *
    *  Unfortunately, these parameters cannot be modified separately, as the
-   *  previous zfstream version assumed. Since the strategy is seldom changed,
+   *  previous zfstream version assumed.  Since the strategy is seldom changed,
    *  it can default and setcompression(level) then becomes like the old
    *  setcompressionlevel(level).
   */
@@ -132,7 +132,7 @@
    *  @return  First character in get area on success, EOF on error.
    *
    *  This actually reads characters from gzipped file to stream
-   *  buffer. Always buffered.
+   *  buffer.  Always buffered.
   */
   virtual int_type
   underflow ();
@@ -143,7 +143,7 @@
    *  @return  Non-EOF on success, EOF on error.
    *
    *  This actually writes characters in stream buffer to
-   *  gzipped file. With unbuffered output this is done one
+   *  gzipped file.  With unbuffered output this is done one
    *  character at a time.
   */
   virtual int_type
@@ -209,8 +209,8 @@
   /**
    *  @brief  Allocate internal buffer.
    *
-   *  This function is safe to call multiple times. It will ensure
-   *  that a proper internal buffer exists if it is required. If the
+   *  This function is safe to call multiple times.  It will ensure
+   *  that a proper internal buffer exists if it is required.  If the
    *  buffer already exists or is external, the buffer pointers will be
    *  reset to their original state.
   */
@@ -220,8 +220,8 @@
   /**
    *  @brief  Destroy internal buffer.
    *
-   *  This function is safe to call multiple times. It will ensure
-   *  that the internal buffer is deallocated if it exists. In any
+   *  This function is safe to call multiple times.  It will ensure
+   *  that the internal buffer is deallocated if it exists.  In any
    *  case, it will also reset the buffer pointers.
   */
   void
@@ -273,7 +273,7 @@
 /**
  *  @brief  Gzipped file input stream class.
  *
- *  This class implements ifstream for gzipped files. Seeking and putback
+ *  This class implements ifstream for gzipped files.  Seeking and putback
  *  is not supported yet.
 */
 class gzifstream : public std::istream
@@ -320,10 +320,10 @@
    *  @param  mode  Open mode flags (forced to contain ios::in).
    *
    *  Stream will be in state good() if file opens successfully;
-   *  otherwise in state fail(). This differs from the behavior of
+   *  otherwise in state fail().  This differs from the behavior of
    *  ifstream, which never sets the state to good() and therefore
    *  won't allow you to reuse the stream for a second file unless
-   *  you manually clear() the state. The choice is a matter of
+   *  you manually clear() the state.  The choice is a matter of
    *  convenience.
   */
   void
@@ -360,7 +360,7 @@
 /**
  *  @brief  Gzipped file output stream class.
  *
- *  This class implements ofstream for gzipped files. Seeking and putback
+ *  This class implements ofstream for gzipped files.  Seeking and putback
  *  is not supported yet.
 */
 class gzofstream : public std::ostream
@@ -407,10 +407,10 @@
    *  @param  mode  Open mode flags (forced to contain ios::out).
    *
    *  Stream will be in state good() if file opens successfully;
-   *  otherwise in state fail(). This differs from the behavior of
+   *  otherwise in state fail().  This differs from the behavior of
    *  ofstream, which never sets the state to good() and therefore
    *  won't allow you to reuse the stream for a second file unless
-   *  you manually clear() the state. The choice is a matter of
+   *  you manually clear() the state.  The choice is a matter of
    *  convenience.
   */
   void
@@ -447,7 +447,7 @@
 /**
  *  @brief  Gzipped file output stream manipulator class.
  *
- *  This class defines a two-argument manipulator for gzofstream. It is used
+ *  This class defines a two-argument manipulator for gzofstream.  It is used
  *  as base for the setcompression(int,int) manipulator.
 */
 template <typename T1, typename T2>
--- a/libinterp/dldfcn/__glpk__.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/dldfcn/__glpk__.cc	Thu May 19 18:48:52 2016 -0700
@@ -116,7 +116,7 @@
         }
 
       // -- Set the objective coefficient of the corresponding
-      // -- structural variable. No constant term is assumed.
+      // -- structural variable.  No constant term is assumed.
       glp_set_obj_coef(lp,i+1,c[i]);
 
       if (isMIP)
@@ -400,14 +400,14 @@
 
     }
 
-  // 3rd Input. A column array containing the right-hand side value
-  //               for each constraint in the constraint matrix.
+  // 3rd Input.  A column array containing the right-hand side value
+  //             for each constraint in the constraint matrix.
   Matrix B = args(2).xmatrix_value ("__glpk__: invalid value of B");
 
   double *b = B.fortran_vec ();
 
-  // 4th Input. An array of length mrowsc containing the lower
-  //            bound on each of the variables.
+  // 4th Input.  An array of length mrowsc containing the lower
+  //             bound on each of the variables.
   Matrix LB = args(3).xmatrix_value ("__glpk__: invalid value of LB");
 
   if (LB.numel () < mrowsc)
@@ -428,8 +428,8 @@
         freeLB(i) = 0;
     }
 
-  // 5th Input. An array of at least length numcols containing the upper
-  //            bound on each of the variables.
+  // 5th Input.  An array of at least length numcols containing the upper
+  //             bound on each of the variables.
   Matrix UB = args(4).xmatrix_value ("__glpk__: invalid value of UB");
 
   if (UB.numel () < mrowsc)
@@ -449,13 +449,13 @@
         freeUB(i) = 0;
     }
 
-  // 6th Input. A column array containing the sense of each constraint
-  //            in the constraint matrix.
+  // 6th Input.  A column array containing the sense of each constraint
+  //             in the constraint matrix.
   charMatrix CTYPE = args(5).xchar_matrix_value ("__glpk__: invalid value of CTYPE");
 
   char *ctype = CTYPE.fortran_vec ();
 
-  // 7th Input. A column array containing the types of the variables.
+  // 7th Input.  A column array containing the types of the variables.
   charMatrix VTYPE = args(6).xchar_matrix_value ("__glpk__: invalid value of VARTYPE");
 
   Array<int> vartype (dim_vector (mrowsc, 1));
@@ -471,7 +471,7 @@
         vartype(i) = GLP_CV;
     }
 
-  // 8th Input. Sense of optimization.
+  // 8th Input.  Sense of optimization.
   int sense;
   double SENSE = args(7).xscalar_value ("__glpk__: invalid value of SENSE");
 
@@ -480,7 +480,7 @@
   else
     sense = -1;
 
-  // 9th Input. A structure containing the control parameters.
+  // 9th Input.  A structure containing the control parameters.
   octave_scalar_map PARAM = args(8).xscalar_map_value ("__glpk__: invalid value of PARAM");
 
   control_params par;
--- a/libinterp/dldfcn/__init_fltk__.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/dldfcn/__init_fltk__.cc	Thu May 19 18:48:52 2016 -0700
@@ -508,7 +508,7 @@
   void update_seperator (const uimenu::properties& uimenup)
   {
     // Matlab places the separator before the current
-    // menu entry, while fltk places it after. So we need to find
+    // menu entry, while fltk places it after.  So we need to find
     // the previous item in this menu/submenu. (Kai)
     std::string fltk_label = uimenup.get_fltk_label ();
     if (! fltk_label.empty ())
@@ -970,7 +970,7 @@
 
   // Move the toolbar at the bottom of the plot_window.
   // The only reason for moving the toolbar is hiding and
-  // showing the menubar. All other resizing is done by fltk.
+  // showing the menubar.  All other resizing is done by fltk.
 
   void update_toolbar_position ()
   {
--- a/libinterp/dldfcn/__osmesa_print__.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/dldfcn/__osmesa_print__.cc	Thu May 19 18:48:52 2016 -0700
@@ -188,7 +188,7 @@
 
       // Remove alpha channel
       idx(2) = idx_vector (0, 3);
-      retval = octave_value (img.permute (perm). index(idx));
+      retval = octave_value (img.permute (perm).index(idx));
     }
 
   OSMesaDestroyContext (ctx);
--- a/libinterp/dldfcn/ccolamd.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/dldfcn/ccolamd.cc	Thu May 19 18:48:52 2016 -0700
@@ -226,7 +226,7 @@
     {
       if (args(0).is_complex_type ())
         {
-          scm = args(0). sparse_complex_matrix_value ();
+          scm = args(0).sparse_complex_matrix_value ();
           n_row = scm.rows ();
           n_col = scm.cols ();
           nnz = scm.nnz ();
@@ -373,7 +373,7 @@
 \n\
 @end table\n\
 \n\
-@var{cmember} is an optional vector of length n. It defines the constraints\n\
+@var{cmember} is an optional vector of length n.  It defines the constraints\n\
 on the ordering.  If @code{@var{cmember}(j) = @var{S}}, then row/column j is\n\
 in constraint set @var{c} (@var{c} must be in the range 1 to n).  In the\n\
 output permutation @var{p}, rows/columns in set 1 appear first, followed\n\
--- a/libinterp/dldfcn/colamd.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/dldfcn/colamd.cc	Thu May 19 18:48:52 2016 -0700
@@ -346,7 +346,7 @@
     {
       if (args(0).is_complex_type ())
         {
-          scm = args(0). sparse_complex_matrix_value ();
+          scm = args(0).sparse_complex_matrix_value ();
           n_row = scm.rows ();
           n_col = scm.cols ();
           nnz = scm.nnz ();
--- a/libinterp/dldfcn/symrcm.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/dldfcn/symrcm.cc	Thu May 19 18:48:52 2016 -0700
@@ -79,7 +79,7 @@
 
 // A simple queue.
 // Queues Q have a fixed maximum size N (rows,cols of the matrix) and are
-// stored in an array. qh and qt point to queue head and tail.
+// stored in an array.  qh and qt point to queue head and tail.
 
 // Enqueue operation (adds a node "o" at the tail)
 
@@ -112,7 +112,7 @@
 // the parent of entry i
 #define PARENT(i)       (((i) - 1) >> 1)        // = floor(((i)-1)/2)
 
-// Builds a min-heap (the root contains the smallest element). A is an array
+// Builds a min-heap (the root contains the smallest element).  A is an array
 // with the graph's nodes, i is a starting position, size is the length of A.
 
 static void
@@ -143,7 +143,7 @@
     }
 }
 
-// Heap operation insert. Running time is O(log(n))
+// Heap operation insert.  Running time is O(log(n))
 
 static void
 H_insert (CMK_Node *H, octave_idx_type& h, const CMK_Node& o)
@@ -169,7 +169,7 @@
   while (i > 0);
 }
 
-// Heap operation remove-min. Removes the smalles element in O(1) and
+// Heap operation remove-min.  Removes the smalles element in O(1) and
 // reorganizes the heap optionally in O(log(n))
 
 inline static CMK_Node
@@ -185,7 +185,7 @@
 // Predicate (heap empty)
 #define H_empty(H, h)   ((h) == 0)
 
-// Helper function for the Cuthill-McKee algorithm. Tries to determine a
+// Helper function for the Cuthill-McKee algorithm.  Tries to determine a
 // pseudo-peripheral node of the graph as starting node.
 
 static octave_idx_type
@@ -322,8 +322,8 @@
   return x.id;
 }
 
-// Calculates the node's degrees. This means counting the nonzero elements
-// in the symmetric matrix' rows. This works for non-symmetric matrices
+// Calculates the node's degrees.  This means counting the nonzero elements
+// in the symmetric matrix' rows.  This works for non-symmetric matrices
 // as well.
 
 static octave_idx_type
@@ -503,11 +503,11 @@
       return ovl (P);
     }
 
-  // a heap for the a node's neighbors. The number of neighbors is
+  // a heap for the a node's neighbors.  The number of neighbors is
   // limited by the maximum degree max_deg:
   OCTAVE_LOCAL_BUFFER (CMK_Node, S, max_deg);
 
-  // a queue for the BFS. The array is always one element larger than
+  // a queue for the BFS.  The array is always one element larger than
   // the number of entries that are stored.
   OCTAVE_LOCAL_BUFFER (CMK_Node, Q, N+1);
 
@@ -515,7 +515,7 @@
   octave_idx_type c = -1;
 
   // upper bound for the bandwidth (=quality of solution)
-  // initialize the bandwidth of the graph with 0. B contains the
+  // initialize the bandwidth of the graph with 0.  B contains the
   // the maximum of the theoretical lower limits of the subgraphs
   // bandwidths.
   octave_idx_type B = 0;
@@ -538,7 +538,7 @@
       v.id = find_starting_node (N, ridx, cidx, ridx2, cidx2, D, i);
 
       // mark the node as visited and enqueue it (a starting node
-      // for the BFS). Since the node will be a root of a spanning
+      // for the BFS).  Since the node will be a root of a spanning
       // tree, its dist is 0.
       v.deg = D[v.id];
       v.dist = 0;
@@ -674,9 +674,9 @@
           if (Bsub < level_N)
             Bsub = level_N;
         }
-      // finish of BFS. If there are still unvisited nodes in the graph
-      // then it is split into CCs. The computed bandwidth is the maximum
-      // of all subgraphs. Update:
+      // finish of BFS.  If there are still unvisited nodes in the graph
+      // then it is split into CCs.  The computed bandwidth is the maximum
+      // of all subgraphs.  Update:
       if (Bsub > B)
         B = Bsub;
     }
--- a/libinterp/octave-value/ov-base-diag.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-base-diag.cc	Thu May 19 18:48:52 2016 -0700
@@ -77,7 +77,7 @@
   octave_value retval;
   if (matrix.rows () == 1 || matrix.cols () == 1)
     {
-      // Rather odd special case. This is a row or column vector
+      // Rather odd special case.  This is a row or column vector
       // represented as a diagonal matrix with a single nonzero entry, but
       // Fdiag semantics are to product a diagonal matrix for vector
       // inputs.
@@ -503,13 +503,13 @@
     error ("load: failed to load diagonal matrix constant");
 
   // This is a little tricky, as we have the Matrix type, but
-  // not ColumnVector type. We need to help the compiler get
+  // not ColumnVector type.  We need to help the compiler get
   // through the inheritance tree.
   typedef typename DMT::element_type el_type;
   matrix = DMT (MDiagArray2<el_type> (MArray<el_type> (tmp)));
   matrix.resize (r, c);
 
-  // Invalidate cache. Probably not necessary, but safe.
+  // Invalidate cache.  Probably not necessary, but safe.
   dense_cache = octave_value ();
 
   return true;
--- a/libinterp/octave-value/ov-base-mat.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-base-mat.cc	Thu May 19 18:48:52 2016 -0700
@@ -346,7 +346,7 @@
 
             if (scalar_opt)
               {
-                // optimize all scalar indices. Don't construct
+                // optimize all scalar indices.  Don't construct
                 // an index array, but rather calc a scalar index directly.
                 octave_idx_type n = 1;
                 octave_idx_type j = 0;
--- a/libinterp/octave-value/ov-base.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-base.h	Thu May 19 18:48:52 2016 -0700
@@ -215,7 +215,7 @@
 
   virtual ~octave_base_value (void) { }
 
-  // Unconditional clone. Always clones.
+  // Unconditional clone.  Always clones.
   virtual octave_base_value *
   clone (void) const { return new octave_base_value (*this); }
 
@@ -223,7 +223,7 @@
   virtual octave_base_value *
   empty_clone (void) const;
 
-  // Unique clone. Usually clones, but may be overridden to fake the
+  // Unique clone.  Usually clones, but may be overridden to fake the
   // cloning when sharing copies is to be controlled from within an
   // instance (see octave_class).
   virtual octave_base_value *
@@ -691,7 +691,7 @@
 
   virtual void dump (std::ostream& os) const;
 
-  // Standard mappers. Register new ones here.
+  // Standard mappers.  Register new ones here.
   enum unary_mapper_t
   {
     umap_abs,
@@ -764,12 +764,12 @@
   // These are fast indexing & assignment shortcuts for extracting
   // or inserting a single scalar from/to an array.
 
-  // Extract the n-th element, aka val(n). Result is undefined if val is not an
-  // array type or n is out of range. Never error.
+  // Extract the n-th element, aka val(n).  Result is undefined if val is not
+  // an array type or n is out of range.  Never error.
   virtual octave_value
   fast_elem_extract (octave_idx_type n) const;
 
-  // Assign the n-th element, aka val(n) = x. Returns false if val is not an
+  // Assign the n-th element, aka val(n) = x.  Returns false if val is not an
   // array type, x is not a matching scalar type, or n is out of range.
   // Never error.
   virtual bool
@@ -781,14 +781,14 @@
   virtual bool
   fast_elem_insert_self (void *where, builtin_type_t btyp) const;
 
-  // Grab the reference count. For use by jit.
+  // Grab the reference count.  For use by jit.
   void
   grab (void)
   {
     ++count;
   }
 
-  // Release the reference count. For use by jit.
+  // Release the reference count.  For use by jit.
   void
   release (void)
   {
--- a/libinterp/octave-value/ov-class.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-class.cc	Thu May 19 18:48:52 2016 -0700
@@ -203,7 +203,7 @@
 {
   if (count == obsolete_copies)
     {
-      // All remaining copies are obsolete. We don't actually need to clone.
+      // All remaining copies are obsolete.  We don't actually need to clone.
       count++;
       return this;
     }
@@ -539,7 +539,7 @@
           args(1) = make_idx_args (type, idx, "subsasgn");
           args(0) = obj;
 
-          // Now comes the magic. Count copies with me:
+          // Now comes the magic.  Count copies with me:
           // 1. myself (obsolete)
           // 2. the copy inside args (obsolete)
           // 3. the copy in method's symbol table (working)
@@ -549,7 +549,7 @@
           // But prior to doing that, check whether the routine is amenable
           // to the optimization.
           // It is essential that the handling function doesn't store extra
-          // copies anywhere. If it does, things will not break but the
+          // copies anywhere.  If it does, things will not break but the
           // optimization won't work.
 
           octave_value_list tmp;
--- a/libinterp/octave-value/ov-classdef.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-classdef.cc	Thu May 19 18:48:52 2016 -0700
@@ -440,7 +440,7 @@
       if (uf)
         {
           // At this point, the method is executing, but we still need to
-          // check the context object for which the method is executing. For
+          // check the context object for which the method is executing.  For
           // methods, it's the first argument of the function; for ctors, it
           // is the first return value.
 
@@ -873,7 +873,7 @@
   octave_value_list retval;
 
   // This variant of subsref is used to create temporary values when doing
-  // assignment with multi-level indexing. AFAIK this is only used for internal
+  // assignment with multi-level indexing.  AFAIK this is only used for internal
   // purpose (not sure we should even implement this) and any overload subsref
   // should not be called.
 
@@ -1690,7 +1690,7 @@
           if (! obj.ok ())
             obj = get_class ().construct_object (octave_value_list ());
           else
-            // Optimize the subsasgn call to come. There are 2 copies
+            // Optimize the subsasgn call to come.  There are 2 copies
             // that we can safely ignore:
             // - 1 in "array"
             // - 1 in "a"
@@ -2657,7 +2657,7 @@
 
   if (b)
     {
-      // Keep track of the get/set accessor methods. They will be used
+      // Keep track of the get/set accessor methods.  They will be used
       // later on when creating properties.
 
       std::map<std::string, octave_value> get_methods;
@@ -2741,7 +2741,7 @@
           //
           // FIXME: This is an "extension" to Matlab behavior, which only
           // looks in the @-folder containing the original classdef
-          // file. However, this is easier to implement it that way at
+          // file.  However, this is easier to implement it that way at
           // the moment.
 
           std::list<std::string> external_methods =
@@ -2776,7 +2776,7 @@
       // Property blocks
 
       // FIXME: default property expression should be able to call static
-      //        methods of the class being constructed. A restricted CLASSNAME
+      //        methods of the class being constructed.  A restricted CLASSNAME
       //        symbol should be added to the scope before evaluating default
       //        value expressions.
 
@@ -2857,7 +2857,7 @@
                        ait != amap.end (); ++ait)
                     prop.put (ait->first, ait->second);
 
-                  // Install property access methods, if any. Remove the
+                  // Install property access methods, if any.  Remove the
                   // accessor methods from the temporary storage map, so we can
                   // detect which ones are invalid and do not correspond to a
                   // defined property.
--- a/libinterp/octave-value/ov-classdef.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-classdef.h	Thu May 19 18:48:52 2016 -0700
@@ -730,12 +730,12 @@
     // The number of members in this class (methods, properties...)
     octave_idx_type member_count;
 
-    // TRUE if this class is a handle class. A class is a handle
+    // TRUE if this class is a handle class.  A class is a handle
     // class when the abstract "handle" class is one of its superclasses.
     bool handle_class;
 
     // The list of super-class constructors that are called implicitly by the
-    // the classdef engine when creating an object. These constructors are not
+    // the classdef engine when creating an object.  These constructors are not
     // called explicitly by the class constructor.
     std::list<cdef_class> implicit_ctor_list;
 
--- a/libinterp/octave-value/ov-fcn-handle.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-fcn-handle.cc	Thu May 19 18:48:52 2016 -0700
@@ -1572,7 +1572,7 @@
     }
   else
     {
-      // Globally visible (or no match yet). Query overloads.
+      // Globally visible (or no match yet).  Query overloads.
       std::list<std::string> classes = load_path::overloads (tnm);
       bool any_match = fptr != 0 || classes.size () > 0;
       if (! any_match)
--- a/libinterp/octave-value/ov-fcn-handle.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-fcn-handle.h	Thu May 19 18:48:52 2016 -0700
@@ -177,7 +177,7 @@
   // Whether the function is overloaded at all.
   bool has_overloads;
 
-  // Overloads for builtin types. We use array to make lookup faster.
+  // Overloads for builtin types.  We use array to make lookup faster.
   octave_value builtin_overloads[btyp_num_types];
 
   // Overloads for other classes.
--- a/libinterp/octave-value/ov-null-mat.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-null-mat.h	Thu May 19 18:48:52 2016 -0700
@@ -32,8 +32,8 @@
 // Design rationale:
 // The constructors are hidden.  There is only one null matrix (or null string)
 // object, that can have shallow copies.  Cloning the object returns just a
-// normal empty matrix, so all the shallow copies are, in fact, read-only. This
-// conveniently ensures that any attempt to fiddle with the null matrix
+// normal empty matrix, so all the shallow copies are, in fact, read-only.
+// This conveniently ensures that any attempt to fiddle with the null matrix
 // destroys its special status.
 
 // The special [] value.
--- a/libinterp/octave-value/ov-oncleanup.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-oncleanup.cc	Thu May 19 18:48:52 2016 -0700
@@ -91,7 +91,7 @@
     {
       throw;
     }
-  catch (...) // Yes, the black hole. We're in a d-tor.
+  catch (...) // Yes, the black hole.  We're in a d-tor.
     {
       // This shouldn't happen, in theory.
       error ("onCleanup: internal error: unhandled exception in cleanup action");
--- a/libinterp/octave-value/ov-perm.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-perm.cc	Thu May 19 18:48:52 2016 -0700
@@ -291,7 +291,7 @@
   for (octave_idx_type i = 0; i < n; i++) pvec(i) = tmp(i) - 1;
   matrix = PermMatrix (pvec, colp);
 
-  // Invalidate cache. Probably not necessary, but safe.
+  // Invalidate cache.  Probably not necessary, but safe.
   dense_cache = octave_value ();
 
   return true;
--- a/libinterp/octave-value/ov-range.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-range.cc	Thu May 19 18:48:52 2016 -0700
@@ -272,8 +272,7 @@
   if (! range.is_empty ())
     {
       // FIXME: this is a potential waste of memory.
-
-      Matrix m ((range.matrix_value () . all ()) . all ());
+      Matrix m ((range.matrix_value ().all ()).all ());
 
       retval = (m.rows () == 1 && m.columns () == 1 && m (0, 0) != 0.0);
     }
@@ -527,7 +526,7 @@
 // The following subroutines creates an HDF5 representation of the way
 // we will store Octave range types (triplets of floating-point numbers).
 // NUM_TYPE is the HDF5 numeric type to use for storage (e.g.
-// H5T_NATIVE_DOUBLE to save as 'double'). Note that any necessary
+// H5T_NATIVE_DOUBLE to save as 'double').  Note that any necessary
 // conversions are handled automatically by HDF5.
 
 static hid_t
--- a/libinterp/octave-value/ov-usr-fcn.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov-usr-fcn.h	Thu May 19 18:48:52 2016 -0700
@@ -317,7 +317,7 @@
   }
 
   // If we are a special expression, then the function body consists of exactly
-  // one expression. The expression's result is the return value of the
+  // one expression.  The expression's result is the return value of the
   // function.
   bool is_special_expr (void) const
   {
@@ -386,7 +386,7 @@
   octave_comment_list *trailing_comment (void) { return trail_comm; }
 
   // If is_special_expr is true, retrieve the sigular expression that forms the
-  // body. May be null (even if is_special_expr is true).
+  // body.  May be null (even if is_special_expr is true).
   tree_expression *special_expr (void);
 
   bool subsasgn_optimization_ok (void);
--- a/libinterp/octave-value/ov.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/octave-value/ov.h	Thu May 19 18:48:52 2016 -0700
@@ -1179,7 +1179,7 @@
 
   octave_value storable_value (void) const;
 
-  // Ditto, but in place, i.e. equivalent to *this = this->storable_value (),
+  // Ditto, but in place, i.e., equivalent to *this = this->storable_value (),
   // but possibly more efficient.
 
   void make_storable_value (void);
--- a/libinterp/operators/op-scm-cm.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/operators/op-scm-cm.cc	Thu May 19 18:48:52 2016 -0700
@@ -131,7 +131,7 @@
   const octave_complex_matrix& v2 = dynamic_cast<const octave_complex_matrix&> (a2);
   SparseComplexMatrix tmp (v2.complex_matrix_value ());
   return octave_value
-         (v1.sparse_complex_matrix_value (). concat (tmp, ra_idx));
+         (v1.sparse_complex_matrix_value ().concat (tmp, ra_idx));
 }
 
 DEFASSIGNOP (assign, sparse_complex_matrix, complex_matrix)
--- a/libinterp/operators/op-scm-cs.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/operators/op-scm-cs.cc	Thu May 19 18:48:52 2016 -0700
@@ -138,7 +138,7 @@
   const octave_complex& v2 = dynamic_cast<const octave_complex&> (a2);
   SparseComplexMatrix tmp (1, 1, v2.complex_value ());
   return octave_value
-         (v1.sparse_complex_matrix_value (). concat (tmp, ra_idx));
+         (v1.sparse_complex_matrix_value ().concat (tmp, ra_idx));
 }
 
 DEFASSIGNOP (assign, sparse_complex_matrix, complex)
--- a/libinterp/operators/op-scm-m.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/operators/op-scm-m.cc	Thu May 19 18:48:52 2016 -0700
@@ -129,7 +129,7 @@
   const octave_matrix& v2 = dynamic_cast<const octave_matrix&> (a2);
   SparseMatrix tmp (v2.matrix_value ());
   return octave_value
-         (v1.sparse_complex_matrix_value (). concat (tmp, ra_idx));
+         (v1.sparse_complex_matrix_value ().concat (tmp, ra_idx));
 }
 
 DEFASSIGNOP (assign, sparse_complex_matrix, matrix)
--- a/libinterp/operators/op-scm-s.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/operators/op-scm-s.cc	Thu May 19 18:48:52 2016 -0700
@@ -145,7 +145,7 @@
   const octave_scalar& v2 = dynamic_cast<const octave_scalar&> (a2);
   SparseComplexMatrix tmp (1, 1, v2.complex_value ());
   return octave_value
-         (v1.sparse_complex_matrix_value (). concat (tmp, ra_idx));
+         (v1.sparse_complex_matrix_value ().concat (tmp, ra_idx));
 }
 
 DEFASSIGNOP (assign, sparse_complex_matrix, scalar)
--- a/libinterp/parse-tree/parse.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/parse-tree/parse.h	Thu May 19 18:48:52 2016 -0700
@@ -407,7 +407,7 @@
   // element.
   bool fcn_file_from_relative_lookup;
 
-  // FALSE if we are still at the primary function. Subfunctions can
+  // FALSE if we are still at the primary function.  Subfunctions can
   // only be declared inside function files.
   bool parsing_subfunctions;
 
@@ -418,11 +418,11 @@
   // = 0 currently outside any function.
   // = 1 inside the primary function or a subfunction.
   // > 1 means we are looking at a function definition that seems to be
-  //     inside a function. Note that the function still might not be a
+  //     inside a function.  Note that the function still might not be a
   //     nested function.
   int curr_fcn_depth;
 
-  // Scope where we install all subfunctions and nested functions. Only
+  // Scope where we install all subfunctions and nested functions.  Only
   // used while reading function files.
   symbol_table::scope_id primary_fcn_scope;
 
@@ -435,7 +435,7 @@
   std::string curr_package_name;
 
   // A stack holding the nested function scopes being parsed.
-  // We don't use std::stack, because we want the clear method. Also, we
+  // We don't use std::stack, because we want the clear method.  Also, we
   // must access one from the top
   std::vector<symbol_table::scope_id> function_scopes;
 
--- a/libinterp/parse-tree/pt-binop.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/parse-tree/pt-binop.cc	Thu May 19 18:48:52 2016 -0700
@@ -125,7 +125,7 @@
 
               // Note: The profiler does not catch the braindead
               // short-circuit evaluation code above, but that should be
-              // ok. The evaluation of operands and the operator itself
+              // ok.  The evaluation of operands and the operator itself
               // is entangled and it's not clear where to start/stop
               // timing the operator to make it reasonable.
 
@@ -189,7 +189,7 @@
   bool result = false;
 
   // This evaluation is not caught by the profiler, since we can't find
-  // a reasonable place where to time. Note that we don't want to
+  // a reasonable place where to time.  Note that we don't want to
   // include evaluation of LHS or RHS into the timing, but this is
   // entangled together with short-circuit evaluation here.
 
--- a/libinterp/parse-tree/pt-exp.h	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/parse-tree/pt-exp.h	Thu May 19 18:48:52 2016 -0700
@@ -145,7 +145,7 @@
   //                  ==> 0 for expression e2
   int num_parens;
 
-  // The first index type associated with this expression. This field
+  // The first index type associated with this expression.  This field
   // is 0 (character '\0') if the expression has no associated index.
   // See the code in tree_identifier::rvalue for the rationale.
   char postfix_index_type;
--- a/libinterp/parse-tree/pt-funcall.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/parse-tree/pt-funcall.cc	Thu May 19 18:48:52 2016 -0700
@@ -90,8 +90,8 @@
 
   if (retval.length () == 1 && retval(0).is_function ())
     {
-      // The return object is a function. We may need to re-index it using the
-      // same logic as for identifier. This is primarily used for superclass
+      // The return object is a function.  We may need to re-index it using the
+      // same logic as for identifier.  This is primarily used for superclass
       // references in classdef.
 
       octave_value val = retval(0);
--- a/libinterp/parse-tree/pt-idx.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/parse-tree/pt-idx.cc	Thu May 19 18:48:52 2016 -0700
@@ -338,9 +338,9 @@
         {
           tree_argument_list *al = *p_args;
 
-          // In Matlab, () can only be followed by . In Octave, we do not
+          // In Matlab, () can only be followed by '.'.  In Octave, we do not
           // enforce this for rvalue expressions, but we'll split the
-          // evaluation at this point. This will, hopefully, allow Octave's
+          // evaluation at this point.  This will, hopefully, allow Octave's
           // looser rules apply smoothly for Matlab overloaded subsref
           // codes.
           bool force_split = type[i-1] == '(' && type[i] != '.';
--- a/libinterp/parse-tree/pt-mat.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/parse-tree/pt-mat.cc	Thu May 19 18:48:52 2016 -0700
@@ -637,8 +637,8 @@
       else if (all_str && dv.ndims () == 2
                && this_elt_dv.ndims () == 2)
         {
-          // FIXME: this is Octave's specialty. Character matrices allow
-          // rows of unequal length.
+          // FIXME: this is Octave's specialty.
+          // Character matrices allow rows of unequal length.
           if (this_elt_nc > cols ())
             dv(1) = this_elt_nc;
           dv(0) += this_elt_nr;
@@ -1005,7 +1005,7 @@
         {
           // The line below might seem crazy, since we take a copy of
           // the first argument, resize it to be empty and then resize
-          // it to be full. This is done since it means that there is
+          // it to be full.  This is done since it means that there is
           // no recopying of data, as would happen if we used a single
           // resize.  It should be noted that resize operation is also
           // significantly slower than the do_cat_op function, so it
@@ -1016,7 +1016,7 @@
           //    ctmp = octave_value_typeinfo::lookup_type
           //          (tmp.begin() -> begin() -> type_name());
           //
-          // and then directly resize. However, for some types there
+          // and then directly resize.  However, for some types there
           // might be some additional setup needed, and so this should
           // be avoided.
 
--- a/libinterp/parse-tree/pt-misc.cc	Thu May 19 19:42:57 2016 -0400
+++ b/libinterp/parse-tree/pt-misc.cc	Thu May 19 18:48:52 2016 -0700
@@ -239,7 +239,7 @@
   octave_idx_type vlen = varargout.numel ();
   int len = length ();
 
-  // Special case. Will do a shallow copy.
+  // Special case.  Will do a shallow copy.
   if (len == 0)
     return varargout;
   else if (nargout <= len)
--- a/liboctave/array/Array-util.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/Array-util.cc	Thu May 19 18:48:52 2016 -0700
@@ -569,8 +569,8 @@
             (e.err_id (), msg.c_str ());
         }
     }
-  // idxa known to be valid. Shouldn't need to catch index_exception below here.
-
+  // idxa known to be valid.
+  // Shouldn't need to catch index_exception below here.
 
   if (len == 1)
     retval = idxa(0);
--- a/liboctave/array/Array.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/Array.cc	Thu May 19 18:48:52 2016 -0700
@@ -2253,7 +2253,7 @@
   if (n < 0 || n >= nel)
     {
       // We want all elements, which means we'll almost surely need
-      // to resize. So count first, then allocate array of exact size.
+      // to resize.  So count first, then allocate array of exact size.
       octave_idx_type cnt = 0;
       for (octave_idx_type i = 0; i < nel; i++)
         cnt += src[i] != zero;
@@ -2265,7 +2265,7 @@
     }
   else
     {
-      // We want a fixed max number of elements, usually small. So be
+      // We want a fixed max number of elements, usually small.  So be
       // optimistic, alloc the array in advance, and then resize if
       // needed.
       retval.clear (n, 1);
@@ -2694,7 +2694,7 @@
       // the result dimensions are already determined, and there is no way
       // an empty array may contribute a nonzero piece along the dimension
       // at this point, unless an empty array can be promoted to a non-empty
-      // one (which makes no sense). I repeat, *no way*, think about it.
+      // one (which makes no sense).  I repeat, *no way*, think about it.
       if (array_list[i].is_empty ())
         continue;
 
--- a/liboctave/array/Array.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/Array.h	Thu May 19 18:48:52 2016 -0700
@@ -132,10 +132,10 @@
 
   // Rationale:
   // slice_data is a pointer to rep->data, denoting together with slice_len the
-  // actual portion of the data referenced by this Array<T> object. This allows
-  // to make shallow copies not only of a whole array, but also of contiguous
-  // subranges. Every time rep is directly manipulated, slice_data and slice_len
-  // need to be properly updated.
+  // actual portion of the data referenced by this Array<T> object.  This
+  // allows to make shallow copies not only of a whole array, but also of
+  // contiguous subranges.  Every time rep is directly manipulated, slice_data
+  // and slice_len need to be properly updated.
 
   T* slice_data;
   octave_idx_type slice_len;
@@ -243,7 +243,7 @@
   void clear (octave_idx_type r, octave_idx_type c)
   { clear (dim_vector (r, c)); }
 
-  // Number of elements in the array. These are all synonyms.
+  // Number of elements in the array.  These are all synonyms.
   //@{
   //! Number of elements in the array.
   //! Synonymous with numel().
@@ -444,7 +444,7 @@
   { return elem (ra_idx); }
 #endif
 
-  // Fast extractors. All of these produce shallow copies.
+  // Fast extractors.  All of these produce shallow copies.
   // Warning: none of these do check bounds, unless
   // OCTAVE_ENABLE_BOUNDS_CHECK is defined!
 
@@ -454,7 +454,7 @@
   Array<T> page (octave_idx_type k) const;
 
   //! Extract a slice from this array as a column vector: A(:)(lo+1:up).
-  //! Must be 0 <= lo && up <= numel. May be up < lo.
+  //! Must be 0 <= lo && up <= numel.  May be up < lo.
   Array<T> linear_slice (octave_idx_type lo, octave_idx_type up) const;
 
   Array<T> reshape (octave_idx_type nr, octave_idx_type nc) const
@@ -577,7 +577,7 @@
   void delete_elements (const Array<idx_vector>& ia);
   //@}
 
-  //! Insert an array into another at a specified position. If
+  //! Insert an array into another at a specified position.  If
   //! size (a) is [d1 d2 ... dN] and idx is [i1 i2 ... iN], this
   //! method is equivalent to x(i1:i1+d1-1, i2:i2+d2-1, ... ,
   //! iN:iN+dN-1) = a.
@@ -599,8 +599,8 @@
 
   void print_info (std::ostream& os, const std::string& prefix) const;
 
-  //! Give a pointer to the data in mex format. Unsafe. This function
-  //! exists to support the MEX interface. You should not use it
+  //! Give a pointer to the data in mex format.  Unsafe.  This function
+  //! exists to support the MEX interface.  You should not use it
   //! anywhere else.
   void *mex_get_data (void) const { return const_cast<T *> (data ()); }
 
@@ -617,42 +617,42 @@
   //! Ordering is auto-detected or can be specified.
   sortmode is_sorted_rows (sortmode mode = UNSORTED) const;
 
-  //! @brief Do a binary lookup in a sorted array. Must not contain NaNs.
+  //! @brief Do a binary lookup in a sorted array.  Must not contain NaNs.
   //! Mode can be specified or is auto-detected by comparing 1st and last element.
   octave_idx_type lookup (const T& value, sortmode mode = UNSORTED) const;
 
   //! Ditto, but for an array of values, specializing on the case when values
-  //! are sorted. NaNs get the value N.
+  //! are sorted.  NaNs get the value N.
   Array<octave_idx_type> lookup (const Array<T>& values,
                                  sortmode mode = UNSORTED) const;
 
   //! Count nonzero elements.
   octave_idx_type nnz (void) const;
 
-  //! Find indices of (at most n) nonzero elements. If n is specified,
+  //! Find indices of (at most n) nonzero elements.  If n is specified,
   //! backward specifies search from backward.
   Array<octave_idx_type> find (octave_idx_type n = -1,
                                bool backward = false) const;
 
   //! Returns the n-th element in increasing order, using the same
-  //! ordering as used for sort. n can either be a scalar index or a
+  //! ordering as used for sort.  n can either be a scalar index or a
   //! contiguous range.
   Array<T> nth_element (const idx_vector& n, int dim = 0) const;
 
-  //! Get the kth super or subdiagonal. The zeroth diagonal is the
+  //! Get the kth super or subdiagonal.  The zeroth diagonal is the
   //! ordinary diagonal.
   Array<T> diag (octave_idx_type k = 0) const;
 
   Array<T> diag (octave_idx_type m, octave_idx_type n) const;
 
   //! Concatenation along a specified (0-based) dimension, equivalent
-  //! to cat(). dim = -1 corresponds to dim = 0 and dim = -2
+  //! to cat().  dim = -1 corresponds to dim = 0 and dim = -2
   //! corresponds to dim = 1, but apply the looser matching rules of
   //! vertcat/horzcat.
   static Array<T>
   cat (int dim, octave_idx_type n, const Array<T> *array_list);
 
-  //! Apply function fcn to each element of the Array<T>. This function
+  //! Apply function fcn to each element of the Array<T>.  This function
   //! is optimized with a manually unrolled loop.
   template <typename U, typename F>
   Array<U>
@@ -733,8 +733,8 @@
   template <typename U> friend class Array;
 
   //! Returns true if this->dims () == dv, and if so, replaces this->dimensions
-  //! by a shallow copy of dv. This is useful for maintaining several arrays with
-  //! supposedly equal dimensions (e.g. structs in the interpreter).
+  //! by a shallow copy of dv.  This is useful for maintaining several arrays
+  //! with supposedly equal dimensions (e.g. structs in the interpreter).
   bool optimize_dimensions (const dim_vector& dv);
 
   //@{
@@ -755,7 +755,7 @@
 
 //! This is a simple wrapper template that will subclass an Array<T>
 //! type or any later type derived from it and override the default
-//! non-const operator() to not check for the array's uniqueness. It
+//! non-const operator() to not check for the array's uniqueness.  It
 //! is, however, the user's responsibility to ensure the array is
 //! actually unaliased whenever elements are accessed.
 template <typename ArrayClass>
--- a/liboctave/array/CMatrix.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/CMatrix.cc	Thu May 19 18:48:52 2016 -0700
@@ -1165,7 +1165,7 @@
   else
     {
       ComplexMatrix Ur = U.extract (0, 0, nr-1, r);
-      DiagMatrix D = DiagMatrix (sigma.extract (0, r)) . inverse ();
+      DiagMatrix D = DiagMatrix (sigma.extract (0, r)).inverse ();
       ComplexMatrix Vr = V.extract (0, 0, nc-1, r);
       retval = Vr * D * Ur.hermitian ();
     }
--- a/liboctave/array/CSparse.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/CSparse.cc	Thu May 19 18:48:52 2016 -0700
@@ -5657,7 +5657,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -5917,7 +5917,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -6205,7 +6205,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -6444,7 +6444,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -7306,7 +7306,7 @@
 SparseComplexMatrix::prod (int dim) const
 {
   if ((rows () == 1 && dim == -1) || dim == 1)
-    return transpose (). prod (0). transpose ();
+    return transpose ().prod (0).transpose ();
   else
     {
       SPARSE_REDUCTION_OP (SparseComplexMatrix, Complex, *=,
--- a/liboctave/array/MArray-i.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/MArray-i.cc	Thu May 19 18:48:52 2016 -0700
@@ -37,7 +37,7 @@
 #endif
 
 // Explicit instantiation, as this seems to be required by weird compilers
-// like MSVC. This should be harmless on other compilers.
+// like MSVC.  This should be harmless on other compilers.
 template int xmin<int> (int, int);
 template int xmax<int> (int, int);
 template long xmin<long> (long, long);
--- a/liboctave/array/MArray-s.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/MArray-s.cc	Thu May 19 18:48:52 2016 -0700
@@ -32,7 +32,7 @@
 template class OCTAVE_API MArray<short>;
 
 // Explicit instantiation, as this seems to be required by weird compilers
-// like MSVC. This should be harmless on other compilers.
+// like MSVC.  This should be harmless on other compilers.
 template short xmin<short> (short, short);
 template short xmax<short> (short, short);
 
--- a/liboctave/array/PermMatrix.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/PermMatrix.cc	Thu May 19 18:48:52 2016 -0700
@@ -197,7 +197,7 @@
           for (j = 0, ic = ics; j != mm; j++, ic = p[ic]) ;
         }
 
-      // now ic = p^m[ics]. Loop through the whole cycle.
+      // now ic = p^m[ics].  Loop through the whole cycle.
       octave_idx_type jcs = ics;
       do
         {
--- a/liboctave/array/PermMatrix.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/PermMatrix.h	Thu May 19 18:48:52 2016 -0700
@@ -102,7 +102,7 @@
   PermMatrix transpose (void) const;
   PermMatrix inverse (void) const;
 
-  // Determinant, i.e. the sign of permutation.
+  // Determinant, i.e., the sign of permutation.
   octave_idx_type determinant (void) const;
 
   // Efficient integer power of a permutation.
--- a/liboctave/array/Range.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/Range.cc	Thu May 19 18:48:52 2016 -0700
@@ -40,7 +40,7 @@
 Range::all_elements_are_ints (void) const
 {
   // If the base and increment are ints, the final value in the range
-  // will also be an integer, even if the limit is not. If there is one
+  // will also be an integer, even if the limit is not.  If there is one
   // or fewer elements only the base needs to be an integer
 
   return (! (xisnan (rng_base) || xisnan (rng_inc))
--- a/liboctave/array/Sparse.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/Sparse.cc	Thu May 19 18:48:52 2016 -0700
@@ -94,8 +94,8 @@
     else if (r[i] > _r)
       break;
 
-  // Ok, If we've gotten here, we're in trouble.. Have to create a
-  // new element in the sparse array. This' gonna be slow!!!
+  // Ok, If we've gotten here, we're in trouble.  Have to create a
+  // new element in the sparse array.  This' gonna be slow!!!
   if (c[ncols] == nzmx)
     (*current_liboctave_error_handler)
       ("Sparse::SparseRep::elem (octave_idx_type, octave_idx_type): sparse matrix filled");
@@ -335,7 +335,7 @@
         }
       else if (cl == 1)
         {
-          // Sparse column vector. Sort row indices.
+          // Sparse column vector.  Sort row indices.
           idx_vector rs = r.sorted ();
 
           octave_quit ();
@@ -416,7 +416,7 @@
             else
               sidx[ci[cd[i]+1]++] = rd[i];
 
-          // Subsorts. We don't need a stable sort, all values are equal.
+          // Subsorts.  We don't need a stable sort, all values are equal.
           xcidx (0) = 0;
           for (octave_idx_type j = 0; j < nc; j++)
             {
@@ -481,7 +481,7 @@
     }
   else if (cl == 1)
     {
-      // Sparse column vector. Sort row indices.
+      // Sparse column vector.  Sort row indices.
       Array<octave_idx_type> rsi;
       idx_vector rs = r.sorted (rsi);
 
@@ -567,7 +567,7 @@
           p.second = i;
         }
 
-      // Subsorts. We don't need a stable sort, the second index stabilizes it.
+      // Subsorts.  We don't need a stable sort, the second index stabilizes it.
       xcidx (0) = 0;
       for (octave_idx_type j = 0; j < nc; j++)
         {
@@ -941,7 +941,7 @@
     return;
 
   // This wouldn't be necessary for r >= rows () if nrows wasn't part of the
-  // Sparse rep. It is not good for anything in there.
+  // Sparse rep.  It is not good for anything in there.
   make_unique ();
 
   if (r < rows ())
@@ -1109,9 +1109,9 @@
   return retval;
 }
 
-// Lower bound lookup. Could also use octave_sort, but that has upper bound
-// semantics, so requires some manipulation to set right. Uses a plain loop for
-// small columns.
+// Lower bound lookup.  Could also use octave_sort, but that has upper bound
+// semantics, so requires some manipulation to set right.  Uses a plain loop
+// for small columns.
 static octave_idx_type
 lblookup (const octave_idx_type *ridx, octave_idx_type nr,
           octave_idx_type ri)
@@ -1413,9 +1413,8 @@
     {
       // You have to be pretty sick to get to this bit of code,
       // since you have a scalar stored as a sparse matrix, and
-      // then want to make a dense matrix with sparse
-      // representation. Ok, we'll do it, but you deserve what
-      // you get!!
+      // then want to make a dense matrix with sparse representation.
+      // Ok, we'll do it, but you deserve what you get!!
       retval = Sparse<T> (idx_dims(0), idx_dims(1), nz ? data (0) : T ());
     }
   else if (nc == 1)
@@ -1604,7 +1603,7 @@
     }
   else if (idx_i.is_colon ())
     {
-      // Great, we're just manipulating columns. This is going to be quite
+      // Great, we're just manipulating columns.  This is going to be quite
       // efficient, because the columns can stay compressed as they are.
       if (idx_j.is_colon ())
         retval = *this; // Shallow copy.
@@ -1645,7 +1644,7 @@
     }
   else if (nc == 1 && idx_j.is_colon_equiv (nc) && idx_i.is_vector ())
     {
-      // It's actually vector indexing. The 1D index is specialized for that.
+      // It's actually vector indexing.  The 1D index is specialized for that.
       retval = index (idx_i);
 
       // If nr == 1 then the vector indexing will return a column vector!!
@@ -1737,7 +1736,7 @@
 
       if (idx_i.is_range () && idx_i.increment () == -1)
         {
-          // It's nr:-1:1. Just flip all columns.
+          // It's nr:-1:1.  Just flip all columns.
           for (octave_idx_type j = 0; j < m; j++)
             {
               octave_quit ();
@@ -1898,7 +1897,7 @@
             }
           else if (idx.is_range () && idx.increment () == -1)
             {
-              // It's s(u:-1:l) = r. Reverse the assignment.
+              // It's s(u:-1:l) = r.  Reverse the assignment.
               assign (idx.sorted (), rhs.index (idx_vector (rhl - 1, 0, -1)));
             }
           else if (idx.is_permutation (n))
@@ -2026,7 +2025,7 @@
       if (idx_i.is_colon ())
         {
           octave_idx_type lb, ub;
-          // Great, we're just manipulating columns. This is going to be quite
+          // Great, we're just manipulating columns.  This is going to be quite
           // efficient, because the columns can stay compressed as they are.
           if (idx_j.is_colon ())
             *this = rhs; // Shallow copy.
@@ -2091,7 +2090,7 @@
             }
           else if (idx_j.is_range () && idx_j.increment () == -1)
             {
-              // It's s(:,u:-1:l) = r. Reverse the assignment.
+              // It's s(:,u:-1:l) = r.  Reverse the assignment.
               assign (idx_i, idx_j.sorted (),
                       rhs.index (idx_i, idx_vector (m - 1, 0, -1)));
             }
@@ -2165,7 +2164,7 @@
             {
               // FIXME: optimize more special cases?
               // In general this requires unpacking the columns, which is slow,
-              // especially for many small columns. OTOH, transpose is an
+              // especially for many small columns.  OTOH, transpose is an
               // efficient O(nr+nc+nnz) operation.
               *this = transpose ();
               assign (idx_vector::colon, idx_i, rhs.transpose ());
@@ -2611,7 +2610,7 @@
             for (octave_idx_type i = 0; i < n; i++)
               {
                 const Sparse<T>& spi = sparse_list[i];
-                // Skipping empty matrices. See the comment in Array.cc.
+                // Skipping empty matrices.  See the comment in Array.cc.
                 if (spi.is_empty ())
                   continue;
 
@@ -2638,7 +2637,7 @@
           {
             octave_quit ();
 
-            // Skipping empty matrices. See the comment in Array.cc.
+            // Skipping empty matrices.  See the comment in Array.cc.
             if (sparse_list[i].is_empty ())
               continue;
 
--- a/liboctave/array/Sparse.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/Sparse.h	Thu May 19 18:48:52 2016 -0700
@@ -201,7 +201,7 @@
   // is their only common ancestor.
   explicit Sparse (const PermMatrix& a);
 
-  // Type conversion case. Preserves capacity ().
+  // Type conversion case.  Preserves capacity ().
   template <typename U>
   Sparse (const Sparse<U>& a)
     : rep (new typename Sparse<T>::SparseRep (a.rep->nrows, a.rep->ncols,
--- a/liboctave/array/dMatrix.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/dMatrix.cc	Thu May 19 18:48:52 2016 -0700
@@ -853,7 +853,7 @@
   else
     {
       Matrix Ur = U.extract (0, 0, nr-1, r);
-      DiagMatrix D = DiagMatrix (sigma.extract (0, r)) . inverse ();
+      DiagMatrix D = DiagMatrix (sigma.extract (0, r)).inverse ();
       Matrix Vr = V.extract (0, 0, nc-1, r);
       return Vr * D * Ur.transpose ();
     }
--- a/liboctave/array/dSparse.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/dSparse.cc	Thu May 19 18:48:52 2016 -0700
@@ -5850,7 +5850,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -6083,7 +6083,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -6342,7 +6342,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -6593,7 +6593,7 @@
 
           if (rcond == 0.0)
             {
-              // Either its indefinite or singular. Try UMFPACK
+              // Either its indefinite or singular.  Try UMFPACK
               mattype.mark_as_unsymmetric ();
               typ = MatrixType::Full;
             }
@@ -7460,7 +7460,7 @@
 SparseMatrix::prod (int dim) const
 {
   if ((rows () == 1 && dim == -1) || dim == 1)
-    return transpose (). prod (0). transpose ();
+    return transpose ().prod (0).transpose ();
   else
     {
       SPARSE_REDUCTION_OP (SparseMatrix, double, *=,
--- a/liboctave/array/dim-vector.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/dim-vector.cc	Thu May 19 18:48:52 2016 -0700
@@ -36,7 +36,7 @@
   return zv.rep;
 }
 
-// The maximum allowed value for a dimension extent. This will normally be a
+// The maximum allowed value for a dimension extent.  This will normally be a
 // tiny bit off the maximum value of octave_idx_type.
 // Currently 1 is subtracted to allow safe conversion of any 2D Array into
 // Sparse, but this offset may change in the future.
@@ -170,7 +170,7 @@
   return new_dims;
 }
 
-// This is the rule for cat(). cat (dim, A, B) works if one
+// This is the rule for cat().  cat (dim, A, B) works if one
 // of the following holds, in this order:
 //
 // 1. size (A, k) == size (B, k) for all k != dim.
@@ -217,8 +217,7 @@
     rep[dim] += (dim < ndb ? dvb(dim) : 1);
   else
     {
-      // Dimensions don't match. The only allowed fix is
-      // to omit 0x0.
+      // Dimensions don't match.  The only allowed fix is to omit 0x0.
       if (ndb == 2 && dvb(0) == 0 && dvb(1) == 0)
         match = true;
       else if (orig_nd == 2 && rep[0] == 0 && rep[1] == 0)
--- a/liboctave/array/dim-vector.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/dim-vector.h	Thu May 19 18:48:52 2016 -0700
@@ -426,7 +426,7 @@
   /*!
      The following function will throw a std::bad_alloc ()
      exception if the requested size is larger than can be indexed by
-     octave_idx_type. This may be smaller than the actual amount of
+     octave_idx_type.  This may be smaller than the actual amount of
      memory that can be safely allocated on a system.  However, if we
      don't fail here, we can end up with a mysterious crash inside a
      function that is iterating over an array using octave_idx_type
--- a/liboctave/array/fCMatrix.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/fCMatrix.cc	Thu May 19 18:48:52 2016 -0700
@@ -1169,7 +1169,7 @@
   else
     {
       FloatComplexMatrix Ur = U.extract (0, 0, nr-1, r);
-      FloatDiagMatrix D = FloatDiagMatrix (sigma.extract (0, r)) . inverse ();
+      FloatDiagMatrix D = FloatDiagMatrix (sigma.extract (0, r)).inverse ();
       FloatComplexMatrix Vr = V.extract (0, 0, nc-1, r);
       retval = Vr * D * Ur.hermitian ();
     }
--- a/liboctave/array/fMatrix.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/fMatrix.cc	Thu May 19 18:48:52 2016 -0700
@@ -860,7 +860,7 @@
   else
     {
       FloatMatrix Ur = U.extract (0, 0, nr-1, r);
-      FloatDiagMatrix D = FloatDiagMatrix (sigma.extract (0, r)) . inverse ();
+      FloatDiagMatrix D = FloatDiagMatrix (sigma.extract (0, r)).inverse ();
       FloatMatrix Vr = V.extract (0, 0, nc-1, r);
       return Vr * D * Ur.transpose ();
     }
--- a/liboctave/array/idx-vector.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/idx-vector.cc	Thu May 19 18:48:52 2016 -0700
@@ -653,7 +653,7 @@
   if (nnz < 0)
     len = bnda.nnz ();
 
-  // We truncate the extent as much as possible. For Matlab
+  // We truncate the extent as much as possible.  For Matlab
   // compatibility, but maybe it's not a bad idea anyway.
   while (ext > 0 && ! bnda(ext-1))
     ext--;
--- a/liboctave/array/idx-vector.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/array/idx-vector.h	Thu May 19 18:48:52 2016 -0700
@@ -46,7 +46,7 @@
 // idx_vector is a reference-counting, polymorphic pointer, that can contain
 // 4 types of index objects: a magic colon, a range, a scalar, or an index vector.
 // Polymorphic methods for single element access are provided, as well as
-// templates implementing "early dispatch", i.e. hoisting the checks for index
+// templates implementing "early dispatch", i.e., hoisting the checks for index
 // type out of loops.
 
 class
@@ -85,7 +85,7 @@
     // Length of the index vector.
     virtual octave_idx_type length (octave_idx_type n) const = 0;
 
-    // The maximum index + 1. The actual dimension is passed in.
+    // The maximum index + 1.  The actual dimension is passed in.
     virtual octave_idx_type extent (octave_idx_type n) const = 0;
 
     // Index class.
@@ -412,7 +412,7 @@
     octave_idx_type len;
     octave_idx_type ext;
 
-    // FIXME: I'm not sure if this is a good design. Maybe it would be
+    // FIXME: I'm not sure if this is a good design.  Maybe it would be
     // better to employ some sort of generalized iteration scheme.
     mutable octave_idx_type lsti;
     mutable octave_idx_type lste;
@@ -601,7 +601,7 @@
   friend std::ostream& operator << (std::ostream& os, const idx_vector& a)
   { return a.print (os); }
 
-  // Slice with specializations. No checking of bounds!
+  // Slice with specializations.  No checking of bounds!
   //
   // This is equivalent to the following loop (but much faster):
   //
@@ -675,7 +675,7 @@
     return len;
   }
 
-  // Slice assignment with specializations. No checking of bounds!
+  // Slice assignment with specializations.  No checking of bounds!
   //
   // This is equivalent to the following loop (but much faster):
   //
@@ -747,7 +747,7 @@
     return len;
   }
 
-  // Slice fill with specializations. No checking of bounds!
+  // Slice fill with specializations.  No checking of bounds!
   //
   // This is equivalent to the following loop (but much faster):
   //
@@ -819,7 +819,7 @@
     return len;
   }
 
-  // Generic non-breakable indexed loop. The loop body should be
+  // Generic non-breakable indexed loop.  The loop body should be
   // encapsulated in a single functor body.  This is equivalent to the
   // following loop (but faster, at least for simple inlined bodies):
   //
@@ -884,7 +884,7 @@
 
   }
 
-  // Generic breakable indexed loop. The loop body should be
+  // Generic breakable indexed loop.  The loop body should be
   // encapsulated in a single functor body.  This is equivalent to the
   // following loop (but faster, at least for simple inlined bodies):
   //
@@ -972,7 +972,7 @@
   }
 
   // Rationale:
-  // This method is the key to "smart indexing". When indexing cartesian
+  // This method is the key to "smart indexing".  When indexing cartesian
   // arrays, sometimes consecutive index vectors can be reduced into a
   // single index.  If rows (A) = k and i.maybe_reduce (j) gives k, then
   // A(i,j)(:) is equal to A(k)(:).
@@ -993,11 +993,11 @@
 
   bool is_permutation (octave_idx_type n) const;
 
-  // Returns the inverse permutation. If this is not a permutation on 1:n, the
+  // Returns the inverse permutation.  If this is not a permutation on 1:n, the
   // result is undefined (but no error unless extent () != n).
   idx_vector inverse_permutation (octave_idx_type n) const;
 
-  // Copies all the indices to a given array. Not allowed for colons.
+  // Copies all the indices to a given array.  Not allowed for colons.
   void copy_data (octave_idx_type *data) const;
 
   // If the index is a mask, convert it to index vector.
--- a/liboctave/cruft/Faddeeva/Faddeeva.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/cruft/Faddeeva/Faddeeva.cc	Thu May 19 18:48:52 2016 -0700
@@ -35,7 +35,7 @@
    Given w(z), the error functions are mostly straightforward
    to compute, except for certain regions where we have to
    switch to Taylor expansions to avoid cancellation errors
-   [e.g. near the origin for erf(z)].
+   [e.g., near the origin for erf(z)].
 
    To compute the Faddeeva function, we use a combination of two
    algorithms:
@@ -61,7 +61,7 @@
     significantly slower than the continued-fraction expansion for
     larger |z|.  On the other hand, it is competitive for smaller |z|, 
     and is significantly more accurate than the Poppe & Wijers code
-    in some regions, e.g. in the vicinity of z=1+1i.)
+    in some regions, e.g., in the vicinity of z=1+1i.)
 
    Note that this is an INDEPENDENT RE-IMPLEMENTATION of these algorithms,
    based on the description in the papers ONLY.  In particular, I did
@@ -88,9 +88,9 @@
    the test function, compile with -DTEST_FADDEEVA (that is,
    #define TEST_FADDEEVA).
 
-   If HAVE_CONFIG_H is #defined (e.g. by compiling with -DHAVE_CONFIG_H),
+   If HAVE_CONFIG_H is #defined (e.g., by compiling with -DHAVE_CONFIG_H),
    then we #include "config.h", which is assumed to be a GNU autoconf-style
-   header defining HAVE_* macros to indicate the presence of features. In
+   header defining HAVE_* macros to indicate the presence of features.  In
    particular, if HAVE_ISNAN and HAVE_ISINF are #defined, we use those
    functions in math.h instead of defining our own, and if HAVE_ERF and/or
    HAVE_ERFC are defined we use those functions from <cmath> for erf and
@@ -207,7 +207,7 @@
 #    define copysign my_copysign
 #  endif
 
-// If we are using the gnulib <cmath> (e.g. in the GNU Octave sources),
+// If we are using the gnulib <cmath> (e.g., in the GNU Octave sources),
 // gnulib generates a link warning if we use ::floor instead of gnulib::floor.
 // This warning is completely innocuous because the only difference between
 // gnulib::floor and the system ::floor (and only on ancient OSF systems)
@@ -218,7 +218,7 @@
 #    define log GNULIB_NAMESPACE::log
 #  endif
 
-#else // !__cplusplus, i.e. pure C (requires C99 features)
+#else // !__cplusplus, i.e., pure C (requires C99 features)
 
 #  include "Faddeeva.h"
 
@@ -269,7 +269,7 @@
     return C(r * cos(t), r * sin(t));
 }
 
-#endif // !__cplusplus, i.e. pure C (requires C99 features)
+#endif // !__cplusplus, i.e., pure C (requires C99 features)
 
 /////////////////////////////////////////////////////////////////////////
 // Auxiliary routines to compute other special functions based on w(z)
@@ -996,7 +996,7 @@
       b) Instead of using a single Chebyshev polynomial for the entire
          [0,1] y interval, we break the interval up into 100 equal
          subintervals, with a switch/lookup table, and use much lower
-         degree Chebyshev polynomials in each subinterval. This greatly
+         degree Chebyshev polynomials in each subinterval.  This greatly
          improves performance in my tests.
 
    For x < 0, we use the relationship erfcx(-x) = 2 exp(x^2) - erfc(x),
--- a/liboctave/numeric/CollocWt.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/CollocWt.cc	Thu May 19 18:48:52 2016 -0700
@@ -101,7 +101,7 @@
 //
 //   nd     : the dimension of the vectors dif1, dif2, dif3, and root
 //
-//   n      : the degree of the jacobi polynomial, (i.e. the number
+//   n      : the degree of the jacobi polynomial, (i.e., the number
 //            of interior interpolation points)
 //
 //   n0     : determines whether x = 0 is included as an
@@ -264,7 +264,7 @@
 //
 //   nd     : the dimension of the vectors dif1, dif2, dif3, and root
 //
-//   n      : the degree of the jacobi polynomial, (i.e. the number
+//   n      : the degree of the jacobi polynomial, (i.e., the number
 //            of interior interpolation points)
 //
 //   n0     : determines whether x = 0 is included as an
--- a/liboctave/numeric/DASPK.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/DASPK.cc	Thu May 19 18:48:52 2016 -0700
@@ -483,7 +483,7 @@
   switch (istate)
     {
     case 1: // A step was successfully taken in intermediate-output
-            // mode. The code has not yet reached TOUT.
+            // mode.  The code has not yet reached TOUT.
     case 2: // The integration to TSTOP was successfully completed
             // (T=TSTOP) by stepping exactly to TSTOP.
     case 3: // The integration to TOUT was successfully completed
@@ -522,7 +522,7 @@
               // achieve convergence.
     case -33: // The code has encountered trouble from which it cannot
               // recover. A message is printed explaining the trouble
-              // and control is returned to the calling program. For
+              // and control is returned to the calling program.  For
               // example, this occurs when invalid input is detected.
       integration_error = true;
       break;
--- a/liboctave/numeric/DASRT.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/DASRT.cc	Thu May 19 18:48:52 2016 -0700
@@ -335,7 +335,7 @@
   switch (istate)
     {
     case 1: // A step was successfully taken in intermediate-output
-            // mode. The code has not yet reached TOUT.
+            // mode.  The code has not yet reached TOUT.
     case 2: // The integration to TOUT was successfully completed
             // (T=TOUT) by stepping exactly to TOUT.
     case 3: // The integration to TOUT was successfully completed
@@ -367,8 +367,8 @@
               // returned to the calling program.
     case -12: // DASSL failed to compute the initial YPRIME.
     case -33: // The code has encountered trouble from which it cannot
-              // recover. A message is printed explaining the trouble
-              // and control is returned to the calling program. For
+              // recover.  A message is printed explaining the trouble
+              // and control is returned to the calling program.  For
               // example, this occurs when invalid input is detected.
       integration_error = true;
       break;
--- a/liboctave/numeric/DASSL.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/DASSL.cc	Thu May 19 18:48:52 2016 -0700
@@ -295,7 +295,7 @@
   switch (istate)
     {
     case 1: // A step was successfully taken in intermediate-output
-            // mode. The code has not yet reached TOUT.
+            // mode.  The code has not yet reached TOUT.
     case 2: // The integration to TSTOP was successfully completed
             // (T=TSTOP) by stepping exactly to TSTOP.
     case 3: // The integration to TOUT was successfully completed
@@ -324,8 +324,8 @@
               // returned to the calling program.
     case -12: // DDASSL failed to compute the initial YPRIME.
     case -33: // The code has encountered trouble from which it cannot
-              // recover. A message is printed explaining the trouble
-              // and control is returned to the calling program. For
+              // recover.  A message is printed explaining the trouble
+              // and control is returned to the calling program.  For
               // example, this occurs when invalid input is detected.
       integration_error = true;
       break;
--- a/liboctave/numeric/eigs-base.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/eigs-base.cc	Thu May 19 18:48:52 2016 -0700
@@ -859,7 +859,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -898,9 +898,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -1112,7 +1112,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -1195,9 +1195,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -1385,7 +1385,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -1425,9 +1425,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -1654,7 +1654,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -1693,9 +1693,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -1956,7 +1956,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -2039,9 +2039,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -2284,7 +2284,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -2323,9 +2323,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -2604,7 +2604,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -2642,9 +2642,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -2860,7 +2860,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -2944,9 +2944,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
@@ -3145,7 +3145,7 @@
             }
 
           // This is a kludge, as ARPACK doesn't give its
-          // iteration pointer. But as workl[iptr(5)-1] is
+          // iteration pointer.  But as workl[iptr(5)-1] is
           // an output value updated at each iteration, setting
           // a value in this array to NaN and testing for it
           // is a way of obtaining the iteration counter.
@@ -3184,9 +3184,9 @@
   octave_idx_type info2;
 
   // We have a problem in that the size of the C++ bool
-  // type relative to the fortran logical type. It appears
+  // type relative to the fortran logical type.  It appears
   // that fortran uses 4- or 8-bytes per logical and C++ 1-byte
-  // per bool, though this might be system dependent. As
+  // per bool, though this might be system dependent.  As
   // long as the HOWMNY arg is not "S", the logical array
   // is just workspace for ARPACK, so use int type to
   // avoid problems.
--- a/liboctave/numeric/lo-mappers.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/lo-mappers.h	Thu May 19 18:48:52 2016 -0700
@@ -74,7 +74,7 @@
   return x >= y ? x : y;
 }
 
-// This form is favorable. GCC will translate (x <= y ? x : y) without a
+// This form is favorable.  GCC will translate (x <= y ? x : y) without a
 // jump, hence the only conditional jump involved will be the first
 // (xisnan), infrequent and hence friendly to branch prediction.
 inline double
--- a/liboctave/numeric/lo-specfun.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/lo-specfun.cc	Thu May 19 18:48:52 2016 -0700
@@ -2793,7 +2793,7 @@
 
       (*current_liboctave_error_handler)
         ("gammainc: nonconformant arguments (arg 1 is %s, arg 2 is %s)",
-         x_str.c_str (), a_str. c_str ());
+         x_str.c_str (), a_str.c_str ());
     }
 
   NDArray retval (dv);
--- a/liboctave/numeric/oct-fftw.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/oct-fftw.cc	Thu May 19 18:48:52 2016 -0700
@@ -48,12 +48,12 @@
 octave_fftw_planner *octave_fftw_planner::instance = 0;
 
 // Helper class to create and cache FFTW plans for both 1D and
-// 2D. This implementation defaults to using FFTW_ESTIMATE to create
+// 2D.  This implementation defaults to using FFTW_ESTIMATE to create
 // the plans, which in theory is suboptimal, but provides quite
 // reasonable performance in practice.
 
 // Also note that if FFTW_ESTIMATE is not used then the planner in FFTW3
-// will destroy the input and output arrays. We must, therefore, create a
+// will destroy the input and output arrays.  We must, therefore, create a
 // temporary input array with the same size and 16-byte alignment as
 // the original array when using a different planner strategy.
 // Note that we also use any wisdom that is available, either in a
--- a/liboctave/numeric/oct-norm.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/oct-norm.cc	Thu May 19 18:48:52 2016 -0700
@@ -62,7 +62,7 @@
 
 // Theory: norm accumulator is an object that has an accum method able
 // to handle both real and complex element, and a cast operator
-// returning the intermediate norm. Reference: Higham, N. "Estimating
+// returning the intermediate norm.  Reference: Higham, N. "Estimating
 // the Matrix p-Norm." Numer. Math. 62, 539-555, 1992.
 
 // norm accumulator for the p-norm
@@ -324,9 +324,9 @@
 DEFINE_DISPATCHER (column_norms, MSparse<T>, MArray<R>)
 DEFINE_DISPATCHER (row_norms, MSparse<T>, MArray<R>)
 
-// The approximate subproblem in Higham's method. Find lambda and mu such that
+// The approximate subproblem in Higham's method.  Find lambda and mu such that
 // norm ([lambda, mu], p) == 1 and norm (y*lambda + col*mu, p) is maximized.
-// Real version. As in Higham's paper.
+// Real version.  As in Higham's paper.
 template <typename ColVectorT, typename R>
 static void
 higham_subp (const ColVectorT& y, const ColVectorT& col,
@@ -352,9 +352,9 @@
     }
 }
 
-// Complex version. Higham's paper does not deal with complex case, so we use a
-// simple extension. First, guess the magnitudes as in real version, then try
-// to rotate lambda to improve further.
+// Complex version.  Higham's paper does not deal with complex case, so we use
+// a simple extension.  First, guess the magnitudes as in real version, then
+// try to rotate lambda to improve further.
 template <typename ColVectorT, typename R>
 static void
 higham_subp (const ColVectorT& y, const ColVectorT& col,
@@ -407,7 +407,7 @@
 }
 
 // the VectorT is used for vectors, but actually it has to be
-// a Matrix type to allow all the operations. For instance SparseMatrix
+// a Matrix type to allow all the operations.  For instance SparseMatrix
 // does not support multiplication with column/row vectors.
 // the dual vector
 template <typename VectorT, typename R>
--- a/liboctave/numeric/sparse-dmsolve.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/numeric/sparse-dmsolve.cc	Thu May 19 18:48:52 2016 -0700
@@ -61,7 +61,7 @@
 
   // Some sparse functions can support lazy indexing (where elements
   // in the row are in no particular order), even though octave in
-  // general can't. For those functions that can using it is a big
+  // general can't.  For those functions that can using it is a big
   // win here in terms of speed.
 
   if (lazy)
--- a/liboctave/operators/Sparse-op-defs.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/operators/Sparse-op-defs.h	Thu May 19 18:48:52 2016 -0700
@@ -1785,7 +1785,7 @@
           /* The optimal break-point as estimated from simulations */ \
           /* Note that Mergesort is O(nz log(nz)) while searching all */ \
           /* values is O(nr), where nz here is nonzero per row of */ \
-          /* length nr. The test itself was then derived from the */ \
+          /* length nr.  The test itself was then derived from the */ \
           /* simulation with random square matrices and the observation */ \
           /* of the number of nonzero elements in the output matrix */ \
           /* it was found that the breakpoints were */ \
--- a/liboctave/operators/mx-inlines.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/operators/mx-inlines.cc	Thu May 19 18:48:52 2016 -0700
@@ -314,8 +314,8 @@
 using std::pow;
 DEFMXMAPPER2X (mx_inline_pow, pow)
 
-// Arbitrary function appliers. The function is a template parameter to enable
-// inlining.
+// Arbitrary function appliers.
+// The function is a template parameter to enable inlining.
 template <typename R, typename X, R fun (X x)>
 inline void mx_inline_map (size_t n, R *r, const X *x) throw ()
 { for (size_t i = 0; i < n; i++) r[i] = fun (x[i]); }
@@ -324,7 +324,7 @@
 inline void mx_inline_map (size_t n, R *r, const X *x) throw ()
 { for (size_t i = 0; i < n; i++) r[i] = fun (x[i]); }
 
-// Appliers. Since these call the operation just once, we pass it as
+// Appliers.  Since these call the operation just once, we pass it as
 // a pointer, to allow the compiler reduce number of instances.
 
 template <typename R, typename X>
@@ -458,7 +458,7 @@
 inline T cabsq (const std::complex<T>& c)
 { return c.real () * c.real () + c.imag () * c.imag (); }
 
-// default. works for integers and bool.
+// default.  works for integers and bool.
 template <typename T>
 inline bool xis_true (T x) { return x; }
 template <typename T>
@@ -558,8 +558,9 @@
 OP_RED_FCN2 (mx_inline_all_r, T, bool, OP_RED_ALLR, true)
 
 // Using the general code for any/all would sacrifice short-circuiting.
-// OTOH, going by rows would sacrifice cache-coherence. The following algorithm
-// will achieve both, at the cost of a temporary octave_idx_type array.
+// OTOH, going by rows would sacrifice cache-coherence.  The following
+// algorithm will achieve both, at the cost of a temporary octave_idx_type
+// array.
 
 #define OP_ROW_SHORT_CIRCUIT(F, PRED, ZERO) \
 template <typename T> \
@@ -1339,7 +1340,7 @@
   return ret;
 }
 
-// Fast extra-precise summation. According to
+// Fast extra-precise summation.  According to
 // T. Ogita, S. M. Rump, S. Oishi:
 // Accurate Sum And Dot Product,
 // SIAM J. Sci. Computing, Vol. 26, 2005
--- a/liboctave/system/oct-time.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/system/oct-time.cc	Thu May 19 18:48:52 2016 -0700
@@ -88,7 +88,7 @@
     std::string
     time::ctime (void) const
     {
-      return localtime (*this) . asctime ();
+      return localtime (*this).asctime ();
     }
 
     void
--- a/liboctave/util/action-container.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/action-container.h	Thu May 19 18:48:52 2016 -0700
@@ -37,7 +37,7 @@
 {
 public:
 
-  // A generic unwind_protect element. Knows how to run itself and
+  // A generic unwind_protect element.  Knows how to run itself and
   // discard itself.  Also, contains a pointer to the next element.
   class elem
   {
--- a/liboctave/util/kpse.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/kpse.cc	Thu May 19 18:48:52 2016 -0700
@@ -1,5 +1,5 @@
-// This file is not compiled to a separate object file.  It is
-// included in pathsearch.cc.
+// This file is not compiled to a separate object file.
+// It is included in pathsearch.cc.
 
 /* Look up a filename in a path.
 
@@ -927,7 +927,7 @@
    MUST_EXIST is false, and NAME isn't found in the db, do *not* look on
    the filesystem.)
 
-   The caller must expand PATH. This is because it makes more sense to
+   The caller must expand PATH.  This is because it makes more sense to
    do this once, in advance, instead of for every search using it.
 
    In any case, return the complete filename if found, otherwise NULL.  */
@@ -1478,7 +1478,7 @@
   return ret;
 }
 
-/* braces.c -- code for doing word expansion in curly braces. Taken from
+/* braces.c -- code for doing word expansion in curly braces.  Taken from
    bash 1.14.5.  [And subsequently modified for kpatshea.]
 
    Copyright (C) 1987,1991 Free Software Foundation, Inc.  */
@@ -1605,7 +1605,7 @@
   return result;
 }
 
-/* Start at INDEX, and skip characters in TEXT. Set INDEX to the
+/* Start at INDEX, and skip characters in TEXT.  Set INDEX to the
    index of the character matching SATISFY.  This understands about
    quoting.  Return the character that caused us to stop searching;
    this is either the same as SATISFY, or 0. */
@@ -1680,8 +1680,8 @@
 
 /* For each file format, we record the following information.  The main
    thing that is not part of this structure is the environment variable
-   lists. They are used directly in tex-file.c. We could incorporate
-   them here, but it would complicate the code a bit. We could also do
+   lists.  They are used directly in tex-file.c.  We could incorporate
+   them here, but it would complicate the code a bit.  We could also do
    it via variable expansion, but not now, maybe not ever:
    ${PKFONTS-${TEXFONTS-/usr/local/lib/texmf/fonts//}}.  */
 
@@ -1755,7 +1755,7 @@
 
           if (*path_elt == 0)
             {
-              /* Trailing //, matches anything. We could make this
+              /* Trailing //, matches anything.  We could make this
                  part of the other case, but it seems pointless to do
                  the extra work.  */
               matched = true;
@@ -1806,7 +1806,7 @@
 
 /* If DB_DIR is a prefix of PATH_ELT, return true; otherwise false.
    That is, the question is whether to try the db for a file looked up
-   in PATH_ELT.  If PATH_ELT == ".", for example, the answer is no. If
+   in PATH_ELT.  If PATH_ELT == ".", for example, the answer is no.  If
    PATH_ELT == "/usr/local/lib/texmf/fonts//tfm", the answer is yes.
 
    In practice, ls-R is only needed for lengthy subdirectory
@@ -2462,7 +2462,7 @@
     STR_LLIST_NEXT (*e) = new_elt;
 }
 
-/* Move an element towards the top. The idea is that when a file is
+/* Move an element towards the top.  The idea is that when a file is
    found in a given directory, later files will likely be in that same
    directory, and looking for the file in all the directories in between
    is thus a waste.  */
--- a/liboctave/util/lo-macros.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/lo-macros.h	Thu May 19 18:48:52 2016 -0700
@@ -25,7 +25,7 @@
 
 #include "octave-config.h"
 
-// Core macros. Iteration is supported up to count 10.
+// Core macros.  Iteration is supported up to count 10.
 
 #define OCT_ITERATE_PARAM_MACRO0(MACRO, PARAM)
 #define OCT_ITERATE_PARAM_MACRO1(MACRO, PARAM) \
--- a/liboctave/util/lo-regexp.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/lo-regexp.cc	Thu May 19 18:48:52 2016 -0700
@@ -84,11 +84,11 @@
                || pattern.at (new_pos + 3) == '!'))
         {
           // The syntax of named tokens in pcre is "(?P<name>...)" while
-          // we need a syntax "(?<name>...)", so fix that here. Also an
+          // we need a syntax "(?<name>...)", so fix that here.  Also an
           // expression like
           // "(?<first>\w+)\s+(?<last>\w+)|(?<last>\w+),\s+(?<first>\w+)"
           // should be perfectly legal, while pcre does not allow the same
-          // named token name on both sides of the alternative. Also fix
+          // named token name on both sides of the alternative.  Also fix
           // that here by replacing name tokens by dummy names, and dealing
           // with the dummy names later.
 
@@ -138,7 +138,7 @@
           // Find lookbehind operators of arbitrary length (ie like
           // "(?<=[a-z]*)") and replace with a maximum length operator
           // as PCRE can not yet handle arbitrary length lookahead
-          // operators. Use the string length as the maximum length to
+          // operators.  Use the string length as the maximum length to
           // avoid issues.
 
           int brackets = 1;
--- a/liboctave/util/oct-binmap.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-binmap.h	Thu May 19 18:48:52 2016 -0700
@@ -31,10 +31,10 @@
 
 #include "bsxfun.h"
 
-// This source file implements a general binary maping function for
-// arrays. The syntax is binmap<type> (a, b, f,[name]). type denotes
-// the expected return type of the operation. a, b, should be one of
-// the 6 combinations:
+// This source file implements a general binary maping function for arrays.
+// The syntax is binmap<type> (a, b, f,[name]).
+// type denotes the expected return type of the operation.
+// a, b, should be one of the 6 combinations:
 //
 // Array-Array
 // Array-scalar
@@ -43,11 +43,11 @@
 // Sparse-scalar
 // scalar-Sparse
 //
-// If both operands are nonscalar, name must be supplied. It is used
+// If both operands are nonscalar, name must be supplied.  It is used
 // as the base for error message when operands are nonconforming.
 //
-// The operation needs not be homogeneous, i.e. a, b and the result
-// may be of distinct types. f can have any of the four signatures:
+// The operation needs not be homogeneous, i.e., a, b and the result
+// may be of distinct types.  f can have any of the four signatures:
 //
 // U f (T, R)
 // U f (const T&, R)
--- a/liboctave/util/oct-inttypes.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-inttypes.cc	Thu May 19 18:48:52 2016 -0700
@@ -245,7 +245,7 @@
 octave_int_cmp_op::emulate_mop (uint64_t x, double y)
 {
   static const double xxup = std::numeric_limits<uint64_t>::max ();
-  // This converts to the nearest double. Unless there's an equality, the
+  // This converts to the nearest double.  Unless there's an equality, the
   // result is clear.
   double xx = x;
   if (xx != y)
@@ -266,7 +266,7 @@
 {
   static const double xxup = std::numeric_limits<int64_t>::max ();
   static const double xxlo = std::numeric_limits<int64_t>::min ();
-  // This converts to the nearest double. Unless there's an equality, the
+  // This converts to the nearest double.  Unless there's an equality, the
   // result is clear.
   double xx = x;
   if (xx != y)
@@ -378,9 +378,9 @@
 int64_t
 octave_int_arith_base<int64_t, true>::mul_internal (int64_t x, int64_t y)
 {
-  // The signed case is far worse. The problem is that
+  // The signed case is far worse.  The problem is that
   // even if neither integer fits into signed 32-bit range, the result may
-  // still be OK. Uh oh.
+  // still be OK.  Uh oh.
 
   // Essentially, what we do is compute sign, multiply absolute values
   // (as above) and impose the sign.
@@ -482,13 +482,13 @@
   else
     {
       // If the number is within the int64 range (the most common case,
-      // probably), the above will work as expected. If not, it's more
+      // probably), the above will work as expected.  If not, it's more
       // complicated - as long as y is within _twice_ the signed range, the
-      // result may still be an integer. An instance of such an operation is
-      // 3*2**62 + (1+intmin ('int64')) that should yield int64 (2**62) + 1.  So
-      // what we do is to try to convert y/2 and add it twice. Note that if y/2
-      // overflows, the result must overflow as well, and that y/2 cannot be a
-      // fractional number.
+      // result may still be an integer.  An instance of such an operation is
+      // 3*2**62 + (1+intmin ('int64')) that should yield int64 (2**62) + 1.
+      // So what we do is to try to convert y/2 and add it twice.  Note that
+      // if y/2 overflows, the result must overflow as well, and that y/2
+      // cannot be a fractional number.
       octave_int64 y2 (y / 2);
       return (x + y2) + y2;
     }
@@ -510,7 +510,7 @@
     return octave_uint64 (x) - y;
   else
     {
-      // Again a trick to get the corner cases right. Things like
+      // Again a trick to get the corner cases right.  Things like
       // 3**2**63 - intmax ('uint64') should produce the correct result, i.e.
       // int64 (2**63) + 1.
       const double p2_64 = std::pow (2.0, 64);
@@ -549,9 +549,9 @@
 // of converting the double number into the form sign * 64-bit integer *
 // 2**exponent, multiply the 64-bit integers to get a 128-bit number, split that
 // number into 32-bit words and form 4 double-valued summands (none of which
-// loses precision), then convert these into integers and sum them. Though it is
-// not immediately obvious, this should work even w.r.t. rounding (none of the
-// summands lose precision).
+// loses precision), then convert these into integers and sum them.  Though it
+// is not immediately obvious, this should work even w.r.t. rounding (none of
+// the summands lose precision).
 
 // Multiplies two unsigned 64-bit ints to get a 128-bit number represented
 // as four 32-bit words.
--- a/liboctave/util/oct-inttypes.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-inttypes.h	Thu May 19 18:48:52 2016 -0700
@@ -77,7 +77,7 @@
 REGISTER_INT_TYPE (uint64_t);
 
 // Rationale: Comparators have a single static method, rel(), that returns the
-// result of the binary relation. They also have two static boolean fields:
+// result of the binary relation.  They also have two static boolean fields:
 // ltval, gtval determine the value of x OP y if x < y, x > y, respectively.
 #define REGISTER_OCTAVE_CMP_OP(NM,OP) \
   class NM \
@@ -101,12 +101,13 @@
       static bool op (T, T) { return value; } \
     }
 
-// Handles non-homogeneous integer comparisons. Avoids doing useless tests.
+// Handles non-homogeneous integer comparisons.  Avoids doing useless tests.
 class octave_int_cmp_op
 {
   // This determines a suitable promotion type for T1 when meeting T2 in a
-  // binary relation. If promotion to int or T2 is safe, it is used. Otherwise,
-  // the signedness of T1 is preserved and it is widened if T2 is wider.
+  // binary relation.  If promotion to int or T2 is safe, it is used.
+  // Otherwise, the signedness of T1 is preserved and it is widened if T2 is
+  // wider.
   // Notice that if this is applied to both types, they must end up with equal
   // size.
   template <typename T1, typename T2>
@@ -255,7 +256,7 @@
 #undef DEFINE_LONG_DOUBLE_CMP_OP
 };
 
-// Base integer class. No data, just conversion methods and exception flags.
+// Base integer class.  No data, just conversion methods and exception flags.
 template <typename T>
 class octave_int_base
 {
@@ -324,16 +325,16 @@
   convert_real (const S& value);
 };
 
-// Saturated (homogeneous) integer arithmetics. The signed and unsigned
+// Saturated (homogeneous) integer arithmetics.  The signed and unsigned
 // implementations are significantly different, so we implement another layer
-// and completely specialize. Arithmetics inherits from octave_int_base so that
-// it can use its exceptions and truncation functions.
+// and completely specialize.  Arithmetics inherits from octave_int_base so
+// that it can use its exceptions and truncation functions.
 
 template <typename T, bool is_signed>
 class octave_int_arith_base
 { };
 
-// Unsigned arithmetics. C++ standard requires it to be modular, so the
+// Unsigned arithmetics.  C++ standard requires it to be modular, so the
 // overflows can be handled efficiently and reliably.
 template <typename T>
 class octave_int_arith_base<T, false> : octave_int_base<T>
@@ -383,7 +384,7 @@
     return u;
   }
 
-  // Multiplication is done using promotion to wider integer type. If there is
+  // Multiplication is done using promotion to wider integer type.  If there is
   // no suitable promotion type, this operation *MUST* be specialized.
   static T mul (T x, T y) { return mul_internal (x, y); }
 
@@ -396,7 +397,7 @@
            * static_cast<mptype> (y));
   }
 
-  // Division with rounding to nearest. Note that / and % are probably
+  // Division with rounding to nearest.  Note that / and % are probably
   // computed by a single instruction.
   static T
   div (T x, T y)
@@ -421,7 +422,7 @@
     return y != 0 ? x % y : 0;
   }
 
-  // Modulus. Note the weird y = 0 case for Matlab compatibility.
+  // Modulus.  Note the weird y = 0 case for Matlab compatibility.
   static T
   mod (T x, T y)
   {
@@ -493,9 +494,9 @@
 //      so there is no need for things like -ftrapv).
 //
 //   4. Bit operations on signed integers work like on unsigned
-//      integers, except for the shifts. Shifts are arithmetic.
+//      integers, except for the shifts.  Shifts are arithmetic.
 //
-// The above conditions are satisfied by most modern platforms. If
+// The above conditions are satisfied by most modern platforms.  If
 // OCTAVE_HAVE_FAST_INT_OPS is defined, bit tricks and wraparound
 // arithmetics are used to avoid conditional jumps as much as
 // possible, thus being friendly to modern pipeline processor
@@ -559,7 +560,7 @@
   }
 
   // FIXME: we do not have an authority what signed shifts should
-  // exactly do, so we define them the easy way. Note that Matlab does
+  // exactly do, so we define them the easy way.  Note that Matlab does
   // not define signed shifts.
 
   static T
@@ -597,7 +598,7 @@
   {
 #if defined (OCTAVE_HAVE_FAST_INT_OPS)
     // The typecasts do nothing, but they are here to prevent an optimizing
-    // compiler from interfering. Also, the signed operations on small types
+    // compiler from interfering.  Also, the signed operations on small types
     // actually return int.
     T u = static_cast<UT> (x) + static_cast<UT> (y);
     T ux = u ^ x;
@@ -639,7 +640,7 @@
   {
 #if defined (OCTAVE_HAVE_FAST_INT_OPS)
     // The typecasts do nothing, but they are here to prevent an optimizing
-    // compiler from interfering. Also, the signed operations on small types
+    // compiler from interfering.  Also, the signed operations on small types
     // actually return int.
     T u = static_cast<UT> (x) - static_cast<UT> (y);
     T ux = u ^ x;
@@ -675,7 +676,7 @@
 #endif
   }
 
-  // Multiplication is done using promotion to wider integer type. If there is
+  // Multiplication is done using promotion to wider integer type.  If there is
   // no suitable promotion type, this operation *MUST* be specialized.
   static T mul (T x, T y) { return mul_internal (x, y); }
 
@@ -739,7 +740,7 @@
     return y != 0 ? x % y : 0;
   }
 
-  // Modulus. Note the weird y = 0 case for Matlab compatibility.
+  // Modulus.  Note the weird y = 0 case for Matlab compatibility.
   static T
   mod (T x, T y)
   {
@@ -1025,7 +1026,7 @@
 // We need to specialise for char and unsigned char because
 // std::operator<< and std::operator>> are overloaded to input and
 // output the ASCII character values instead of a representation of
-// their numerical value (e.g. os << char(10) outputs a space instead
+// their numerical value (e.g., os << char(10) outputs a space instead
 // of outputting the characters '1' and '0')
 
 template <>
--- a/liboctave/util/oct-locbuf.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-locbuf.cc	Thu May 19 18:48:52 2016 -0700
@@ -47,7 +47,7 @@
 
 octave_chunk_buffer::octave_chunk_buffer (size_t size) : cnk (0), dat (0)
 {
-  // Alignment mask. The size of double or long int, whichever is
+  // Alignment mask.  The size of double or long int, whichever is
   // greater.  All data will be aligned to this size.  If it's not
   // enough for a type, that type should not be declared as POD.
 
@@ -60,7 +60,7 @@
   if (! size)
     return;
 
-  // Align size. Note that size_t is unsigned, so size-1 must correctly
+  // Align size.  Note that size_t is unsigned, so size-1 must correctly
   // wrap around.
 
   size = ((size - 1) | align_mask) + 1;
--- a/liboctave/util/oct-locbuf.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-locbuf.h	Thu May 19 18:48:52 2016 -0700
@@ -167,7 +167,7 @@
 };
 
 // If the compiler supports dynamic stack arrays, we can use the
-// attached hack to place small buffer arrays on the stack. It may be
+// attached hack to place small buffer arrays on the stack.  It may be
 // even faster than our obstack-like optimization, but is dangerous
 // because stack is a very limited resource, so we disable it.
 
--- a/liboctave/util/oct-refcount.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-refcount.h	Thu May 19 18:48:52 2016 -0700
@@ -57,7 +57,7 @@
 
   octave_refcount(count_type initial_count) : count(initial_count) { }
 
-  // Increment/Decrement. int is postfix.
+  // Increment/Decrement.  int is postfix.
   count_type operator++(void)
   {
     return OCTREFCOUNT_ATOMIC_INCREMENT (&count);
--- a/liboctave/util/oct-shlib.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-shlib.cc	Thu May 19 18:48:52 2016 -0700
@@ -169,7 +169,7 @@
 
     // FIXME: this is possibly redundant because failure to open a library will
     // normally throw an exception, avoiding the construction of an invalid
-    // library. Leave it here for possible future use.
+  // library.  Leave it here for possible future use.
 
     bool is_open (void) const { return (library != 0); }
 
--- a/liboctave/util/oct-sort.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-sort.cc	Thu May 19 18:48:52 2016 -0700
@@ -21,7 +21,7 @@
 <http://www.gnu.org/licenses/>.
 
 Code stolen in large part from Python's, listobject.c, which itself had
-no license header. However, thanks to Tim Peters for the parts of the
+no license header.  However, thanks to Tim Peters for the parts of the
 code I ripped-off.
 
 As required in the Python license the short description of the changes
@@ -31,7 +31,7 @@
   replacing PyObject* with the type of the class T.
 
 * replaced usages of malloc, free, memcpy and memmove by standard C++
-  new [], delete [] and std::copy and std::copy_backward. Note that replacing
+  new [], delete [] and std::copy and std::copy_backward.  Note that replacing
   memmove by std::copy is possible if the destination starts before the source.
   If not, std::copy_backward needs to be used.
 
@@ -46,7 +46,7 @@
 * binary lookup and sequential binary lookup optimized for dense downsampling.
 
 * NOTE: the memory management routines rely on the fact that delete [] silently
-  ignores null pointers. Don't gripe about the missing checks - they're there.
+  ignores null pointers.  Don't gripe about the missing checks - they're there.
 
 
 The Python license is
--- a/liboctave/util/oct-sort.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/oct-sort.h	Thu May 19 18:48:52 2016 -0700
@@ -19,7 +19,7 @@
 <http://www.gnu.org/licenses/>.
 
 Code stolen in large part from Python's, listobject.c, which itself had
-no license header. However, thanks to Tim Peters for the parts of the
+no license header.  However, thanks to Tim Peters for the parts of the
 code I ripped-off.
 
 As required in the Python license the short description of the changes
@@ -150,7 +150,7 @@
                const T* values, octave_idx_type nvalues,
                octave_idx_type *idx);
 
-  // A linear merge of two sorted tables. rev indicates the second table is
+  // A linear merge of two sorted tables.  rev indicates the second table is
   // in reverse order.
   void lookup_sorted (const T *data, octave_idx_type nel,
                       const T* values, octave_idx_type nvalues,
--- a/liboctave/util/sparse-sort.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/sparse-sort.cc	Thu May 19 18:48:52 2016 -0700
@@ -34,7 +34,7 @@
 #include "sparse-sort.h"
 
 // A simple class and instantiation of the octave merge sort class
-// to sort sparse data before matrix creation. This is significantly
+// to sort sparse data before matrix creation.  This is significantly
 // faster than using octave_qsort.
 
 bool
--- a/liboctave/util/unwind-prot.h	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/unwind-prot.h	Thu May 19 18:48:52 2016 -0700
@@ -110,10 +110,9 @@
     unwind_protect& operator = (const unwind_protect&);
   };
 
-  // Like unwind_protect, but this one will guard against the
-  // possibility of seeing an exception (or interrupt) in the cleanup
-  // actions. Not that we can do much about it, but at least we won't
-  // crash.
+  // Like unwind_protect, but this one will guard against the possibility
+  // of seeing an exception (or interrupt) in the cleanup actions.
+  // Not that we can do much about it, but at least we won't crash.
 
   class
   OCTAVE_API
--- a/liboctave/util/url-transfer.cc	Thu May 19 19:42:57 2016 -0400
+++ b/liboctave/util/url-transfer.cc	Thu May 19 18:48:52 2016 -0700
@@ -538,7 +538,7 @@
 
       // FIXME
       // The MDTM command fails for a directory on the servers I tested
-      // so this is a means of testing for directories. It also means
+      // so this is a means of testing for directories.  It also means
       // I can't get the date of directories!
 
       perform ();
@@ -566,7 +566,7 @@
       SETOPT (CURLOPT_URL, url.c_str ());
 
       // The MDTM command seems to reset the path to the root with the
-      // servers I tested with, so cd again into the correct path. Make
+      // servers I tested with, so cd again into the correct path.  Make
       // the path absolute so that this will work even with servers that
       // don't end up in the root after an MDTM command.
       cwd ("/" + path);
@@ -653,7 +653,7 @@
     CURLcode errnum;
 
     // The cURL library changed the curl_easy_setopt call to make an
-    // internal copy of string parameters in version 7.17.0. Prior
+    // internal copy of string parameters in version 7.17.0.  Prior
     // versions only held a pointer to a string provided by the caller
     // that must persist for the lifetime of the CURL handle.
     //
@@ -662,7 +662,7 @@
     //
     // To be compatible with any version of cURL, the caller must keep a
     // copy of all string parameters associated with a CURL handle until
-    // the handle is released. The curl_handle::curl_handle_rep class
+    // the handle is released.  The curl_handle::curl_handle_rep class
     // contains the pointer to the CURL handle and so is the best
     // candidate for storing the strings as well. (bug #36717)
     std::string url;
--- a/scripts/general/accumarray.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/general/accumarray.m	Thu May 19 18:48:52 2016 -0700
@@ -164,8 +164,8 @@
 
   if (issparse)
 
-    ## Sparse case. Avoid linearizing the subscripts, because it could
-    ## overflow.
+    ## Sparse case.
+    ## Avoid linearizing the subscripts, because it could overflow.
 
     if (fillval != 0)
       error ("accumarray: FILLVAL must be zero in the sparse case");
@@ -191,7 +191,7 @@
 
     if (! (isempty (func) || func == @sum))
 
-      ## Reduce values. This is not needed if we're about to sum them,
+      ## Reduce values.  This is not needed if we're about to sum them,
       ## because "sparse" can do that.
 
       ## Sort indices.
@@ -324,7 +324,7 @@
       endif
     else
 
-      ## The general case. Reduce values.
+      ## The general case.  Reduce values.
       n = rows (subs);
       if (numel (vals) == 1)
         vals = vals(ones (1, n), 1);
@@ -340,7 +340,7 @@
         jdx = [jdx; n];
       endif
       vals = mat2cell (vals(idx), diff ([0; jdx]));
-      ## Optimize the case when function is @(x) {x}, i.e. we just want
+      ## Optimize the case when function is @(x) {x}, i.e., we just want
       ## to collect the values to cells.
       persistent simple_cell_str = func2str (@(x) {x});
       if (! strcmp (func2str (func), simple_cell_str))
--- a/scripts/general/accumdim.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/general/accumdim.m	Thu May 19 18:48:52 2016 -0700
@@ -125,7 +125,7 @@
   subsc = {':'}(ones (1, length (sz)));
   subsc{dim} = idx;
   vals = mat2cell (vals(subsc{:}), szc{:});
-  ## Apply reductions. Special case min, max.
+  ## Apply reductions.  Special case min, max.
   if (func == @min || func == @max)
     vals = cellfun (func, vals, {[]}, {dim}, "uniformoutput", false);
   else
--- a/scripts/general/inputParser.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/general/inputParser.m	Thu May 19 18:48:52 2016 -0700
@@ -9,7 +9,7 @@
 ##
 ## Octave is distributed in the hope that it will be useful, but
 ## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 ## General Public License for more details.
 ##
 ## You should have received a copy of the GNU General Public License
--- a/scripts/general/nargoutchk.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/general/nargoutchk.m	Thu May 19 18:48:52 2016 -0700
@@ -47,8 +47,8 @@
 function msg = nargoutchk (minargs, maxargs, nargs, outtype)
 
   ## before matlab's 2011b, nargoutchk would return an error message (just the
-  ## message in a string). With 2011b, it no longer returns anything, it simply
-  ## gives an error if the args number is incorrect.
+  ## message in a string).  With 2011b, it no longer returns anything, it
+  ## simply gives an error if the args number is incorrect.
   ## To try to keep compatibility with both versions, check nargout and nargin
   ## to guess if the caller is expecting a value (old syntax)
   ## or none (new syntax).
--- a/scripts/general/validateattributes.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/general/validateattributes.m	Thu May 19 18:48:52 2016 -0700
@@ -9,7 +9,7 @@
 ##
 ## Octave is distributed in the hope that it will be useful, but
 ## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 ## General Public License for more details.
 ##
 ## You should have received a copy of the GNU General Public License
@@ -169,6 +169,7 @@
 ## @end deftypefn
 
 function validateattributes (A, cls, attr, varargin)
+
   if (nargin < 3 || nargin > 6)
     print_usage ();
   elseif (! iscellstr (cls))
@@ -228,16 +229,16 @@
   endif
 
   ## We use a while loop because some attributes require the following value
-  ## in the cell array. Also, we can't just get the boolean value for the
+  ## in the cell array.  Also, we can't just get the boolean value for the
   ## test and check at the end the error message since some of the tests
   ## require some more complex error message.
 
   ## It may look like that we don't perform enough input check in this
   ## function (e.g., we don't check if there's a value after the size
-  ## attribute). The reasoning is that this will be a function mostly used
+  ## attribute).  The reasoning is that this will be a function mostly used
   ## by developers with fairly static input so any problem would be caught
-  ## immediately during that functino development, it's no dependent on the
-  ## final user input. In addition, it can be called so many times at the
+  ## immediately during that function development, it's no dependent on the
+  ## final user input.  In addition, it can be called so many times at the
   ## start of every function, we want it to run specially fast.
   idx = 1;
   problem = false; # becomes true when one of the tests fails
@@ -302,7 +303,7 @@
         endif
       case "ndims",
         ## Note that a [4 5 1] matrix is not considered to have ndims == 3
-        ## but is ok for "3d". This is not a bug.
+        ## but is ok for "3d".  This is not a bug.
         if (ndims (A) != attr{idx++})
           error ("%s must have %d dimensions", err_ini, attr{idx-1});
         endif
--- a/scripts/geometry/tsearchn.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/geometry/tsearchn.m	Thu May 19 18:48:52 2016 -0700
@@ -48,8 +48,8 @@
     b = cart2bary (x (t (i, :), :), xi(ni,:));
 
     ## Our points xi are in the current triangle if
-    ## (all (b >= 0) && all (b <= 1)). However as we impose that
-    ## sum (b,2) == 1 we only need to test all(b>=0). Note need to add
+    ## (all (b >= 0) && all (b <= 1)).  However as we impose that
+    ## sum (b,2) == 1 we only need to test all(b>=0).  Note need to add
     ## a small margin for rounding errors
     intri = all (b >= -1e-12, 2);
     idx(ni(intri)) = i;
@@ -66,7 +66,7 @@
   ##
   ## P = Beta * T
   ##
-  ## Where Beta is a N+1 vector of the barycentric coordinates. A criteria
+  ## Where Beta is a N+1 vector of the barycentric coordinates.  A criteria
   ## on Beta is that
   ##
   ## sum (Beta) == 1
--- a/scripts/geometry/voronoi.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/geometry/voronoi.m	Thu May 19 18:48:52 2016 -0700
@@ -114,8 +114,8 @@
     error ("voronoi: minimum of 2 points needed");
   endif
 
-  ## Add box to approximate rays to infinity. For Voronoi diagrams the
-  ## box can (and should) be close to the points themselves. To make the
+  ## Add box to approximate rays to infinity.  For Voronoi diagrams the
+  ## box can (and should) be close to the points themselves.  To make the
   ## job of finding the exterior edges it should be at least two times the
   ## delta below however
   xmax = max (x(:));
--- a/scripts/help/__makeinfo__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/help/__makeinfo__.m	Thu May 19 18:48:52 2016 -0700
@@ -25,19 +25,19 @@
 ## Run @code{makeinfo} on a given text.
 ##
 ## The string @var{text} is run through the @code{__makeinfo__} program
-## to generate output in various formats. This string must contain valid
+## to generate output in various formats.  This string must contain valid
 ## Texinfo formatted text.
 ##
-## The @var{output_type} selects the format of the output. This can be either
-## @t{"html"}, @t{"texinfo"}, or @t{"plain text"}. By default this is
-## @t{"plain text"}. If @var{output_type} is @t{"texinfo"}, the @t{@@seealso}
+## The @var{output_type} selects the format of the output.  This can be either
+## @t{"html"}, @t{"texinfo"}, or @t{"plain text"}.  By default this is
+## @t{"plain text"}.  If @var{output_type} is @t{"texinfo"}, the @t{@@seealso}
 ## macro is expanded, but otherwise the text is unaltered.
 ##
 ## If the optional argument @var{see_also} is present, it is used to expand the
-## Octave specific @t{@@seealso} macro. This argument must be a function handle,
+## Octave specific @t{@@seealso} macro.  This argument must be a function handle,
 ## that accepts a cell array of strings as input argument (each elements of the
 ## array corresponds to the arguments to the @t{@@seealso} macro), and return
-## the expanded string. If this argument is not given, the @t{@@seealso} macro
+## the expanded string.  If this argument is not given, the @t{@@seealso} macro
 ## will be expanded to the text
 ##
 ## @example
--- a/scripts/help/__unimplemented__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/help/__unimplemented__.m	Thu May 19 18:48:52 2016 -0700
@@ -534,7 +534,7 @@
     case "loaded",
       txt = sprintf ("%s but has not yet been implemented.", txt);
     case "not loaded",
-      txt = sprintf (["%s which you have installed but not loaded. To ", ...
+      txt = sprintf (["%s which you have installed but not loaded.  To ", ...
                       "load the package, run `pkg load %s' from the ", ...
                       "Octave prompt."], txt, name);
     otherwise
--- a/scripts/help/get_first_help_sentence.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/help/get_first_help_sentence.m	Thu May 19 18:48:52 2016 -0700
@@ -92,7 +92,7 @@
 endfunction
 
 ## This function extracts the first sentence from a Texinfo help text.
-## The function works by removing @def* from the texinfo text. After this, we
+## The function works by removing @def* from the texinfo text.  After this, we
 ## render the text to plain text using makeinfo, and then extract the first
 ## line.
 function [text, status] = first_sentence_texinfo (help_text, max_len)
@@ -100,7 +100,7 @@
   ## concatenated with the following line.
   help_text = strrep (help_text, "@\n", " ");
 
-  ## Find, and remove, lines that start with @def. This should remove things
+  ## Find, and remove, lines that start with @def.  This should remove things
   ## such as @deftypefn, @deftypefnx, @defvar, etc.
   keep = true (size (help_text));
   def_idx = strfind (help_text, "@def");
--- a/scripts/help/print_usage.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/help/print_usage.m	Thu May 19 18:48:52 2016 -0700
@@ -104,7 +104,7 @@
   ## concatenated with the following line.
   help_text = strrep (help_text, "@\n", " ");
 
-  ## Find, and keep, lines that start with @def or @end def. This should
+  ## Find, and keep, lines that start with @def or @end def.  This should
   ## include things such as @deftypefn, @deftypefnx, @defvar, etc. and their
   ## corresponding @end's.
   def_idx = strfind (help_text, "@def");
--- a/scripts/image/imformats.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/imformats.m	Thu May 19 18:48:52 2016 -0700
@@ -100,7 +100,7 @@
           if (! ischar (arg2))
             error ("imformats: EXT to %s must be a string.", arg1);
           endif
-          ## FIXME: suppose a format with multiple extensions. If one of
+          ## FIXME: suppose a format with multiple extensions.  If one of
           ##        them is requested to be removed, should we remove the
           ##        whole format, or just that extension from the format?
           match = find_ext_idx (formats, arg2);
@@ -125,7 +125,7 @@
           ## then we look for a format with that extension.
           match = find_ext_idx (formats, arg1);
           ## For matlab compatibility, if we don't find any format we must
-          ## return an empty struct with NO fields. We can't use match as mask
+          ## return an empty struct with NO fields.  We can't use match as mask
           if (any (match))
             varargout{1} = formats(match);
           else
@@ -143,7 +143,7 @@
 function formats = default_formats ()
 
   ## The available formats are dependent on what the user has installed at
-  ## a given time, and how GraphicsMagick was built. Checking for
+  ## a given time, and how GraphicsMagick was built.  Checking for
   ## GraphicsMagick features when building Octave is not enough since it
   ## delegates some of them to external programs which can be removed or
   ## installed at any time.
@@ -154,7 +154,7 @@
   ## writable because some RW coders are not of image formats (NULL, 8BIM,
   ## or EXIF for example).
   ## So we'd need a blacklist (unacceptable because a `bad' coder may be
-  ## added later) or a whitelist. A whitelist means that even with a
+  ## added later) or a whitelist.  A whitelist means that even with a
   ## super-fancy recent build of GraphicsMagick, some formats won't be listed
   ## by imformats but in truth, we will still be able to read and write them
   ## since imread() and imwrite() will give it a try anyway.
@@ -181,34 +181,34 @@
 
   ##      Building the formats info
   ##
-  ## As mentioned above we start with a whitelist of coders. Since the
+  ## As mentioned above we start with a whitelist of coders.  Since the
   ## GraphicsMagick build may be missing some coders, we will remove those
-  ## from the list. Some info can be obtained directly from GraphicsMagick
-  ## through the CoderInfo object. However, some will need to be hardcoded.
+  ## from the list.  Some info can be obtained directly from GraphicsMagick
+  ## through the CoderInfo object.  However, some will need to be hardcoded.
   ##
   ## The association between file extensions and coders needs to be done
   ## with a manually coded list (file extensions do not define the image
   ## format and GraphicsMagick will not be fooled by changing the extension).
   ##
   ## We can get the read, write, description and multipage fields from
-  ## CoderInfo in C++. We should do the same for alpha (GraphicsMagick
-  ## calls it matte) but it's not available from CoderInfo. The only way to
+  ## CoderInfo in C++.  We should do the same for alpha (GraphicsMagick
+  ## calls it matte) but it's not available from CoderInfo.  The only way to
   ## check it is to create a sample image with each coder, then try to read
   ## it back with GraphicsMagick and use the matte method on the Image class.
   ## But making such test for each Octave session... meh! While technically
   ## it may be possible that the same coder has different support for alpha
   ## channel in different versions and builds, this doesn't seem to happen.
-  ## So we also hardcode those. In the future, maybe the CoderInfo class will
+  ## So we also hardcode those.  In the future, maybe the CoderInfo class will
   ## have a matte method like it does for multipage.
   ##
-  ## Other notes: some formats have more than one coder that do the same. For
-  ## example, for jpeg images there is both the JPG and JPEG coders. However,
+  ## Other notes: some formats have more than one coder that do the same.  For
+  ## example, for jpeg images there is both the JPG and JPEG coders.  However,
   ## it seems that when reading images, GraphicsMagick only uses one of them
   ## and that's the one we list (it's the one reported by imfinfo and that we
-  ## can use for isa). However, in some cases GraphicsMagick seems to rely
-  ## uniquely on the file extension ((JBIG and JBG at least. Create an image
+  ## can use for isa).  However, in some cases GraphicsMagick seems to rely
+  ## uniquely on the file extension (JBIG and JBG at least.  Create an image
   ## with each of those coders, swap their extension and it will report the
-  ## other coder). We don't have such cases on the whitelist but if we did, we
+  ## other coder).  We don't have such cases on the whitelist but if we did, we
   ## would need two entries for such cases.
 
   ## each row: 1st => Coder, 2nd=> file extensions, 3rd=> alpha
@@ -225,8 +225,8 @@
             "PGM",  {"pgm"},          false;
             "PNG",  {"png"},          true;
             ## PNM is a family of formats supporting portable bitmaps (PBM),
-            ## graymaps (PGM), and pixmaps (PPM). There is no file format
-            ## associated with pnm itself. If PNM is used as the output format
+            ## graymaps (PGM), and pixmaps (PPM).  There is no file format
+            ## associated with pnm itself.  If PNM is used as the output format
             ## specifier, then GraphicsMagick automatically selects the most
             ## appropriate format to represent the image.
             "PNM",  {"pnm"},          true;
@@ -257,7 +257,7 @@
 endfunction
 
 function is_valid_format (format)
-  ## the minimal list of fields required in the structure. We don't
+  ## the minimal list of fields required in the structure.  We don't
   ## require multipage because it doesn't exist in matlab
   min_fields  = {"ext", "read", "isa", "write", "info", "alpha", "description"};
   fields_mask = isfield (format, min_fields);
--- a/scripts/image/imwrite.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/imwrite.m	Thu May 19 18:48:52 2016 -0700
@@ -110,7 +110,7 @@
       error ("imwrite: no extension found for %s to identify the image format",
              filename);
     endif
-    warning ("imwrite: unlisted image format %s (see imformats). Trying to save anyway.",
+    warning ("imwrite: unlisted image format %s (see imformats).  Trying to save anyway.",
              ext);
     __imwrite__ (varargin{:});
   else
--- a/scripts/image/ind2gray.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/ind2gray.m	Thu May 19 18:48:52 2016 -0700
@@ -54,7 +54,7 @@
   ## will produce output of the same type as the input.
   cls = class (x);
   if (isinteger (x))
-    ## if we later add support for int16 images, this will not work. Look into
+    ## if we later add support for int16 images, this will not work.  Look into
     ## im2int16 from image package for such case
     map *= intmax (cls);
   elseif (strcmp (cls, "single"))
--- a/scripts/image/private/__imfinfo__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/private/__imfinfo__.m	Thu May 19 18:48:52 2016 -0700
@@ -17,9 +17,9 @@
 ## along with Octave; see the file COPYING.  If not, see
 ## <http://www.gnu.org/licenses/>.
 
-## This function does all the work of imfinfo. It exists here as private
+## This function does all the work of imfinfo.  It exists here as private
 ## function so that imfinfo can use other functions if imformats is
-## configured to. It is also needed so that imformats can create a
+## configured to.  It is also needed so that imformats can create a
 ## function handle for it.
 
 ## Author: Soren Hauberg <hauberg@gmail.com>
--- a/scripts/image/private/__imwrite__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/private/__imwrite__.m	Thu May 19 18:48:52 2016 -0700
@@ -17,9 +17,9 @@
 ## along with Octave; see the file COPYING.  If not, see
 ## <http://www.gnu.org/licenses/>.
 
-## This function does all the work of imwrite. It exists here as private
+## This function does all the work of imwrite.  It exists here as private
 ## function so that imwrite can use other functions if imformats is
-## configured to. It is also needed so that imformats can create a
+## configured to.  It is also needed so that imformats can create a
 ## function handle for it.
 
 function __imwrite__ (img, varargin)
@@ -134,14 +134,14 @@
           error ("imwrite: value for %s must be Inf or between 0 and 65535",
                  param_list{idx});
         endif
-        ## Graphics Magick is a bit weird here. A value of 0 will be an
+        ## Graphics Magick is a bit weird here.  A value of 0 will be an
         ## infinite loop, a value of 1, will really be no loop, while a
         ## value of 2 or more will be that number of loops (checked
-        ## with GNOME image viewer). This means that there is no way
-        ## to make it loop only once. See
+        ## with GNOME image viewer).  This means that there is no way
+        ## to make it loop only once.  See
         ## https://sourceforge.net/p/graphicsmagick/bugs/249/
         ## There is also the problem of setting this when there is only
-        ## a single frame. See
+        ## a single frame.  See
         ## https://sourceforge.net/p/graphicsmagick/bugs/248/
         if (isinf (options.loopcount))
           options.loopcount = 0;
@@ -189,12 +189,12 @@
       required_colors = max (img(:));
     endif
     if (nColors < required_colors)
-      warning ("imwrite: MAP has not enough colors. Filling with black");
+      warning ("imwrite: MAP has not enough colors.  Filling with black");
       map(nColors+1:required_colors,:) = 0;
     endif
 
     ## If the image is floating point, then we convert it to integer (makes
-    ## it easier in __magick_write__ since it only handles integers. Also,
+    ## it easier in __magick_write__ since it only handles integers.  Also,
     ## if it's floating point, it has an offset of 1
     if (isfloat (img))
       if (rows (map) <= 256)
--- a/scripts/image/private/colorspace_conversion_input_check.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/private/colorspace_conversion_input_check.m	Thu May 19 18:48:52 2016 -0700
@@ -40,7 +40,7 @@
     is_im = true;
 
     ## For floating point values, R, G and B should be in the [0 1] range,
-    ## otherwise they don't make any sense. We accept those values
+    ## otherwise they don't make any sense.  We accept those values
     ## anyways because we must return something for Matlab compatibility.
     ## User case is when a function returns an RGB image just slightly outside
     ## the range due to floating point rounding errors.
--- a/scripts/image/private/imageIO.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/private/imageIO.m	Thu May 19 18:48:52 2016 -0700
@@ -34,7 +34,7 @@
 ## fieldname - Name of the field in the struct returned by imformats that
 ##             has the function to use.
 ## filename  - Most likely the first input argument from the function that
-##             called this. May be missing the file extension which can be
+##             called this.  May be missing the file extension which can be
 ##             on varargin.
 ## varargin  - Followed by all the OTHER arguments passed to imread and
 ##             imfinfo.
--- a/scripts/image/private/imwrite_filename.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/private/imwrite_filename.m	Thu May 19 18:48:52 2016 -0700
@@ -45,7 +45,7 @@
 
   ## Next, we get the file extension.
   ## if we have an odd number of leftover arguments, and the next argument
-  ## is a string, we consider it the file extension. Otherwise we will
+  ## is a string, we consider it the file extension.  Otherwise we will
   ## extract what we can from the previously found filename.
   options_idx = filename_idx + 1;
   if (numel (varargin) > filename_idx
--- a/scripts/image/rgb2ind.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/image/rgb2ind.m	Thu May 19 18:48:52 2016 -0700
@@ -85,7 +85,7 @@
       error ("rgb2ind: unsupported image class %s", im_class);
   endswitch
 
-  ## we convert to the smallest class necessary to encode the image. Matlab
+  ## we convert to the smallest class necessary to encode the image.  Matlab
   ## documentation does not mention what it does when uint16 is not enough...
   ## When an indexed image is of integer class, there's a -1 offset to the
   ## colormap, hence the adjustment
@@ -105,7 +105,7 @@
 %!error <RGB> rgb2ind (rand (10, 10, 4))
 
 ## FIXME: the following tests simply make sure that rgb2ind and ind2rgb
-##        reverse each other. We should have better tests for this.
+##        reverse each other.  We should have better tests for this.
 
 ## Typical usage
 %!test
--- a/scripts/io/strread.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/io/strread.m	Thu May 19 18:48:52 2016 -0700
@@ -412,7 +412,7 @@
   if (! isempty (eol_char))
     ## Add eol_char to delimiter collection
     delimiter_str = unique ([delimiter_str eol_char]);
-    ## .. and remove it from whitespace collection
+    ## and remove it from whitespace collection
     white_spaces = strrep (white_spaces, eol_char, '');
   endif
 
@@ -451,8 +451,8 @@
     endif
     ## Wipe leading and trailing whitespace on each line (it may be
     ## delimiter too)
-    ## FIXME: Double strrep on str is enormously expensive of CPU time.
-    ## Can this be eliminated
+    ## FIXME: Double strrep on str is enormously expensive in CPU time.
+    ## Can this be eliminated?
     if (! isempty (eol_char))
       str = strrep (str, [eol_char " "], eol_char);
       str = strrep (str, [" " eol_char], eol_char);
@@ -462,8 +462,8 @@
   ## Split 'str' into words
   words = split_by (str, delimiter_str, mult_dlms_s1, eol_char);
   if (! isempty (white_spaces))
-    ## Trim leading and trailing 'white_spaces'. All whitespace has
-    ## been converted to space above
+    ## Trim leading and trailing 'white_spaces'.
+    ## All whitespace has been converted to space above
     words = strtrim (words);
   endif
   num_words = numel (words);
@@ -479,7 +479,7 @@
   endif
 
   ## fmt_words has been split properly now, but words{} has only been split on
-  ## delimiter positions. As numeric fields can also be separated by
+  ## delimiter positions.  As numeric fields can also be separated by
   ## whitespace, more splits may be needed.
   ## We also don't know the number of lines (as EndOfLine may have been set to
   ## "" (empty) by the caller).
@@ -490,7 +490,7 @@
   ## C. Skipping leftover parts of specified skip fields (%*N )
   ## Some words columns may have to be split further to fix these.
   ## To find out, we'll match fmt_words to the words array to see what
-  ## needs to be done. fwptr tracks which {fmt_words}# starts in what {words}#
+  ## needs to be done.  fwptr tracks which {fmt_words} starts in what {words}
 
   ## Find indices and pointers to possible literals in fmt_words
   idf = cellfun ("isempty", strfind (fmt_words, "%"));
@@ -532,10 +532,10 @@
               ## Parse error.  Literal extends beyond delimiter (word boundary)
               warning ("strread: literal '%s' (fmt spec # %d) does not match data", ...
                 fmt_words{ii}, ii);
-              ## Word assumed to be completely "used up". Next word
+              ## Word assumed to be completely "used up".  Next word
               nxt_wrd = 1;
             elseif (iwrdp == iwrdl)
-              ## Word completely "used up". Next word
+              ## Word completely "used up".  Next word
               nxt_wrd = 1;
             endif
           endif
@@ -546,7 +546,7 @@
           ew = regexp (fmt_words{ii}, '[nfuds]') - 1;
           iwrdp += floor (str2double (fmt_words{ii}(sw:ew)));
           if (iwrdp > iwrdl)
-            ## Match error. Field extends beyond word boundary.
+            ## Match error.  Field extends beyond word boundary.
             warning  ...
             ("strread: field width '%s' (fmt spec # %d) extends beyond actual word limit", ...
                fmt_words{ii}, ii);
@@ -558,7 +558,7 @@
           endif
 
         else
-          ## A simple format conv. specifier. Either (1) uses rest of word, or
+          ## A simple format conv. specifier.  Either (1) uses rest of word, or
           ## (2) is squeezed between current iwrdp and next literal, or (3) uses
           ## next word. (3) is already taken care of.  So just check (1) & (2)
           if (ii < numel (fmt_words) && idf(ii+1))
@@ -638,7 +638,8 @@
 
             else
               if (idg(ii))
-                ## Current field = fixed width. Strip into icol, rest in icol+1
+                ## Current field = fixed width.
+                ## Strip into icol, rest in icol+1
                 sw = regexp (fmt_words{ii}, '\d', "once");
                 ew = regexp (fmt_words{ii}, '[nfuds]') - 1;
                 wdth = floor (str2double (fmt_words{ii}(sw:ew)));
@@ -654,7 +655,8 @@
                 endif
               else
                 if (! isempty (strfind (fmt_words{ii-1}, "%s")))
-                  ## Trailing literal. Could be ambiguous if preceding format == '%s'
+                  ## Trailing literal.
+                  ## Could be ambiguous if preceding format == '%s'
                   warning ("strread.m:\n  Ambiguous '%%s' specifier immediately before literal in column %d", icol);
                 endif
                 ## FIXME: this assumes char(254)/char(255) won't occur in input!
@@ -789,8 +791,9 @@
       endswitch
     catch
       ## As strread processes columnwise, ML-compatible error processing
-      ## (row after row) is not feasible. In addition Octave sets unrecognizable
-      ## numbers to NaN w/o error.  But maybe Octave is better in this respect.
+      ## (row after row) is not feasible.  In addition Octave sets
+      ## unrecognizable numbers to NaN w/o error.  But maybe Octave is better
+      ## in this respect.
       if (err_action)
         ## Just try the next column where ML bails out
       else
--- a/scripts/io/textread.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/io/textread.m	Thu May 19 18:48:52 2016 -0700
@@ -158,7 +158,7 @@
   endif
   st_pos = ftell (fid);
 
-  ## Read a first file chunk. Rest follows after endofline processing
+  ## Read a first file chunk.  Rest follows after endofline processing
   [str, count] = fscanf (fid, "%c", BUFLENGTH);
   if (isempty (str) || count < 1)
     warning ("textread: empty file");
@@ -226,7 +226,7 @@
       eoi = [ eoi (length (str)) ];
       ++n_eoi;
     endif
-    ## Found EOL delimiting last requested line. Compute ptr (incl. EOL)
+    ## Found EOL delimiting last requested line.  Compute ptr (incl. EOL)
     if (isempty (eoi))
       eoi_pos = nblks * BUFLENGTH + count;
     else
--- a/scripts/java/javaclasspath.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/java/javaclasspath.m	Thu May 19 18:48:52 2016 -0700
@@ -93,7 +93,7 @@
   else
     if (! nargin)
       ## This is to allow retrieval of both paths in separate variables with
-      ## a single call to javaclasspath(). Matlab returns only the -dynamic
+      ## a single call to javaclasspath().  Matlab returns only the -dynamic
       ## path in this case but this won't break compatibility.
       path1 = cellstr (dynamic_path_list);
       path2 = cellstr (static_path_list);
--- a/scripts/miscellaneous/info.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/miscellaneous/info.m	Thu May 19 18:48:52 2016 -0700
@@ -9,7 +9,7 @@
 ##
 ## Octave is distributed in the hope that it will be useful, but
 ## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 ## General Public License for more details.
 ##
 ## You should have received a copy of the GNU General Public License
--- a/scripts/miscellaneous/license.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/miscellaneous/license.m	Thu May 19 18:48:52 2016 -0700
@@ -62,7 +62,7 @@
 
 ## Author: William Poetra Yoga Hadisoeseno <williampoetra@gmail.com>
 
-function [retval, errmsg] = license (cmd, feature, toogle)
+function [retval, errmsg] = license (cmd, feature, toggle)
 
   if (nargin > 3)
     print_usage ();
@@ -99,13 +99,13 @@
       endif
 
       if (nargin > 2)
-        ## We ignore the toogle argument because... what's the point?  We
+        ## We ignore the toggle argument because... what's the point?  We
         ## don't need a license management system on Octave.  This function
-        ## will return true, even if anyone tries to disabled a license.
-        switch (tolower (toogle))
+        ## will return true, even if anyone tries to disable a license.
+        switch (tolower (toggle))
           case "enable"   # do nothing
           case "disable"  # do nothing
-          otherwise       error ("license: TOOGLE must be enable or disable");
+          otherwise       error ("license: TOGGLE must be enable or disable");
         endswitch
       endif
 
@@ -184,5 +184,5 @@
 ## Test input validation
 %!error license ("not_inuse")
 %!error license ("not_test", "octave", "enable")
-%!error <TOOGLE must be enable or disable> license ("test", "octave", "invalid_toogle")
+%!error <TOGGLE must be enable or disable> license ("test", "octave", "invalid_toggle")
 
--- a/scripts/miscellaneous/perl.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/miscellaneous/perl.m	Thu May 19 18:48:52 2016 -0700
@@ -9,7 +9,7 @@
 ##
 ## Octave is distributed in the hope that it will be useful, but
 ## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 ## General Public License for more details.
 ##
 ## You should have received a copy of the GNU General Public License
--- a/scripts/miscellaneous/private/__xzip__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/miscellaneous/private/__xzip__.m	Thu May 19 18:48:52 2016 -0700
@@ -23,12 +23,12 @@
 ## @end deftypefn
 
 ## Compress the list of files and/or directories specified in @var{files}
-## with the external compression command @var{commandname}. The template
-## @var{commandtemplate} is used to actually start the command. Each file
+## with the external compression command @var{commandname}.  The template
+## @var{commandtemplate} is used to actually start the command.  Each file
 ## is compressed separately and a new file with the extension @var{extension}
-## is created and placed into the directory @var{outdir}. The original files
-## are not touched. Existing compressed files are silently overwritten.
-## This is an internal function. Do not use directly.
+## is created and placed into the directory @var{outdir}.  The original files
+## are not touched.  Existing compressed files are silently overwritten.
+## This is an internal function.  Do not use directly.
 
 function filelist = __xzip__ (commandname, extension, commandtemplate,
                               files, outdir)
--- a/scripts/miscellaneous/private/display_info_file.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/miscellaneous/private/display_info_file.m	Thu May 19 18:48:52 2016 -0700
@@ -16,8 +16,8 @@
 ## along with Octave; see the file COPYING.  If not, see
 ## <http://www.gnu.org/licenses/>.
 
-## news() and citation() are very much alike. They both do the same thing, just
-## for different files. This function does all the work.
+## news() and citation() are very much alike.  They both do the same thing,
+## just for different files.  This function does all the work.
 
 function display_info_file (func, package, file)
 
--- a/scripts/miscellaneous/python.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/miscellaneous/python.m	Thu May 19 18:48:52 2016 -0700
@@ -10,7 +10,7 @@
 ##
 ## Octave is distributed in the hope that it will be useful, but
 ## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 ## General Public License for more details.
 ##
 ## You should have received a copy of the GNU General Public License
--- a/scripts/ode/ode23.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/ode/ode23.m	Thu May 19 18:48:52 2016 -0700
@@ -94,7 +94,7 @@
 
 ## ChangeLog:
 ##   20010703 the function file "ode23.m" was written by Marc Compere
-##     under the GPL for the use with this software. This function has been
+##     under the GPL for the use with this software.  This function has been
 ##     taken as a base for the following implementation.
 ##   20060810, Thomas Treichl
 ##     This function was adapted to the new syntax that is used by the
--- a/scripts/optimization/__all_opts__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/__all_opts__.m	Thu May 19 18:48:52 2016 -0700
@@ -39,7 +39,7 @@
   elseif (nargin == 0)
     names = saved_names;
   else
-    ## query all options from all known functions. These will call optimset,
+    ## query all options from all known functions.  These will call optimset,
     ## which will in turn call us, but we won't answer.
     recursive = true;
     names = saved_names;
--- a/scripts/optimization/fminbnd.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/fminbnd.m	Thu May 19 18:48:52 2016 -0700
@@ -162,7 +162,7 @@
       ## Default to golden section step.
 
       ## WARNING: This is also the "initial" procedure following
-      ## MATLAB nomenclature. After the loop we'll fix the string
+      ## MATLAB nomenclature.  After the loop we'll fix the string
       ## for the first step.
       iter(niter+1).procedure = "golden";
 
--- a/scripts/optimization/fminsearch.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/fminsearch.m	Thu May 19 18:48:52 2016 -0700
@@ -100,7 +100,7 @@
 ##           STOPIT(4) = 0: regular simplex (sides of equal length, the default)
 ##           STOPIT(4) = 1: right-angled simplex.
 ##        Progress of the iteration is not shown if STOPIT(5) = 0 (default 1).
-##           STOPIT(6) indicates the direction (ie. minimization or
+##           STOPIT(6) indicates the direction (i.e., minimization or
 ##                   maximization.) Default is 1, maximization.
 ##                   set STOPIT(6)=-1 for minimization
 ##        If a non-empty fourth parameter string SAVIT is present, then
--- a/scripts/optimization/fminunc.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/fminunc.m	Thu May 19 18:48:52 2016 -0700
@@ -236,7 +236,7 @@
     endif
 
     ## FIXME: why tolf*n*xn?  If abs (e) ~ abs(x) * eps is a vector
-    ## of perturbations of x, then norm (hesr*e) <= eps*xn, i.e. by
+    ## of perturbations of x, then norm (hesr*e) <= eps*xn, i.e., by
     ## tolf ~ eps we demand as much accuracy as we can expect.
     if (norm (grad) <= tolf*n*xn)
       info = 1;
--- a/scripts/optimization/fsolve.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/fsolve.m	Thu May 19 18:48:52 2016 -0700
@@ -167,7 +167,7 @@
   updating = strcmpi (optimget (options, "Updating", "on"), "on");
   complexeqn = strcmpi (optimget (options, "ComplexEqn", "off"), "on");
 
-  ## Get scaling matrix using the TypicalX option. If set to "auto", the
+  ## Get scaling matrix using the TypicalX option.  If set to "auto", the
   ## scaling matrix is estimated using the Jacobian.
   typicalx = optimget (options, "TypicalX");
   if (isempty (typicalx))
@@ -248,15 +248,15 @@
 
     ## For square and overdetermined systems, we update a QR
     ## factorization of the Jacobian to avoid solving a full system in each
-    ## step. In this case, we pass a triangular matrix to __dogleg__.
+    ## step.  In this case, we pass a triangular matrix to __dogleg__.
     useqr = updating && m >= n && n > 10;
 
     if (useqr)
       ## FIXME: Currently, pivoting is mostly useless because the \ operator
       ## cannot exploit the resulting props of the triangular factor.
       ## Unpivoted QR is significantly faster so it doesn't seem right to pivot
-      ## just to get invariance. Original MINPACK didn't pivot either, at least
-      ## when qr updating was used.
+      ## just to get invariance.  Original MINPACK didn't pivot either, 
+      ## at least when qr updating was used.
       [q, r] = qr (fjac, 0);
     endif
 
@@ -272,7 +272,7 @@
         ##   dg = max (dg, jcn);
         ## but it seems not good if we start with a bad guess yielding Jacobian
         ## columns with large norms that later decrease, because the
-        ## corresponding variable will still be overscaled. So instead, we only
+        ## corresponding variable will still be overscaled.  Instead, we only
         ## give the old scaling a small momentum, but do not honor it.
 
         dg = max (0.1*dg, jcn);
@@ -287,7 +287,7 @@
 
     ## It also seems that in the case of fast (and inhomogeneously) changing
     ## Jacobian, the Broyden updates are of little use, so maybe we could
-    ## skip them if a big disproportional change is expected. The question is,
+    ## skip them if a big disproportional change is expected.  The question is,
     ## of course, how to define the above terms :)
 
     lastratio = 0;
@@ -382,27 +382,27 @@
         endif
       endif
 
-      ## Tests for termination conditions. A mysterious place, anything
+      ## Tests for termination conditions.  A mysterious place, anything
       ## can happen if you change something here...
 
       ## The rule of thumb (which I'm not sure M*b is quite following)
       ## is that for a tolerance that depends on scaling, only 0 makes
-      ## sense as a default value. But 0 usually means uselessly long
+      ## sense as a default value.  But 0 usually means uselessly long
       ## iterations, so we need scaling-independent tolerances wherever
       ## possible.
 
       ## FIXME: Why tolf*n*xn? If abs (e) ~ abs(x) * eps is a vector
-      ## of perturbations of x, then norm (fjac*e) <= eps*n*xn, i.e. by
+      ## of perturbations of x, then norm (fjac*e) <= eps*n*xn, i.e., by
       ## tolf ~ eps we demand as much accuracy as we can expect.
       if (fn <= tolf*n*xn)
         info = 1;
         ## The following tests done only after successful step.
       elseif (ratio >= 1e-4)
-        ## This one is classic. Note that we use scaled variables again,
+        ## This one is classic.  Note that we use scaled variables again,
         ## but compare to scaled step, so nothing bad.
         if (sn <= tolx*xn)
           info = 2;
-          ## Again a classic one. It seems weird to use the same tolf
+          ## Again a classic one.  It seems weird to use the same tolf
           ## for two different tests, but that's what M*b manual appears
           ## to say.
         elseif (actred < tolf)
--- a/scripts/optimization/fzero.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/fzero.m	Thu May 19 18:48:52 2016 -0700
@@ -94,8 +94,8 @@
 ## sequentially calling building blocks subprograms we implement here a
 ## FSM version using one interior point determination and one bracketing
 ## per iteration, thus reducing the number of temporary variables and
-## simplifying the algorithm structure. Further, this approach reduces
-## the need for external functions and error handling. The algorithm has
+## simplifying the algorithm structure.  Further, this approach reduces
+## the need for external functions and error handling.  The algorithm has
 ## also been slightly modified.
 
 ## PKG_ADD: ## Discard result to avoid polluting workspace with ans at startup.
--- a/scripts/optimization/lsqnonneg.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/lsqnonneg.m	Thu May 19 18:48:52 2016 -0700
@@ -178,7 +178,7 @@
                "a non-unique solution may be returned due to equal gradients");
       idx = idx(1);
     endif
-    ## move the index from Z to P. Keep P sorted.
+    ## move the index from Z to P.  Keep P sorted.
     z = [1:n]; z(p) = [];
     zidx = z(idx);
     jdx = 1 + lookup (p, zidx);
--- a/scripts/optimization/pqpnonneg.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/optimization/pqpnonneg.m	Thu May 19 18:48:52 2016 -0700
@@ -171,7 +171,7 @@
                "a non-unique solution may be returned due to equal gradients");
       idx = idx(1);
     endif
-    ## move the index from Z to P. Keep P sorted.
+    ## move the index from Z to P.  Keep P sorted.
     z = [1:n]; z(p) = [];
     zidx = z(idx);
     jdx = 1 + lookup (p, zidx);
--- a/scripts/pkg/private/configure_make.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/pkg/private/configure_make.m	Thu May 19 18:48:52 2016 -0700
@@ -98,11 +98,11 @@
   endif
 endfunction
 
-## Executes a shell command. In the end it calls system() but in case of
+## Executes a shell command.  In the end it calls system() but in case of
 ## windows will first check if sh.exe works.
 ##
 ## If VERBOSE is true, it will prints the output to STDOUT in real time and
-## the second output argument will be an empty string. Otherwise, it will
+## the second output argument will be an empty string.  Otherwise, it will
 ## contain the output of the execeuted command.
 function [status, output] = shell (cmd, verbose)
   persistent have_sh;
@@ -122,9 +122,9 @@
       error ("pkg: unable to find the command shell.");
     endif
   endif
-  ## if verbose, we want to display the output in real time. To do this, we
-  ## must call system with 1 output argument. But then the variable `output'
-  ## won't exist. So we initialize it empty. If an error does occur, and we
+  ## if verbose, we want to display the output in real time.  To do this, we
+  ## must call system with 1 output argument.  But then the variable `output'
+  ## won't exist.  So we initialize it empty.  If an error does occur, and we
   ## are verbose we will return an empty string but it's all fine since
   ## the error message has already been displayed.
   output = "";
--- a/scripts/pkg/private/get_forge_pkg.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/pkg/private/get_forge_pkg.m	Thu May 19 18:48:52 2016 -0700
@@ -42,7 +42,7 @@
   if (succ)
     ## Remove blanks for simpler matching.
     html(isspace(html)) = [];
-    ## Good. Let's grep for the version.
+    ## Good.  Let's grep for the version.
     pat = "<tdclass=""package_table"">PackageVersion:</td><td>([\\d.]*)</td>";
     t = regexp (html, pat, "tokens");
     if (isempty (t) || isempty (t{1}))
--- a/scripts/pkg/private/install.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/pkg/private/install.m	Thu May 19 18:48:52 2016 -0700
@@ -25,7 +25,7 @@
 function install (files, handle_deps, prefix, archprefix, verbose,
                   local_list, global_list, global_install)
 
-  ## Check that the directory in prefix exist. If it doesn't: create it!
+  ## Check that the directory in prefix exist.  If it doesn't: create it!
   if (! exist (prefix, "dir"))
     warning ("creating installation directory %s", prefix);
     [status, msg] = mkdir (prefix);
@@ -242,7 +242,7 @@
     rethrow (lasterror ());
   end_try_catch
 
-  ## Check if the installed directory is empty. If it is remove it
+  ## Check if the installed directory is empty.  If it is remove it
   ## from the list.
   for i = length (descriptions):-1:1
     if (dirempty (descriptions{i}.dir, {"packinfo", "doc"})
@@ -680,7 +680,7 @@
   instfid = fopen (instpkg, "at"); # append to support PKG_ADD at inst/
   ## If it is exists, most of the PKG_* file should go into the
   ## architecture dependent directory so that the autoload/mfilename
-  ## commands work as expected. The only part that doesn't is the
+  ## commands work as expected.  The only part that doesn't is the
   ## part in the main directory.
   archdir = fullfile (getarchprefix (desc, global_install),
                       [desc.name "-" desc.version], getarch ());
--- a/scripts/plot/appearance/legend.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/appearance/legend.m	Thu May 19 18:48:52 2016 -0700
@@ -144,7 +144,7 @@
     elseif (all (ishandle (plty)))
       ca = [ca, plty(:).'];
     else
-      error ("legend.m: This should not happen. File a bug report.");
+      error ("legend.m: This should not happen.  File a bug report.");
     endif
     ## Remove duplicates while preserving order
     [~, n] = unique (ca);
--- a/scripts/plot/appearance/whitebg.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/appearance/whitebg.m	Thu May 19 18:48:52 2016 -0700
@@ -70,8 +70,8 @@
 
   axes = findall (fig, "type", "axes");
   if (isnan (color))
-    ## Root figure. Set the default axes and figure properties so that
-    ## subsequent plots have the new color scheme
+    ## Root figure.  Set the default axes and figure properties so that
+    ## subsequent plots have the new color scheme.
     if (isroot)
       fac = get (0, "factory");
       fields = fieldnames (fac);
--- a/scripts/plot/draw/feather.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/draw/feather.m	Thu May 19 18:48:52 2016 -0700
@@ -87,9 +87,9 @@
     endif
   endif
 
-  ## Matlab draws feather plots, with the arrow head as one continous
-  ## line, and each arrow separately. This is completely different from
-  ## quiver and quite ugly.
+  ## Matlab draws feather plots, with the arrow head as one continuous line,
+  ## and each arrow separately.  This is completely different from quiver and
+  ## quite ugly.
   n = length (u);
   xend = [1 : n] + u;
   xtmp = [1 : n] + u .* (1 - arrowsize);
--- a/scripts/plot/draw/plotyy.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/draw/plotyy.m	Thu May 19 18:48:52 2016 -0700
@@ -181,7 +181,7 @@
   elseif (ishandle (ax(1)))
     set (ax(1), "__plotyy_axes__", ax);
   else
-    error ("plotyy.m: This shouldn't happen. File a bug report.");
+    error ("plotyy.m: This shouldn't happen.  File a bug report.");
   endif
   if (ishandle (ax(2)) && ! isprop (ax(2), "__plotyy_axes__"))
     addproperty ("__plotyy_axes__", ax(2), "data");
@@ -189,7 +189,7 @@
   elseif (ishandle (ax(2)))
     set (ax(2), "__plotyy_axes__", ax);
   else
-    error ("plotyy.m: This shouldn't happen. File a bug report.");
+    error ("plotyy.m: This shouldn't happen.  File a bug report.");
   endif
 endfunction
 
--- a/scripts/plot/draw/stemleaf.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/draw/stemleaf.m	Thu May 19 18:48:52 2016 -0700
@@ -2,22 +2,19 @@
 ##
 ## This file is part of Octave.
 ##
-## Octave is free software; you can redistribute it and/or
-## modify it under the terms of the GNU General Public
-## License as published by the Free Software Foundation;
-## either version 3 of the License, or (at your option) any
-## later version.
+## Octave is free software; you can redistribute it and/or modify it
+## under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or (at
+## your option) any later version.
 ##
-## Octave is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied
-## warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-## PURPOSE. See the GNU General Public License for more
-## details.
+## Octave is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## General Public License for more details.
 ##
-## You should have received a copy of the GNU General Public
-## License along with Octave; see the file COPYING. If not,
-## see <http://www.gnu.org/licenses/>.
-
+## You should have received a copy of the GNU General Public License
+## along with Octave; see the file COPYING.  If not, see
+## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
 ## @deftypefn  {} {} stemleaf (@var{x}, @var{caption})
@@ -115,7 +112,7 @@
   ##
   ## Note that the code has some added complexity due to the need to
   ## distinguish both + and - 0 stems.  The +- stem values are essential
-  ## for all plots which span 0. After dealing with +-0 stems, the added
+  ## for all plots which span 0.  After dealing with +-0 stems, the added
   ## complexity of putting +- data values in the correct stem is minor,
   ## but the sign of 0 leaves must be checked.  And, the cases where the
   ## stems start or end at +- 0 must also be considered.
@@ -166,7 +163,7 @@
     endif
   endif
 
-  ## Note that IEEE 754 states that -+ 0 should compare equal. This has
+  ## Note that IEEE 754 states that -+ 0 should compare equal.  This has
   ## led to C sort (and therefore Octave) treating them as equal.  Thus,
   ## sort([-1 0 -0 1]) yields [-1 0 -0 1], and sort([-1 -0 0 1])
   ## yields: [-1 -0 0 1].  This means that stem-and-leaf plotting cannot
--- a/scripts/plot/util/print.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/print.m	Thu May 19 18:48:52 2016 -0700
@@ -531,7 +531,7 @@
 
 function cmd = epstool (opts, filein, fileout)
   ## As epstool does not work with pipes, a subshell is used to
-  ## permit piping. Since this solution does not work with the DOS
+  ## permit piping.  Since this solution does not work with the DOS
   ## command shell, the -tight and -preview options are disabled if
   ## output must be piped.
 
--- a/scripts/plot/util/printd.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/printd.m	Thu May 19 18:48:52 2016 -0700
@@ -2,21 +2,19 @@
 ##
 ## This file is part of Octave.
 ##
-## Octave is free software; you can redistribute it and/or
-## modify it under the terms of the GNU General Public
-## License as published by the Free Software Foundation;
-## either version 3 of the License, or (at your option) any
-## later version.
+## Octave is free software; you can redistribute it and/or modify it
+## under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or (at
+## your option) any later version.
 ##
-## Octave is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied
-## warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
-## PURPOSE. See the GNU General Public License for more
-## details.
+## Octave is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## General Public License for more details.
 ##
-## You should have received a copy of the GNU General Public
-## License along with Octave; see the file COPYING. If not,
-## see <http://www.gnu.org/licenses/>.
+## You should have received a copy of the GNU General Public License
+## along with Octave; see the file COPYING.  If not, see
+## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
 ## @deftypefn  {} {} printd (@var{obj}, @var{filename})
--- a/scripts/plot/util/private/__gnuplot_draw_axes__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/private/__gnuplot_draw_axes__.m	Thu May 19 18:48:52 2016 -0700
@@ -820,7 +820,7 @@
            if (isfield (obj, "edgecolor"))
              ## FIXME: This is the wrong thing to do as edgecolor,
              ## markeredgecolor and markerfacecolor can have different values
-             ## and we should treat them seperately. However, the code below
+             ## and we should treat them seperately.  However, the code below
              ## allows the scatter functions to work as expected, where only
              ## one of these values is set.
              if (strcmp (obj.edgecolor, "none"))
@@ -1306,7 +1306,7 @@
           num_lines = numel (obj.string);
         endif
         switch (valign)
-          ## Text offset in characters. Relies on gnuplot for font metrics.
+          ## Text offset in characters.  Relies on gnuplot for font metrics.
           case "top"
             dy = -0.5;
           case "cap"
@@ -1319,9 +1319,9 @@
             dy = 0.5 + (num_lines - 1);
         endswitch
         ## Gnuplot's Character units are different for x/y and vary with
-        ## fontsize. The aspect ratio of 1:1.7 was determined by experiment
-        ## to work for eps/ps/etc. For the MacOS aqua terminal a value of 2.5
-        ## is needed. However, the difference is barely noticable.
+        ## fontsize.  The aspect ratio of 1:1.7 was determined by experiment
+        ## to work for eps/ps/etc.  For the MacOS aqua terminal a value of 2.5
+        ## is needed.  However, the difference is barely noticeable.
         dx_and_dy = [(-dy * sind (angle)), (dy * cosd (angle))] .* [1.7 1];
 
         ## FIXME: Multiline text produced the gnuplot
@@ -2396,7 +2396,7 @@
                  '{}', str(e(i) + b2(1) + 1:end)];
         endif
       else
-        ## Last desperate attempt to treat the symbol. Look for things
+        ## Last desperate attempt to treat the symbol.  Look for things
         ## like \pix, that should be translated to the symbol Pi and x
         for j = 1 : length (flds)
           if (strncmp (flds{j}, f, length (flds{j})))
@@ -2425,7 +2425,7 @@
   ## shortest..  Don't have to worry about things like ^\theta as they
   ## are already converted to ^{/Symbol q}.
 
-  ## FIXME: This is a mess... Is it worth it just for a "@" character?
+  ## FIXME: This is a mess.  Is it worth it just for a "@" character?
 
   [s, m] = regexp (str,'[_\^]','start','matches');
   i = 1;
--- a/scripts/plot/util/private/__gnuplot_draw_figure__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/private/__gnuplot_draw_figure__.m	Thu May 19 18:48:52 2016 -0700
@@ -50,12 +50,12 @@
         switch (type)
           case "axes"
             if (strcmpi (get (kids (i), "tag"), "legend"))
-              ## This is so ugly. If there was a way of getting
+              ## This is so ugly.  If there was a way of getting
               ## gnuplot to give us the text extents of strings
               ## then we could get rid of this mess.
               lh = getfield (get (kids(i), "userdata"), "handle");
               if (isscalar (lh))
-                ## We have a legend with a single parent. It'll be handled
+                ## We have a legend with a single parent.  It'll be handled
                 ## below as a gnuplot key to the axis it corresponds to
                 continue;
               else
--- a/scripts/plot/util/private/__gnuplot_ginput__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/private/__gnuplot_ginput__.m	Thu May 19 18:48:52 2016 -0700
@@ -77,7 +77,7 @@
       k += 1;
 
       ## Notes: MOUSE_* can be undefined if user closes gnuplot by "q"
-      ## or Alt-F4. Further, this abrupt close also requires the leading
+      ## or Alt-F4.  Further, this abrupt close also requires the leading
       ## "\n" on the next line.
       if (use_mkfifo)
         fprintf (ostream, "set print \"%s\";\n", gpin_name);
--- a/scripts/plot/util/private/__gnuplot_has_terminal__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/private/__gnuplot_has_terminal__.m	Thu May 19 18:48:52 2016 -0700
@@ -45,7 +45,7 @@
       endif
     endif
   else
-    ## Gnuplot 4.0 terminals. No new terminals were added until 4.4 which
+    ## Gnuplot 4.0 terminals.  No new terminals were added until 4.4 which
     ## allows the list of terminals to be obtained from GPVAL_TERMINALS.
     available_terminals = {"aifm", "aqua", "canvas", "cgm", "corel", ...
                            "dumb", "dxf", "eepic", "emf", "epslatex", ...
--- a/scripts/plot/util/private/__gnuplot_print__.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/private/__gnuplot_print__.m	Thu May 19 18:48:52 2016 -0700
@@ -238,7 +238,7 @@
     case {"eps", "eps2", "epsc", "epsc2"}
       ## Gnuplot renders fonts as half their specification, which
       ## results in a tight spacing for the axes-labels and tick-labels.
-      ## Compensate for the half scale. This will produce the proper
+      ## Compensate for the half scale.  This will produce the proper
       ## spacing for the requested fontsize.
       if (! isempty (opts.font) && ! isempty (opts.fontsize))
         f = sprintf ('font "%s,%d"', opts.font, 2 * opts.fontsize);
--- a/scripts/plot/util/struct2hdl.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/struct2hdl.m	Thu May 19 18:48:52 2016 -0700
@@ -257,8 +257,8 @@
       legend ("hide");
     endif
 
-    ## remove all properties such as "textposition" that redefines
-    ## the entire legend. Also remove chidren
+    ## remove all properties such as "textposition" that redefine
+    ## the entire legend.  Also remove chidren.
     s.properties = rmfield (s.properties, ...
                               {"userdata", "xlabel",...
                                "ylabel", "zlabel", "location", ...
@@ -542,7 +542,7 @@
                               {"xdata", "ydata", ...
                                "xdatasource", "ydatasource"});
   else
-    warning ("struct2hdl: could not infer the hggroup type. Will build objects but listener/callback functions will be lost");
+    warning ("struct2hdl: could not infer the hggroup type.  Will build objects but listener/callback functions will be lost");
     h = hggroup ("parent", par);
     addmissingprops (h, s.properties);
     s.special = [];           # children will be treated as normal children
@@ -565,7 +565,7 @@
       set (h, s.properties);
     else
       ## Specials are objects that where automatically constructed with
-      ## current object. Among them are "x(yz)labels", "title", high
+      ## current object.  Among them are "x(yz)labels", "title", high
       ## level hggroup children
       fields = fieldnames (s.properties);
       vals = struct2cell (s.properties);
--- a/scripts/plot/util/subplot.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/plot/util/subplot.m	Thu May 19 18:48:52 2016 -0700
@@ -370,8 +370,8 @@
   persistent updating = false;
   if (! updating)
     if (rmupdate)
-      ## The "position" property has been changed from outside this
-      ## routine. Don't update anymore.
+      ## The "position" property has been changed from outside this routine.
+      ## Don't update anymore.
       if (isappdata (h, "__subplotposition__"))
         rmappdata (h, "__subplotposition__");
         rmappdata (h, "__subplotouterposition__");
@@ -396,8 +396,8 @@
       hsubplots = children(do_align);
 
 
-      ## There may be mixed subplot series (e.g. 2-by-6 and 1-by-6) in
-      ## the same figure. Only subplots that have the same width and
+      ## There may be mixed subplot series (e.g., 2-by-6 and 1-by-6) in
+      ## the same figure.  Only subplots that have the same width and
       ## height as this one are updated.
       if (any (h == hsubplots))
         width = pos(h == hsubplots, 3);
--- a/scripts/polynomial/polyfit.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/polynomial/polyfit.m	Thu May 19 18:48:52 2016 -0700
@@ -136,8 +136,8 @@
 
     ## r.'*r is positive definite if X(:, polymask) is of full rank.
     ## Invert it by cholinv to avoid taking the square root of squared
-    ## quantities. If cholinv fails, then X(:, polymask) is rank
-    ## deficient and not invertible.
+    ## quantities.  If cholinv fails, then X(:, polymask) is rank deficient
+    ## and not invertible.
     try
       C = cholinv (r.'*r)(k, k);
     catch
@@ -170,7 +170,7 @@
 %!fail ("polyfit (x, x.^2+x+1)")
 %!fail ("polyfit (x, x.^2+x+1, [])")
 
-## Test difficult case where scaling is really needed. This example
+## Test difficult case where scaling is really needed.  This example
 ## demonstrates the rather poor result which occurs when the dependent
 ## variable is not normalized properly.
 ## Also check the usage of 2nd & 3rd output arguments.
--- a/scripts/polynomial/residue.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/polynomial/residue.m	Thu May 19 18:48:52 2016 -0700
@@ -159,7 +159,7 @@
     else
       e = [];
     endif
-    ## The inputs are the residue, pole, and direct part. Solve for the
+    ## The inputs are the residue, pole, and direct part.  Solve for the
     ## corresponding numerator and denominator polynomials
     [r, p] = rresidue (b, a, varargin{1}, toler, e);
     return;
@@ -198,7 +198,7 @@
   p = p(indx);
 
   ## For each group of pole multiplicity, set the value of each
-  ## pole to the average of the group. This reduces the error in
+  ## pole to the average of the group.  This reduces the error in
   ## the resulting poles.
 
   p_group = cumsum (e == 1);
--- a/scripts/sparse/sprandsym.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/sparse/sprandsym.m	Thu May 19 18:48:52 2016 -0700
@@ -85,19 +85,19 @@
   ## that this R is chosen uniformly over all such matrices.
   ##
   ## Let D be the number of diagonal entries and M the number of
-  ## off-diagonal entries. Then K = D + 2*M. Let A = N*(N-1)/2 be the
+  ## off-diagonal entries.  Then K = D + 2*M.  Let A = N*(N-1)/2 be the
   ## number of available entries in the upper triangle of the matrix.
   ## Then, by a simple counting argument, there is a total of
   ##
   ##     T = nchoosek (N, D) * nchoosek (A, M)
   ##
   ## symmetric NxN matrices with a total of K nonzero entries and D on
-  ## the diagonal. Letting D range from mod (K,2) through min (N,K), and
+  ## the diagonal.  Letting D range from mod (K,2) through min (N,K), and
   ## dividing by this sum, we obtain the probability P for D to be each
   ## of those values.
   ##
   ## However, we cannot use this form for computation, as the binomial
-  ## coefficients become unmanageably large. Instead, we use the
+  ## coefficients become unmanageably large.  Instead, we use the
   ## successive quotients Q(i) = T(i+1)/T(i), which we easily compute to
   ## be
   ##
@@ -110,7 +110,7 @@
   ##      C = [ T(1)/T(1), T(2)/T(1), T(3)/T(1), ..., T(N)/T(1) ]
   ##
   ## Their sum is thus S = sum (T)/T(1), and then C(i)/S is the desired
-  ## probability P(i) for i=1:N. The cumsum will finally give the
+  ## probability P(i) for i=1:N.  The cumsum will finally give the
   ## distribution function for computing the random number of entries on
   ## the diagonal R.
   ##
--- a/scripts/sparse/svds.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/sparse/svds.m	Thu May 19 18:48:52 2016 -0700
@@ -171,7 +171,7 @@
       ## As we are only interested in the positive eigenvalues, we have to
       ## double k and then throw out the k negative eigenvalues.
       ## Separately, if sigma is nonzero, but smaller than the smallest
-      ## singular value, ARPACK may not return k eigenvalues. However, as
+      ## singular value, ARPACK may not return k eigenvalues.  However, as
       ## computation scales with k we'd like to avoid doubling k for all
       ## scalar values of sigma.
       b_k = 2 * k;
@@ -193,10 +193,10 @@
       norma = normest (A);
     endif
     ## We wish to exclude all eigenvalues that are less than zero as these
-    ## are artifacts of the way the matrix passed to eigs is formed. There
+    ## are artifacts of the way the matrix passed to eigs is formed.  There
     ## is also the possibility that the value of sigma chosen is exactly
     ## a singular value, and in that case we're dead!! So have to rely on
-    ## the warning from eigs. We exclude the singular values which are
+    ## the warning from eigs.  We exclude the singular values which are
     ## less than or equal to zero to within some tolerance scaled by the
     ## norm since if we don't we might end up with too many singular
     ## values.
--- a/scripts/specfun/factor.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/specfun/factor.m	Thu May 19 18:48:52 2016 -0700
@@ -64,7 +64,7 @@
   ## There is at most one prime greater than sqrt(q), and if it exists,
   ## it has multiplicity 1, so no need to consider any factors greater
   ## than sqrt(q) directly.  [If there were two factors p1, p2 > sqrt(q),
-  ## then q >= p1*p2 > sqrt(q)*sqrt(q) == q. Contradiction.]
+  ## then q >= p1*p2 > sqrt(q)*sqrt(q) == q.  Contradiction.]
   p = primes (sqrt (q));
   while (q > 1)
     ## Find prime factors in remaining q.
--- a/scripts/special-matrix/gallery.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/special-matrix/gallery.m	Thu May 19 18:48:52 2016 -0700
@@ -403,7 +403,7 @@
 
 ## Code for most of the individual matrices (except binomial, gcdmat,
 ## integerdata, leslie, normaldata, randcolu, randcorr, randjorth, sampling,
-## uniformdata) by Nicholas .J. Higham <Nicholas.J.Higham@manchester.ac.uk>
+## uniformdata) by Nicholas J. Higham <Nicholas.J.Higham@manchester.ac.uk>
 ## Adapted for Octave and into single gallery function by Carnë Draug
 
 function [varargout] = gallery (name, varargin)
--- a/scripts/special-matrix/magic.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/special-matrix/magic.m	Thu May 19 18:48:52 2016 -0700
@@ -24,7 +24,7 @@
 ## A magic square is an arrangement of the integers @code{1:n^2} such that the
 ## row sums, column sums, and diagonal sums are all equal to the same value.
 ##
-## Note: @var{n} must be a scalar greater than or equal to 3. If you supply
+## Note: @var{n} must be a scalar greater than or equal to 3.  If you supply
 ## @var{n} less than 3, magic returns either a nonmagic square, or else the
 ## degenerate magic squares 1 and [].
 ## @end deftypefn
--- a/scripts/statistics/base/histc.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/statistics/base/histc.m	Thu May 19 18:48:52 2016 -0700
@@ -127,7 +127,7 @@
 
     ## Look-up indices.
     idx = lookup (edges, x);
-    ## Zero invalid ones (including NaNs). x < edges(1) are already zero.
+    ## Zero invalid ones (including NaNs).  x < edges(1) are already zero.
     idx(! (x <= edges(end))) = 0;
 
     iidx = idx;
--- a/scripts/statistics/base/quantile.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/statistics/base/quantile.m	Thu May 19 18:48:52 2016 -0700
@@ -340,7 +340,7 @@
 ## quantiles, @var{q} (the inverse of the cdf), for the sample, @var{x}.
 ##
 ## The optional input, @var{method}, refers to nine methods available in R
-## (http://www.r-project.org/). The default is @var{method} = 7.
+## (http://www.r-project.org/).  The default is @var{method} = 7.
 ## @seealso{prctile, quantile, statistics}
 
 ## Author: Ben Abbott <bpabbott@mac.com>
--- a/scripts/statistics/base/ranks.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/statistics/base/ranks.m	Thu May 19 18:48:52 2016 -0700
@@ -29,8 +29,8 @@
 ## Description: Compute ranks
 
 ## This code was rather ugly, since it didn't use sort due to the
-## fact of how to deal with ties. Now it does use sort and its
-## even uglier!!! At least it handles NDArrays..
+## fact of how to deal with ties.  Now it does use sort and its
+## even uglier!  At least it handles NDArrays.
 
 function y = ranks (x, dim)
 
--- a/scripts/strings/dec2base.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/strings/dec2base.m	Thu May 19 18:48:52 2016 -0700
@@ -108,7 +108,7 @@
   ## convert digits to symbols
   retval = reshape (symbols(digits+1), size (digits));
 
-  ## Check if the first element is the zero symbol. It seems possible
+  ## Check if the first element is the zero symbol.  It seems possible
   ## that LEN is provided, and is less than the computed MAX_LEN and
   ## MAX_LEN is computed to be one larger than necessary, so we would
   ## have a leading zero to remove.  But if LEN >= MAX_LEN, we should
--- a/scripts/strings/strjust.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/strings/strjust.m	Thu May 19 18:48:52 2016 -0700
@@ -59,7 +59,7 @@
   ## Apparently, Matlab considers nulls to be blanks as well; however, does
   ## not preserve the nulls, but rather converts them to blanks.  That's a
   ## bit unexpected, but it allows simpler processing, because we can move
-  ## just the nonblank characters. So we'll do the same here.
+  ## just the nonblank characters.  So we'll do the same here.
 
   [nr, nc] = size (s);
   ## Find the indices of all nonblanks.
@@ -67,7 +67,7 @@
   [idx, jdx] = find (nonbl);
 
   if (strcmpi (pos, "right"))
-    ## We wish to find the maximum column index for each row. Because jdx is
+    ## We wish to find the maximum column index for each row.  Because jdx is
     ## sorted, we can take advantage of the fact that assignment is processed
     ## sequentially and for duplicate indices the last value will remain.
     maxs = repmat (nc, [nr, 1]);
--- a/scripts/testfun/test.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/testfun/test.m	Thu May 19 18:48:52 2016 -0700
@@ -914,6 +914,6 @@
 ## %!error
 ## %! test ('/etc/passwd');
 ## %! test ("nonexistent file");
-## %! ## These don't signal an error, so the test for an error fails. Note
+## %! ## These don't signal an error, so the test for an error fails.  Note
 ## %! ## that the call doesn't reference the current fid (it is unavailable),
 ## %! ## so of course the informational message is not printed in the log.
--- a/scripts/time/datenum.m	Thu May 19 19:42:57 2016 -0400
+++ b/scripts/time/datenum.m	Thu May 19 18:48:52 2016 -0700
@@ -154,7 +154,7 @@
     day += reshape (monthstart (mod (month-1,12) + 1), size (day)) + 60;
   endif
 
-  ## Add number of days to the start of the current year. Correct
+  ## Add number of days to the start of the current year.  Correct
   ## for leap year every 4 years except centuries not divisible by 400.
   day += 365*year + floor (year/4) - floor (year/100) + floor (year/400);