<commit_before><html>
<head><title>Soot: a Java Optimization Framework</title></head>

<body background="background6.gif" TEXT="#000000" BGCOLOR="#F3F3F3" LINK="#0000CC">

<table border=0 cellpadding=0 cellspacing=3>

<TR>

<!--LeftHandTable-->

<TD ALIGN=LEFT VALIGN=TOP ROWSPACE="1" WIDTH=160>

<p><font face="helvetica,arial" size="+1"><b>Soot Home</b></font>

<p>
<a href="#introduction"><font face="helvetica,arial" size="+0">Introduction</font></a><br>
<a href="#obtaining"><font face="helvetica,arial" size="+0">Obtaining Soot</font></a><br>
<a href="#resources"><font face="helvetica,arial" size="+0">Resources</font></a><br>
<a href="#credits"><font face="helvetica,arial" size="+0">Credits</font></a><br>
<a href="#users"><font face="helvetica,arial" size="+0">Soot Users</font></a><br>

<p><a href="http://www.sable.mcgill.ca">Sable Home</a>

</td>

<!--ActualContents-->

<td align=left valign=top>
<center>
<a name="top"><b><font face="helvetica,arial" size="+2">Soot: a Java Optimization Framework</font></b></center></a> <br>
<center>
<a name="top"><b><font face="helvetica,arial" size="+1">Latest version: 2.2.1 (Jan 3, 2005)</font></b></center></a> <br><br>

Need help using Soot?  See the Soot <a href="tutorial/index.html"> tutorials</a>.<br><br>

<!--Introduction-->
<a name="introduction"> <table width=100%> <tr>
<td width=97% align=left><b><font face="helvetica,arial" size="+1">Introduction</b></font></td></a>
<td width=3% align=left><font size="-2"><a href="#top">top</a></td>
</table>

<blockquote>

Soot is a Java optimization framework.  It provides four intermediate
representations for analyzing and transforming Java bytecode:

<ol> 
<li><b>Baf</b>: a streamlined representation of bytecode which is simple to
manipulate.

<li><b>Jimple</b>: a typed 3-address intermediate representation suitable for
optimization.

<li><b>Shimple</b>: an SSA variation of Jimple.

<li><b>Grimp</b>: an aggregated version of Jimple suitable for decompilation and
code inspection.
</ol>

Soot can be used as a stand alone tool to optimize or inspect class files, as well
as a framework to develop optimizations or transformations on Java
bytecode.

<p>Soot is free software and is licensed under the <a
href="http://www.gnu.org/copyleft/lesser.html">GNU Lesser General Public
License</a>.

</blockquote>

<blockquote>
<h4>Release Status:</h4>
<p>The Soot Framework is an evolving research project. Our goal is to produce a
robust, easy-to-use research framework for optimizing Java bytecode.  

<!-- Release 2.2.1 --> <p>
The latest release is version 2.2.1 The new features since 2.1.0 are described in  detail here: <a href="http://svn.sable.mcgill.ca/wiki/index.php/SootTwoTwoZeroReleaseNotice">new features</a>.
</blockquote>

<blockquote>
<h4>Eclipse Plugin:</h4>
Since version 2.0, Soot includes a <a href="eclipse/index.html">plugin</a> that makes it
possible to use Soot from <a href="http://www.eclipse.org">Eclipse</a>.
We have a separate <a href="eclipse/index.html">web page with instructions for
installing and using the plugin.</a>
<br>
<p> You may also want to develop Soot within the Eclipse environment. Instructions for setting up Soot within Eclipse can be found here: <a href="soot_in_eclipse_howto.html">Setting Up Soot in Eclipse</a>.</p>
</blockquote>

<a name="obtaining"> <table width=100%> <tr>
<td width=97% align=left><b><font face="helvetica,arial" size="+1">Obtaining Soot</b></font></td></a>
<td width=3% align=left><font size="-2"><a href="#top">top</a></td>
</table>

<blockquote>
<h4>Downloads:</h4>

Get Soot from our download page a <a
href="soot_download.html">Soot Downloads</a>.

<p>
To install it you must unjar(untar) it, and add the classes directory
<tt>soot-2.2.1/soot/classes</tt> to your CLASSPATH. The Jasmin and Polyglot
classes jar files, or classes directories, must also be added to your CLASSPATH.If you are using the classes directories on your CLASSPATH, you must also add the polyglot cup-classes directory (included in this distribution) to your CLASSPATH.

To test your installation of Soot, try:

<p>
<tt>
java soot.Main --help
</tt>

<p>for some options on processing classfiles.  They are documented in more detail in the
<a href="tutorial/usage">usage document</a>.<p>

Note that Soot requires at least JDK 1.3.
The Eclipse plugin requires at least JDK 1.4.
Soot does not yet support JDK 1.5. 
</blockquote>

<blockquote>
<h4>Repository Access:</h4>
<p>We are using <a href="http://subversion.tigris.org/">Subversion</a> for
revision control.</p>

<p>With a Subversion client, you can obtain a copy of the
development version of Soot, as well as any old versions. To obtain the
latest development version of Soot, use one of the following commands:<br>
<tt>svn checkout https://svn.sable.mcgill.ca/soot/soot/trunk soot-dev</tt><br>
<tt>svn export https://svn.sable.mcgill.ca/soot/soot/trunk soot-dev</tt></p>
<commit_msg>- fix typo for web-site<commit_after><html>
<head><title>Soot: a Java Optimization Framework</title></head>

<body background="background6.gif" TEXT="#000000" BGCOLOR="#F3F3F3" LINK="#0000CC">

<table border=0 cellpadding=0 cellspacing=3>

<TR>

<!--LeftHandTable-->

<TD ALIGN=LEFT VALIGN=TOP ROWSPACE="1" WIDTH=160>

<p><font face="helvetica,arial" size="+1"><b>Soot Home</b></font>

<p>
<a href="#introduction"><font face="helvetica,arial" size="+0">Introduction</font></a><br>
<a href="#obtaining"><font face="helvetica,arial" size="+0">Obtaining Soot</font></a><br>
<a href="#resources"><font face="helvetica,arial" size="+0">Resources</font></a><br>
<a href="#credits"><font face="helvetica,arial" size="+0">Credits</font></a><br>
<a href="#users"><font face="helvetica,arial" size="+0">Soot Users</font></a><br>

<p><a href="http://www.sable.mcgill.ca">Sable Home</a>

</td>

<!--ActualContents-->

<td align=left valign=top>
<center>
<a name="top"><b><font face="helvetica,arial" size="+2">Soot: a Java Optimization Framework</font></b></center></a> <br>
<center>
<a name="top"><b><font face="helvetica,arial" size="+1">Latest version: 2.2.1 (Jan 3, 2005)</font></b></center></a> <br><br>

Need help using Soot?  See the Soot <a href="tutorial/index.html"> tutorials</a>.<br><br>

<!--Introduction-->
<a name="introduction"> <table width=100%> <tr>
<td width=97% align=left><b><font face="helvetica,arial" size="+1">Introduction</b></font></td></a>
<td width=3% align=left><font size="-2"><a href="#top">top</a></td>
</table>

<blockquote>

Soot is a Java optimization framework.  It provides four intermediate
representations for analyzing and transforming Java bytecode:

<ol> 
<li><b>Baf</b>: a streamlined representation of bytecode which is simple to
manipulate.

<li><b>Jimple</b>: a typed 3-address intermediate representation suitable for
optimization.

<li><b>Shimple</b>: an SSA variation of Jimple.

<li><b>Grimp</b>: an aggregated version of Jimple suitable for decompilation and
code inspection.
</ol>

Soot can be used as a stand alone tool to optimize or inspect class files, as well
as a framework to develop optimizations or transformations on Java
bytecode.

<p>Soot is free software and is licensed under the <a
href="http://www.gnu.org/copyleft/lesser.html">GNU Lesser General Public
License</a>.

</blockquote>

<blockquote>
<h4>Release Status:</h4>
<p>The Soot Framework is an evolving research project. Our goal is to produce a
robust, easy-to-use research framework for optimizing Java bytecode.  

<!-- Release 2.2.1 --> <p>
The latest release is version 2.2.1 The new features since 2.1.0 are described in  detail here: <a href="http://svn.sable.mcgill.ca/wiki/index.php/SootTwoTwoZeroReleaseNotice">new features</a>.
</blockquote>

<blockquote>
<h4>Eclipse Plugin:</h4>
Since version 2.0, Soot includes a <a href="eclipse/index.html">plugin</a> that makes it
possible to use Soot from <a href="http://www.eclipse.org">Eclipse</a>.
We have a separate <a href="eclipse/index.html">web page with instructions for
installing and using the plugin.</a>
<br>
<p> You may also want to develop Soot within the Eclipse environment. Instructions for setting up Soot within Eclipse can be found here: <a href="soot_in_eclipse_howto.html">Setting Up Soot in Eclipse</a>.</p>
</blockquote>

<a name="obtaining"> <table width=100%> <tr>
<td width=97% align=left><b><font face="helvetica,arial" size="+1">Obtaining Soot</b></font></td></a>
<td width=3% align=left><font size="-2"><a href="#top">top</a></td>
</table>

<blockquote>
<h4>Downloads:</h4>

Get Soot from our download page a <a
href="soot_download.html">Soot Downloads</a>.

<p>
To install it you must unjar(untar) it, and add the classes directory
<tt>soot-2.2.1/soot/classes</tt> to your CLASSPATH. The Jasmin and Polyglot
classes jar files, or classes directories, must also be added to your CLASSPATH.If you are using the classes directories on your CLASSPATH, you must also add the Polyglot cup-classes directory (included in this distribution) to your CLASSPATH.

To test your installation of Soot, try:

<p>
<tt>
java soot.Main --help
</tt>

<p>for some options on processing classfiles.  They are documented in more detail in the
<a href="tutorial/usage">usage document</a>.<p>

Note that Soot requires at least JDK 1.3.
The Eclipse plugin requires at least JDK 1.4.
Soot does not yet support JDK 1.5. 
</blockquote>

<blockquote>
<h4>Repository Access:</h4>
<p>We are using <a href="http://subversion.tigris.org/">Subversion</a> for
revision control.</p>

<p>With a Subversion client, you can obtain a copy of the
development version of Soot, as well as any old versions. To obtain the
latest development version of Soot, use one of the following commands:<br>
<tt>svn checkout https://svn.sable.mcgill.ca/soot/soot/trunk soot-dev</tt><br>
<tt>svn export https://svn.sable.mcgill.ca/soot/soot/trunk soot-dev</tt></p>

{'fraction_non_alphanumeric': 0.16302795347888185, 'fraction_numerical': 0.016731279330748826, 'mean_word_length': 5.45358788676761, 'pattern_counts': {'":': 0, '<': 357, '<?xml version=': 0, '>': 357, 'https://': 4, 'lorem ipsum': 0, 'www.': 6, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4244277', 'n_tokens_mistral': 3476, 'n_tokens_neox': 3328, 'n_words': 1038}