[m-rev.] diff: website cleanups

Julien Fischer jfischer at opturion.com
Sat Dec 18 14:58:22 AEDT 2021


Website cleanups.

Fix a number of issues with website identified by tools like htmlhint
and csslint.  Among these issues are:

     - missing or incorrect end tags
     - empty CSS rules
     - missing DOCTYPE directives
     - adding lang="en" to all documents.

There are no changes to any content.

*/*.php:
*/*.inc:
css/common.css b/css/common.css:
     As above.

Julien.
-------------- next part --------------
diff --git a/about.php b/about.php
index 8ae6d97..16f0769 100644
--- a/about.php
+++ b/about.php
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <?php
     $menu="About";
     $title="About";
diff --git a/about/backends.php b/about/backends.php
index 65d1607..1f9d912 100644
--- a/about/backends.php
+++ b/about/backends.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="About";
     $title="Back-ends";
@@ -7,4 +8,4 @@
     $include="backends.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/about/benchmarks.php b/about/benchmarks.php
index 5bd33aa..18029d0 100644
--- a/about/benchmarks.php
+++ b/about/benchmarks.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="About";
     $title="Benchmarks";
@@ -7,4 +8,4 @@
     $include="benchmarks.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/about/comparison_with_haskell.php b/about/comparison_with_haskell.php
index e41eee2..43943a0 100644
--- a/about/comparison_with_haskell.php
+++ b/about/comparison_with_haskell.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="Documentation";
     $title="Comparing Mercury and Haskell";
@@ -7,4 +8,4 @@
     $include="comparison_with_haskell.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/about/dotnet.php b/about/dotnet.php
index e2359c6..cff69d2 100644
--- a/about/dotnet.php
+++ b/about/dotnet.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $title=".NET";
     $menu="About";
@@ -7,4 +8,4 @@
     $include="dotnet.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/about/include/benchmarks.inc b/about/include/benchmarks.inc
index 76ad22f..e2c92c7 100644
--- a/about/include/benchmarks.inc
+++ b/about/include/benchmarks.inc
@@ -80,7 +80,7 @@ it is heavily recursive and does lots of simple integer arithmetic.
 The benchmarks use the following test harness:
 </p>
 <ul class="nonindentlist">
-<li> <a href = "bench/harness.html">harness</a>
+<li> <a href = "bench/harness.html">harness</a></li>
 </ul>
 </div>
 
diff --git a/about/include/comparison_with_haskell.inc b/about/include/comparison_with_haskell.inc
index ff21910..b9a614e 100644
--- a/about/include/comparison_with_haskell.inc
+++ b/about/include/comparison_with_haskell.inc
@@ -25,14 +25,14 @@ interactions between the type systems and the module systems.
 There are many other areas in which Mercury and Haskell 98
 differ, including
 </p><ul class="nonindentlist">
-	<li> syntax,
+	<li> syntax,</li>
 	<li> the way in which the semantics is normally described
-	     (predicate calculus versus lambda calculus),
-	<li> operational semantics (laziness / order of evaluation),
-	<li> exception handling,
-	<li> treatment of I/O,
-	<li> standard libraries,
-	<li> and of course support for logic programming,
+	     (predicate calculus versus lambda calculus),</li>
+	<li> operational semantics (laziness / order of evaluation),</li>
+	<li> exception handling,</li>
+	<li> treatment of I/O,</li>
+	<li> standard libraries,</li>
+	<li> and of course support for logic programming,</li>
 	</ul> 
 	<p>
 	but we don't yet have point-by-point description of all of those
@@ -44,21 +44,22 @@ The type systems of Mercury and Haskell 98 are similar in that they both have
 the following features:
 </p>
 <ul class="nonindentlist">
-	<li> discriminated union (d.u.) types, with support for named fields
-	<li> type synonyms
-	<li> higher-order function types (and lambda expressions)
-	<li> tuple types
+	<li> discriminated union (d.u.) types, with support for named fields</li>
+	<li> type synonyms</li>
+	<li> higher-order function types (and lambda expressions)</li>
+	<li> tuple types</li>
 	<li> parametric polymorphism:
 		<ul>
-		<li> polymorphic d.u. types
-		<li> polymorphic type synonyms
-		<li> polymorphic functions
-		<li> polymorphic recursion
+		<li> polymorphic d.u. types </li>
+		<li> polymorphic type synonyms </li>
+		<li> polymorphic functions </li>
+		<li> polymorphic recursion </li>
 		</ul>
-	<li> type classes
-	<li> functional dependencies
-	<li> type inference
-	<li> a similar set of basic types
+        </li>
+	<li> type classes </li>
+	<li> functional dependencies </li>
+	<li> type inference </li>
+	<li> a similar set of basic types </li>
 </ul>
 <p>
 They differ in the following ways:
@@ -72,14 +73,15 @@ They differ in the following ways:
 		  from functions/variables (lowercase initial letter)
 		  whereas Mercury distinguishes variables
 		  (uppercase initial letter)
-		  from functions/constructors (lowercase initial letter).
+		  from functions/constructors (lowercase initial letter).</li>
 	  	<li> Haskell 98 permits nested function definitions,
 		  Mercury doesn't.  In Mercury you can use variables
 		  with higher-order type and initialize them with
 		  lambda expressions, of course, but variables
 		  are always monorphically typed and functions
-		  defined using lambda expressions can't be recursive.
+		  defined using lambda expressions can't be recursive.</li>
 		</ul>
+        </li>
 
 	<li> Haskell 98 has the infamous monomorphism restriction
 	  which means that variables are monomorphic
@@ -89,43 +91,43 @@ They differ in the following ways:
 	  but because of the lexical distinction between
 	  variables and functions, that doesn't seem to lead
 	  to the same confusion that the Haskell monomorphism
-	  restriction causes.
+	  restriction causes.</li>
 
 	<li> Mercury requires type declarations for all functions exported
 	  from a module, Haskell 98 doesn't, at least in theory
 	  (in practice, current Haskell implementations effectively
 	  require explicit type declarations [or worse] in the case of
-	  mutually recursive modules).
+	  mutually recursive modules).</li>
 
 	<li> For polymorphic recursion,
 	  Haskell 98 requires an explicit type declaration,
 	  whereas Mercury allows polymorphic recursion with
 	  type inference, using a user-tunable iteration limit
-	  to ensure termination of the type inference process.
+	  to ensure termination of the type inference process.</li>
 
 	<li> Haskell 98 allows type classes to define default implementations
-	  for methods, whereas Mercury doesn't.
+	  for methods, whereas Mercury doesn't.</li>
 
 	<li> Haskell 98 allows type class instances to leave some methods
 	  undefined, in which case calls to such methods will be
 	  run-time errors, whereas Mercury treats undefined methods as
 	  a compile time error and requires users to explicitly define
-	  methods to call <code>error</code> if that is what they want.
+	  methods to call <code>error</code> if that is what they want.</li>
 
-	<li> Haskell 98 supports constructor classes, Mercury doesn't.
+	<li> Haskell 98 supports constructor classes, Mercury doesn't.</li>
 
 	<li> Haskell 98's standard library makes extensive use of
-	  type classes, Mercury's doesn't (mainly for historical reasons).
+	  type classes, Mercury's doesn't (mainly for historical reasons).</li>
 
 	<li> Mercury allows multi-parameter type classes
 	  (however, there are some restrictions on the forms of
 	  instance declarations, so this may not be quite as
-	  useful as it might first appear).
+	  useful as it might first appear).</li>
 
 	<li> Mercury supports existentially typed functions,
 	  and existentially typed data types, whereas Haskell 98 doesn't
 	  (Hugs, ghc and other Haskell implementations support existentially
-	  typed data types, but not existentially typed functions).
+	  typed data types, but not existentially typed functions).</li>
 
 	<li> Mercury supports "ad-hoc" overloading (there can be more
 	  than one constructor, function or class method with the same
@@ -136,7 +138,7 @@ They differ in the following ways:
 	  this can lead to ambiguities that type checker can't resolve;
 	  if such ambiguities occur, you need to use explicit type
 	  declarations to resolve them, rather than relying on type
-	  inference.)
+	  inference.)</li>
 
 	<li> In Haskell 98, functions always take a single argument;
 	  multiple arguments are handled using currying or tuples.
@@ -145,7 +147,7 @@ They differ in the following ways:
 	  tuples or functions returning functions.
 	  (Haskell's approach leads to more elegant source code;
 	  Mercury's approach has a simpler and more predictable
-	  performance model.)
+	  performance model.)</li>
 
 	<li> The semantics of Haskell 98 say that each type has "bottom"
 	  as an extra element, to handle laziness.
@@ -156,7 +158,7 @@ They differ in the following ways:
 	  But, since that's a difference in the operational semantics,
 	  rather than in the type system, we won't go into the
 	  details here, except to note that the first approximation
-	  is not the full story.)
+	  is not the full story.)</li>
 
 	<li> Haskell 98 has two constructs for introducing
 	  discriminated union types, <code>data</code> and <code>newtype</code>,
@@ -165,28 +167,28 @@ They differ in the following ways:
 	  Mercury doesn't support lazy constructors,
 	  so the laziness distinction is not applicable,
 	  and in Mercury the representation effect of <code>newtype</code> is
-	  automatic for any type with one constructor and one argument.
+	  automatic for any type with one constructor and one argument.</li>
 
 	<li> Mercury supports nested modules, Haskell 98 doesn't.
 	  So in Mercury you can have abstract types whose definition
 	  is only visible in a sub-module, rather than in the
-	  whole of the (outermost) module that contains them.
+	  whole of the (outermost) module that contains them.</li>
 
 	<li> Mercury's module system allows instance declarations
 	  to be public (exported) or local (private), whereas
-	  in Haskell instance declarations are always exported.
+	  in Haskell instance declarations are always exported.</li>
 
 	<li> Mercury has predicates as well as functions
 	  (predicate types are distinct from functions returning bool).
 	  This includes supporting existentially typed predicates,
 	  predicates as type class methods, predicate lambda expressions,
-	  and higher-order predicate types.
+	  and higher-order predicate types.</li>
 
 	<li> Mercury supports optional dynamic typing, Haskell 98 doesn't.
 	  (Hugs/ghc do.  However, their approach of implementing this
 	  is a bit cumbersome, since the user has to explictly declare
 	  instances of <code>Typeable</code>, and its use of an unchecked
-	  cast would be problematic in the presence of untrusted code.)
+	  cast would be problematic in the presence of untrusted code.)</li>
 
 	<li> The treatment of equality, comparison, automatically derived
 	  classes, and RTTI differs considerably between the two
@@ -201,7 +203,7 @@ They differ in the following ways:
 	  effects in Mercury than defining <code>==</code> does in Haskell.
 	  Mercury's RTTI system allows constructing and deconstructing
 	  arbitrary types at runtime, and comparison and (de)serialization
-	  (compare, read, and write) are implemented using this.
+	  (compare, read, and write) are implemented using this.</li>
 
 	<li> Mercury's standard library provides a referentially
 	  transparent interface to mutable variables (the store
@@ -212,7 +214,7 @@ They differ in the following ways:
 	  using higher-order functions with explicit universal
 	  quantification, and monads, rather than existential types
 	  and unique modes.  Other Haskell implementations may do so
-	  too.)
+	  too.)</li>
 </ul>
 
 <p>
@@ -226,13 +228,13 @@ are in Mercury handled by the mode system.  In particular,
 	  For example, you can declare that a function whose
 	  argument is a discriminated union type accepts only
 	  a subset of the possible constructors for that type,
-	  and the mode system will enforce this.
+	  and the mode system will enforce this.</li>
 
 	<li> Mercury's mode system provides support for uniqueness,
 	  similar to linear types or unique types.  (However,
 	  currently there are some significant limitations with
 	  this, in particular unique modes can only be used
-	  at the top level of a term.)
+	  at the top level of a term.)</li>
 	  
 	</ul>
 
diff --git a/about/include/related.inc b/about/include/related.inc
index d04dc85..045028d 100644
--- a/about/include/related.inc
+++ b/about/include/related.inc
@@ -2,21 +2,21 @@
 
 <h3>Projects using Mercury</h3>
 
-<UL class="nonindentlist">
-<LI>The <a HREF="http://www.g12.csse.unimelb.edu.au/">G12 Constraint Programming Platform</a></li>
-<LI>The <a HREF="http://www.csse.monash.edu.au/~mbanda/hal/index.html">HAL Project</a></li>
-<LI>The Aditi Project</li>
-<LI> <A HREF="http://www.winikoff.net/pipe/index.html">Animating Z specifications using Mercury</A></li>
-<LI> <A HREF="http://svrc.it.uq.edu.au/Possum/">Possum</a>, an animator for Z
+<ul class="nonindentlist">
+<li>The <a href="http://www.g12.csse.unimelb.edu.au/">G12 Constraint Programming Platform</a></li>
+<li>The <a href="http://www.csse.monash.edu.au/~mbanda/hal/index.html">HAL Project</a></li>
+<li>The Aditi Project</li>
+<li> <a href="http://www.winikoff.net/pipe/index.html">Animating Z specifications using Mercury</a></li>
+<li> <a href="http://svrc.it.uq.edu.au/Possum/">Possum</a>, an animator for Z
 specifications with a Tk GUI</li>
-<LI> The <A HREF="http://www.missioncriticalit.com/odase.html">ODASE</A>
+<li> The <a href="http://www.missioncriticalit.com/odase.html">ODASE</a>
 	platform, a suite of tools writen in Mercury for developing business
 	applications using ontologies.  The platform has been used to deliver a
 	number of commercial projects.</li>
-<LI> The <A HREF="http://www.princexml.com">Prince XML and HTML formatter.</A>
+<li> The <a href="http://www.princexml.com">Prince XML and HTML formatter.</a>
 	Prince takes HTML or XML and produces PDF formatted according to 
 	user-supplied CSS rules.</li>
-</UL>
+</ul>
 
 <p>
 If you are using Mercury in your project, please contact us!
@@ -40,3 +40,4 @@ programming language. It uses uniqueness types which are similar to
 Mercury's unique modes, and allows programmers to build distributed
 systems.
 </li>
+</ul>
diff --git a/about/motivation.php b/about/motivation.php
index e40937b..1e5a08c 100644
--- a/about/motivation.php
+++ b/about/motivation.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="About";
     $title="Overview and Motivation";
@@ -7,4 +8,4 @@
     $include="motivation.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/about/related.php b/about/related.php
index bb73934..edd727b 100644
--- a/about/related.php
+++ b/about/related.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="About";
     $title="Related Projects";
@@ -7,4 +8,4 @@
     $include="related.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/about/reports.php b/about/reports.php
index 3ba5b8e..5873f23 100644
--- a/about/reports.php
+++ b/about/reports.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="About";
     $title="Mercury Reports";
@@ -7,4 +8,4 @@
     $include="reports.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/contact.php b/contact.php
index c4bee5c..fca3fd8 100644
--- a/contact.php
+++ b/contact.php
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <?php
     $menu="Contact";
     $title="Contact";
diff --git a/css/common.css b/css/common.css
index 405caf1..375d719 100644
--- a/css/common.css
+++ b/css/common.css
@@ -1,45 +1,45 @@
 body{
-padding: 0px;
-margin: 0px;
+color: #333;
 font-family: arial, sans serif;
 font-size: 14px;
-color: #333;
+margin: 0;
+padding: 0;
 }
 
 
 h2{
-font-family: Georgia;
 color: #006fbc;
+font-family: Georgia;
 font-size: 22px;
-margin: 20px 0px;
+margin: 20px 0;
 }
 
 h3{
-font-family: Georgia;
 color: #333;
+font-family: Georgia;
 font-size: 17px;
-margin: 20px 0px;
+margin: 20px 0;
 }
 
 h4{
-font-family: Arial;
 color: #333;
+font-family: Arial;
 font-size: 16px;
 }
 
 p, table{
-font-family: arial;
 color: #333;
+font-family: arial;
 font-size: 14px;
 line-height: 1.5em;
-margin: 25px 0px;
+margin: 25px 0;
 }
 
 .container, .headercontainer{
+border: 0 black solid;
+margin: auto;
 max-width: 1260px;
 min-width: 620px;
-margin: auto;
-border: 0px black solid;
 }
 
 .headercontainer{
@@ -53,15 +53,15 @@ text-decoration:none;
 
 /*header*/
 .header{
-background: url(../images/headerbackground.png) repeat-x 0px 0px;
-height: 111px;
+background: url(../images/headerbackground.png) repeat-x 0 0;
 border-bottom: 1px solid #b3b3b3;
+height: 111px;
 }
 
 .logo{
+left: 40px;
 position: relative;
 top: 15px;
-left: 40px;
 }
 
 .headersearchbar{
@@ -70,17 +70,14 @@ margin-right: 50px;
 margin-top: 37px;
 }
 
-.searchbar{
-}
-
 .searchbar .submit{
 background: #006fbc;
-border-radius: 5px;
 border: none;
+border-radius: 5px;
 color: white;
-padding: 2px 5px;
-margin-left: 10px;
 cursor: pointer;
+margin-left: 10px;
+padding: 2px 5px;
 }
 
 .searchbar .textbox{
@@ -89,25 +86,25 @@ border: 1px solid #333;
 
 /*menu*/
 .submenucurrent{
+color: #666;
 font-style: italic;
 font-weight: bold;
-color: #666;
 }
 
 ul.menu{
 float: left;
-margin-top: 0px;
-margin-left: -10px;
 list-style-type: none;
+margin-left: -10px;
+margin-top: 0;
 }
 
 ul.menu li {
-font-size: 16px;
 background-color: #f7f7f7;
-padding: 10px 10px 10px 10px;
-width: 140px;
 border-left: 4px solid #529ddb;
+font-size: 16px;
 line-height: 1em;
+padding: 10px 10px 10px 10px;
+width: 140px;
 }
 
 ul.menu li:hover{
@@ -121,16 +118,16 @@ text-decoration: none;
 
 ul.submenu{
 list-style-type: none;
+margin-bottom: 20px;
 margin-left: -24px;
 margin-top: 8px;
-margin-bottom: 20px;
 }
 
 ul.submenu li{
-font-size: 16px;
 background: none;
 border: none;
 font-family: georgia;
+font-size: 16px;
 padding: 7px;
 }
 
@@ -148,10 +145,10 @@ font-style: italic;
 }
 
 .current{
-font-weight: bold;
 background-image: url(../images/bluepointer.png);
-background-repeat: no-repeat;
 background-position: 140px 13px;
+background-repeat: no-repeat;
+font-weight: bold;
 }
 
 
@@ -182,48 +179,48 @@ width: 350px;
 }
 
 table.releases td{
-vertical-align: top;
 line-height: 2.5em;
+vertical-align: top;
 }
 
 table.documentation{
-margin: 10px 0px 25px 0px;
+margin: 10px 0 25px 0;
 width: 400px;
 }
 
 table.documentation td{
+color: #333;
 font-size: 14px;
 font-style: italic;
-color: #333;
-padding: 10px 0px;
+padding: 10px 0;
 }
 
 .button{
 background: #006fbc;
-border-radius: 5px;
 border: none;
+border-radius: 5px;
 color: white;
-width: 80px;
-padding: 4px 0px;
-margin-left: 10px;
 cursor: pointer;
+margin-left: 10px;
+padding: 4px 0;
+width: 80px;
 }
 
 .mailinglistname{
-font-weight: bold;
 font-style: italic;
+font-weight: bold;
 }
 
 .backendssubsec{
-font-style: italic;
 font-size: 16px;
+font-style: italic;
 margin-top: 30px;
-margin-bottom: 0px;
+margin-bottom: 0;
 }
 
 pre{
 margin-top: 40px;
-margin-bottom: 0px;
+margin-bottom: 0;
 }
 
 #featureslist h3{
@@ -232,7 +229,7 @@ margin-top: 30px;
 }
 
 .content{
-border: 0px black solid;
+border: 0 black solid;
 margin-left: 230px;
 margin-right: 20px;
 max-width: 920px;
@@ -257,36 +254,32 @@ list-style-image: url('../images/blackpointer.png');
 }
 
 #newslist p{
-margin: 0px;
-}
-
-#newslist{
-/*background: url(../images/logobackground.png) no-repeat center 0*/
+margin: 0;
 }
 
 .newsdate{
 color: #4d4d4d;
-FONT-STYLE: italic;
+font-style: italic;
 }
 
 ul.nonindentlist li,ul.indentlist li, ul.nonindentlist2 li{
-font-family: arial;
 color: #333;
+font-family: arial;
 font-size: 14px;
 line-height: 1.5em;
 }
 
 .submenutitle{
-font-size: 17px;
 color: #4d4d4d;
+font-size: 17px;
 font-style: italic;
 margin-left: 7px;
 }
 
 .banner{
-max-width: 920px;
-height: 211px;
 background: url(../images/banner.jpg) no-repeat 0 0;
+height: 211px;
+max-width: 920px;
 }
 
 /*footer*/
@@ -297,7 +290,7 @@ clear: both;
 .footer hr{
 color: #529ddb;
 max-width: 930px;
-margin: 30px 20px 0px 230px;
+margin: 30px 20px 0 230px;
 }
 
 .footer p{
diff --git a/development.php b/development.php
index ce27cbd..ca7f5a3 100644
--- a/development.php
+++ b/development.php
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <?php
     $menu="Development";
     $title="Development";
diff --git a/development/contributions.php b/development/contributions.php
index 5a9edfe..159c619 100644
--- a/development/contributions.php
+++ b/development/contributions.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="Development";
     $title="Contributing to Mercury";
@@ -7,4 +8,4 @@
     $include="contributions.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/development/developer.php b/development/developer.php
index 463558b..46878c5 100644
--- a/development/developer.php
+++ b/development/developer.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="Development";
     $title="Developer Information";
@@ -7,4 +8,4 @@
     $include="developer.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/development/include/developer.inc b/development/include/developer.inc
index 59770f3..5bcddb6 100644
--- a/development/include/developer.inc
+++ b/development/include/developer.inc
@@ -23,7 +23,7 @@ look in the main source repository to find these documents.
 	<p>
 	Tips and tricks for developers just starting to work with
 	the Mercury source code.
-	<p>
+	</p>
 	</li>
 
 <li> 	
@@ -53,6 +53,7 @@ look in the main source repository to find these documents.
 
 <li>	<h3><a href="developers/release_checklist.html">Release checklist</a> </h3>
 	<p>The release procedure. </p>
+</li>
 
 <li>	<h3><a href="developers/gc_and_c_code.html">Garbage collection and C code</a> </h3>
 </li>	
@@ -99,6 +100,4 @@ look in the main source repository to find these documents.
 	They are also available <a href="developers/index.html">online</a>.
 </p>
 
-<p>
-
 </div>
diff --git a/development/include/people.inc b/development/include/people.inc
index 2dd7b73..d164afd 100644
--- a/development/include/people.inc
+++ b/development/include/people.inc
@@ -102,6 +102,6 @@ The following organisations have contributed to Mercury.
 <li><a href="http://www.missioncriticalit.com">Mission Critical IT</a></li>
 <li><a href="http://www.opturion.com">Opturion</a></li>
 <li><a href="http://www.unimelb.edu.au">The University of Melbourne</a></li>
-<li><a href="http://www.yeslogic.com">YesLogic<a></li>
+<li><a href="http://www.yeslogic.com">YesLogic</a></li>
 </ul>
 </div>
diff --git a/development/people.php b/development/people.php
index 871ac34..a091f10 100644
--- a/development/people.php
+++ b/development/people.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="Development";
     $title="People";
@@ -7,4 +8,4 @@
     $include="people.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/documentation/deep_demo.php b/documentation/deep_demo.php
index f059a5e..17339d9 100644
--- a/documentation/deep_demo.php
+++ b/documentation/deep_demo.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="Documentation";
     $title="Deep profiler demo";
@@ -7,4 +8,4 @@
     $include="deep_demo.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/documentation/documentation.php b/documentation/documentation.php
index 7c9281a..1c44368 100644
--- a/documentation/documentation.php
+++ b/documentation/documentation.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="Documentation";
     $title="Documentation";
@@ -7,4 +8,4 @@
     $include="documentation.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/documentation/include/deep_demo.inc b/documentation/include/deep_demo.inc
index 5d17856..a752ea0 100644
--- a/documentation/include/deep_demo.inc
+++ b/documentation/include/deep_demo.inc
@@ -82,7 +82,7 @@ However, please note that
 deep profiling is not compatible with the old Mercury profiling grades,
 and it is not (yet) implemented for grades (such as hlc grades)
 that use the compiler's MLDS back end.
-</P>
+</p>
 <p>
 
 Programs compiled with deep profiling can generate large amounts of data,
diff --git a/documentation/papers.php b/documentation/papers.php
index b46ae51..ee97f25 100644
--- a/documentation/papers.php
+++ b/documentation/papers.php
@@ -1,4 +1,5 @@
-<HTML>
+<!DOCTYPE html>
+<html lang="en">
 <?php
     $menu="Documentation";
     $title="Papers and Presentations";
@@ -7,4 +8,4 @@
     $include="papers.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/download.php b/download.php
index 28771c1..5007f4b 100644
--- a/download.php
+++ b/download.php
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <?php
     $menu="Download";
     $title="Download";
diff --git a/include/template.inc b/include/template.inc
index 63ed9cd..735317b 100644
--- a/include/template.inc
+++ b/include/template.inc
@@ -2,6 +2,7 @@
 <?php include "$root/include/globals.inc" ?>
 <head>
 <title>The Mercury Project: <?php echo $title?></title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
 <link rel="stylesheet" type="text/css" href="<?php echo $root?>/css/common.css"/>
 <link rel="icon" type="image/ico" href="../favicon.ico"/>
 </head>
diff --git a/index.php b/index.php
index bca7d87..5193c34 100644
--- a/index.php
+++ b/index.php
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <?php
     $menu="Home";
     $title="Home";
diff --git a/mailing-lists/mailing-lists.php b/mailing-lists/mailing-lists.php
index 3cf0555..ee077ee 100644
--- a/mailing-lists/mailing-lists.php
+++ b/mailing-lists/mailing-lists.php
@@ -1,4 +1,4 @@
-<HTML>
+<html lang="en">
 <?php
     $menu="Mailing Lists";
     $title="Mailing List Archives";
@@ -7,4 +7,4 @@
     $include="mailing-lists.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/mailing-lists/message.php b/mailing-lists/message.php
index c666313..683bd96 100644
--- a/mailing-lists/message.php
+++ b/mailing-lists/message.php
@@ -1,4 +1,4 @@
-<HTML>
+<html lang="en">
 <?php
     $menu="Mailing Lists";
     $title="%s";
@@ -7,4 +7,4 @@
     $include="message.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/mailing-lists/message_list.php b/mailing-lists/message_list.php
index 42935a9..0422d5c 100644
--- a/mailing-lists/message_list.php
+++ b/mailing-lists/message_list.php
@@ -1,4 +1,4 @@
-<HTML>
+<html lang="en">
 <?php
     $menu="Mailing Lists";
     $title="%l %s";
@@ -7,4 +7,4 @@
     $include="message_list.inc";
     include "$root/include/template.inc"
 ?>
-</HTML>
+</html>
diff --git a/news.php b/news.php
index eadd5f1..95989c5 100644
--- a/news.php
+++ b/news.php
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="en">
 <?php
     $menu="News";
     $title="News";


More information about the reviews mailing list