<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,8 @@
+// The type of a contract combinator is: name -&gt; args ... -&gt; contract
+//
+// name is a human-readable name for the contract.  args .. are constructor-
+// specified arguments and contract is the resulting contract.
+
 var contracts = { };
 
 contracts.map = function(f,arr) {
@@ -8,6 +13,7 @@ contracts.map = function(f,arr) {
   return dest;
 };
 
+
 contracts.zipWith = function(f,arr1,arr2) {
   var dest = [ ];
   var len = Math.min(arr1.length, arr2.length);
@@ -17,6 +23,7 @@ contracts.zipWith = function(f,arr1,arr2) {
   return dest;
 };
 
+
 contracts.blame = function(guilty,expected,received,message,loc) {
   var guiltyMsg = typeof(guilty) == &quot;string&quot; 
                     ? guilty : guilty.value;
@@ -32,12 +39,7 @@ contracts.blame = function(guilty,expected,received,message,loc) {
   throw err;
 }
 
-// The type of a contract combinator is: name -&gt; args ... -&gt; contract
-//
-// name is a human-readable name for the contract.  args .. are constructor-
-// specified arguments and contract is the resulting contract.
  
-
 contracts.flat = function(name) {
   return function(pred) {
     return {
@@ -94,6 +96,7 @@ contracts.unsizedArray = function(name) {
   };
 };
 
+
 contracts.fixedArray = function(name) {
   return function() {
     var elts = arguments;
@@ -139,10 +142,12 @@ contracts.fixedArray = function(name) {
   };
 };
 
+
 contracts.isUndefined = contracts.flat(function(val) { 
   return val === undefined;
 });
 
+
 contracts.varArityFunc = function(name) {
   return function(fixedArgs,restArgs,result) {
     return {
@@ -186,6 +191,7 @@ contracts.varArityFunc = function(name) {
   };
 };
 
+
 // Ensures value is an instanceof constr before checking that its shape
 // matches sig. constrId is a human-readable name for the constructor.
 contracts.instance = function(name) {
@@ -217,6 +223,7 @@ contracts.instance = function(name) {
   };
 };
 
+
 contracts.obj = function(name) {
   return function(sig) {
     return {
@@ -254,6 +261,7 @@ contracts.obj = function(name) {
   };
 };
 
+
 // pos is the name of val.  neg should be the name of the calling context.
 // Since we do not rewrite call-sites, neg is simply &quot;client&quot;.
 // However, if ctc.isHigherOrder, we can determine the name of the calling
@@ -279,6 +287,7 @@ contracts.guard = function(ctc,val,pos,neg,loc) {
   }
 };
 
+
 // Derived from http://eriwen.com/javascript/js-stack-trace/
 contracts.stackTrace = function() {
   var callstack = [];</diff>
      <filename>data/contracts.js</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>6b2c2bb21d12920dd96e62f568219b908a1faeca</id>
    </parent>
  </parents>
  <author>
    <name>Arjun Guha</name>
    <email>arjun@cs.brown.edu</email>
  </author>
  <url>http://github.com/arjunguha/javascript-contracts/commit/eda5cb64c26211e19a705fa2dabe75b1df33cdbd</url>
  <id>eda5cb64c26211e19a705fa2dabe75b1df33cdbd</id>
  <committed-date>2009-10-31T09:08:06-07:00</committed-date>
  <authored-date>2009-10-31T09:08:06-07:00</authored-date>
  <message>minor edits</message>
  <tree>6e531f013338d3f4f76da648f6fca78cc49087b8</tree>
  <committer>
    <name>Arjun Guha</name>
    <email>arjun@cs.brown.edu</email>
  </committer>
</commit>
