<commit_before><!DOCTYPE html>
<html>
<head>
  <meta charset='utf-8'>

  <title>Rust</title>

  <style type="text/css">
    ul {
      list-style-type: square;
      margin-left: 10px;
      padding-left: 0px;
    }
    body {
      background-color: #ffffff;
      color: #000000;
      margin: 10pt;
      padding: 0;
    }
    #container {
      float: left;
      width: 80%;
      padding: 1em;
    }
    #center {
      float: left;
      margin: 0 auto 0 auto;
    }
    #logo {
      clear: right;
    }
    #nav {
      float: left;
      width: 150px;
    }
    #features {
      margin: 2em;
      padding: 1em;
      border: 1px solid black;
    }
    td {
      padding-left: 1.5em;
    }
    .code {
      font-family: fixed, monospace;
      white-space: pre;
    }
    pre {
      background: #eeeeee;
      margin: 2em;
      padding: 1em;
    }
  </style>
  <link rel="shortcut icon" href="favicon.ico" />
</head>

<body>
  <div id="container">

    <div id="nav">
      <img id="logo" src="logos/rust-logo-128x128-blk.png"/>
      <ul>
        <li><a href="http://bot.rust-lang.org">Bot</a></li>
        <li><a href="http://tinderbox.mozilla.org/showbuilds.cgi?tree=Rust">Tinderbox</a></li>
        <li><a href="http://github.com/graydon/rust">Github page</a></li>
        <li><a href="http://irclog.gr/#browse/irc.mozilla.org/rust">IRC logs</a>
        <li><a href="http://izs.no.de/graydon/rust">De-ajax'ed issues</a>
        <li>Mailing lists:
          <ul>
            <li><a href="https://mail.mozilla.org/listinfo/rust-dev">rust-dev</a></li>
            <li><a href="https://mail.mozilla.org/listinfo/rust-commits">rust-commits</a></li>
          </ul>
        </li>
        <li>Doc snapshot:
          <ul>
            <li><a href="doc/rust.html">HTML</a></li>
            <li><a href="doc/rust.pdf">PDF</a></li>
          </ul>
        </li>
        <li>Download repo:
          <ul>
            <li><a href="http://github.com/graydon/rust/tarball/master">Tar</a></li>
            <li><a href="http://github.com/graydon/rust/zipball/master">Zip</a></li>
          </ul>
        </li>
    </div>

    <div id="center">
      <h2>Rust: A safe, concurrent, practical language</h2>


Rust is a programming language for low-level, safe code. A short summary of features:

<table id="features">
<tr><td>Compilation model</td><td>batch, ahead-of-time, C/C++ compatible</td></tr>
<tr><td>Type system</td><td>static, structural-algebraic, with metadata</td></tr>
<tr><td>Type inference</td><td>yes, only local variables</td></tr>
<tr><td>Generic types</td><td>yes, only simple, non-turing-complete substitution</td></tr>
<tr><td>Concurrency</td><td>isolated tasks, message passing, move semantics</td></tr>
<tr><td>Error handling</td><td>isolated tasks, unrecoverable unwinding</td></tr>
<tr><td>Garbage Collection</td><td>optional, per-task, only "shared" types</td></tr>
<tr><td>Text</td><td>utf8 strings, ucs4 characters</td></tr>
<tr><td>Tier 1 platforms</td><td>Linux, OSX, Windows</td></tr>
<tr><td>Developers</td><td>Mozilla</td></tr>
<tr><td>License</td><td>BSD</li>
</table>

You may also like some of our favourite <em>anti-features</em>:

<table id="features">
<tr><td class="code">#include</td><td>no</td></tr>
<tr><td class="code">void*</td><td>no</td></tr>
<tr><td class="code">free()</td><td>no</td></tr>
<tr><td class="code">NULL</td><td>no</td></tr>
<tr><td>use before init</td><td>no</td></tr>
<tr><td>buffer overflow</td><td>no</td></tr>
<tr><td>data race</td><td>no</td></tr>
<tr><td class="code">const</td><td>no (immutable is default)</td></tr>
<tr><td><a href="http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error">SFINAE</td><td>no</td></tr>
</table>

A very small taste of what it looks like:

<pre class="code">
use std;
fn main() {
  let out = std::io::stdout();
  for i in [1, 2, 3] {
    out.write_str(#fmt("hello %d\n", i));
  }
}
</pre>
    </div>
    
  </div>  
</body>
</html><commit_msg>Remove some snark<commit_after><!DOCTYPE html>
<html>
<head>
  <meta charset='utf-8'>

  <title>Rust</title>

  <style type="text/css">
    ul {
      list-style-type: square;
      margin-left: 10px;
      padding-left: 0px;
    }
    body {
      background-color: #ffffff;
      color: #000000;
      margin: 10pt;
      padding: 0;
    }
    #container {
      float: left;
      width: 80%;
      padding: 1em;
    }
    #center {
      float: left;
      margin: 0 auto 0 auto;
    }
    #logo {
      clear: right;
    }
    #nav {
      float: left;
      width: 150px;
    }
    #features {
      margin: 2em;
      padding: 1em;
      border: 1px solid black;
    }
    td {
      padding-left: 1.5em;
    }
    .code {
      font-family: fixed, monospace;
      white-space: pre;
    }
    pre {
      background: #eeeeee;
      margin: 2em;
      padding: 1em;
    }
  </style>
  <link rel="shortcut icon" href="favicon.ico" />
</head>

<body>
  <div id="container">

    <div id="nav">
      <img id="logo" src="logos/rust-logo-128x128-blk.png"/>
      <ul>
        <li><a href="http://bot.rust-lang.org">Bot</a></li>
        <li><a href="http://tinderbox.mozilla.org/showbuilds.cgi?tree=Rust">Tinderbox</a></li>
        <li><a href="http://github.com/graydon/rust">Github page</a></li>
        <li><a href="http://irclog.gr/#browse/irc.mozilla.org/rust">IRC logs</a>
        <li><a href="http://izs.no.de/graydon/rust">De-ajax'ed issues</a>
        <li>Mailing lists:
          <ul>
            <li><a href="https://mail.mozilla.org/listinfo/rust-dev">rust-dev</a></li>
            <li><a href="https://mail.mozilla.org/listinfo/rust-commits">rust-commits</a></li>
          </ul>
        </li>
        <li>Doc snapshot:
          <ul>
            <li><a href="doc/rust.html">HTML</a></li>
            <li><a href="doc/rust.pdf">PDF</a></li>
          </ul>
        </li>
        <li>Download repo:
          <ul>
            <li><a href="http://github.com/graydon/rust/tarball/master">Tar</a></li>
            <li><a href="http://github.com/graydon/rust/zipball/master">Zip</a></li>
          </ul>
        </li>
    </div>

    <div id="center">
      <h2>Rust: A safe, concurrent, practical language</h2>


Rust is a programming language for low-level, safe code. A short summary of features:

<table id="features">
<tr><td>Compilation model</td><td>batch, ahead-of-time, C/C++ compatible</td></tr>
<tr><td>Type system</td><td>static, structural-algebraic, with metadata</td></tr>
<tr><td>Type inference</td><td>yes, only local variables</td></tr>
<tr><td>Generic types</td><td>yes, only simple, non-turing-complete substitution</td></tr>
<tr><td>Concurrency</td><td>isolated tasks, message passing</td></tr>
<tr><td>Unique pointers</td><td>no races or sharing, move semantics</td></tr>
<tr><td>Memory safety</td><td>no buffer overflow, use before init, <span class="code">NULL</span> or <span class="code">free()</span></td></tr>
<tr><td>Immutability</td><td>immutable by default, mutability is the special case</td></tr>
<tr><td>Garbage Collection</td><td>optional, per-task, only "shared" types</td></tr>
<tr><td>Error handling</td><td>isolated tasks, unrecoverable unwinding</td></tr>
<tr><td>Text</td><td>utf8 strings, ucs4 characters</td></tr>
<tr><td>Tier 1 platforms</td><td>Linux, OSX, Windows</td></tr>
<tr><td>Developers</td><td>Mozilla</td></tr>
<tr><td>License</td><td>BSD</li>
</table>

A very small taste of what it looks like:

<pre class="code">
use std;
fn main() {
  let out = std::io::stdout();
  for i in [1, 2, 3] {
    out.write_str(#fmt("hello %d\n", i));
  }
}
</pre>
    </div>
    
  </div>  
</body>
</html>
{'fraction_non_alphanumeric': 0.21022876676308178, 'fraction_numerical': 0.011043912700499606, 'mean_word_length': 2.8054027013506753, 'pattern_counts': {'":': 0, '<': 376, '<?xml version=': 0, '>': 376, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1136236', 'n_tokens_mistral': 2940, 'n_tokens_neox': 2807, 'n_words': 530}