Difference between revisions of "S language"

From Biolecture.org
imported>S
(Created page with "<div lang="en" id="mw-content-text" class="mw-content-ltr" style="white-space: normal; word-spacing: 0px; text-transform: none; color: rgb(37,37,37); direction: ltr; font: 14px/1...")
 
imported>S
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
<div lang="en" id="mw-content-text" class="mw-content-ltr" style="white-space: normal; word-spacing: 0px; text-transform: none; color: rgb(37,37,37); direction: ltr; font: 14px/17px sans-serif; widows: 1; letter-spacing: normal; background-color: rgb(255,255,255); text-indent: 0px; -webkit-text-stroke-width: 0px" dir="ltr">
 
<div lang="en" id="mw-content-text" class="mw-content-ltr" style="white-space: normal; word-spacing: 0px; text-transform: none; color: rgb(37,37,37); direction: ltr; font: 14px/17px sans-serif; widows: 1; letter-spacing: normal; background-color: rgb(255,255,255); text-indent: 0px; -webkit-text-stroke-width: 0px" dir="ltr">
<p style="margin: 0.5em 0px"><b>S</b><span class="Apple-converted-space">&nbsp;</span>is a statistical<span class="Apple-converted-space">&nbsp;</span><a title="Programming language" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Programming_language">programming language</a><span class="Apple-converted-space">&nbsp;</span>developed primarily by<span class="Apple-converted-space">&nbsp;</span><a title="John Chambers (programmer)" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/John_Chambers_(programmer)">John Chambers</a><span class="Apple-converted-space">&nbsp;</span>and (in earlier versions) Rick Becker and Allan Wilks of<span class="Apple-converted-space">&nbsp;</span><a title="Bell Labs" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Bell_Labs">Bell Laboratories</a>. The aim of the language, as expressed by John Chambers, is &quot;to turn ideas into software, quickly and faithfully.&quot;</p>
+
<p style="margin: 0.5em 0px"><span style="font-size: medium"><b>S</b><span class="Apple-converted-space">&nbsp;</span>is a statistical<span class="Apple-converted-space">&nbsp;</span></span><a title="Programming language" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Programming_language"><span style="font-size: medium">programming language</span></a><span style="font-size: medium"><span class="Apple-converted-space">&nbsp;</span>developed primarily by<span class="Apple-converted-space">&nbsp;</span></span><a title="John Chambers (programmer)" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/John_Chambers_(programmer)"><span style="font-size: medium">John Chambers</span></a><span style="font-size: medium"><span class="Apple-converted-space">&nbsp;</span>and (in earlier versions) Rick Becker and Allan Wilks of<span class="Apple-converted-space">&nbsp;</span></span><a title="Bell Labs" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Bell_Labs"><span style="font-size: medium">Bell Laboratories</span></a><span style="font-size: medium">. The aim of the language, as expressed by John Chambers, is &quot;to turn ideas into software, quickly and faithfully.&quot;</span></p>
<p style="margin: 0.5em 0px">The two modern implementations of S are<span class="Apple-converted-space">&nbsp;</span><a title="R (programming language)" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/R_(programming_language)">R</a>, part of the<span class="Apple-converted-space">&nbsp;</span><a title="GNU" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/GNU">GNU</a><span class="Apple-converted-space">&nbsp;</span>free software project, and<span class="Apple-converted-space">&nbsp;</span><a title="S-PLUS" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S-PLUS">S-PLUS</a>.</p>
+
<p style="margin: 0.5em 0px"><span style="font-size: medium">The two modern implementations of S are<span class="Apple-converted-space">&nbsp;</span></span><a title="R (programming language)" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/R_(programming_language)"><span style="font-size: medium">R</span></a><span style="font-size: medium">, part of the<span class="Apple-converted-space">&nbsp;</span></span><a title="GNU" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/GNU"><span style="font-size: medium">GNU</span></a><span style="font-size: medium"><span class="Apple-converted-space">&nbsp;</span>free software project, and<span class="Apple-converted-space">&nbsp;</span></span><a title="S-PLUS" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S-PLUS"><span style="font-size: medium">S-PLUS</span></a><span style="font-size: medium">.</span></p>
 
<p style="margin: 0.5em 0px">&nbsp;</p>
 
<p style="margin: 0.5em 0px">&nbsp;</p>
<div id="toc" class="toc" style="font-size: 13px; border-top: rgb(170,170,170) 1px solid; border-right: rgb(170,170,170) 1px solid; border-bottom: rgb(170,170,170) 1px solid; zoom: 1; padding-bottom: 7px; padding-top: 7px; padding-left: 7px; border-left: rgb(170,170,170) 1px solid; display: table; padding-right: 7px; background-color: rgb(249,249,249)">
+
<p style="margin: 0.5em 0px"><b><span style="font-size: large"><span id="History" class="mw-headline">History</span></span></b></p>
<div id="toctitle" style="direction: ltr; text-align: center">
 
<h2 style="overflow: hidden; font-size: 13px; border-top: medium none; font-family: sans-serif; border-right: medium none; background: none transparent scroll repeat 0% 0%; border-bottom: medium none; font-weight: bold; color: black; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 1em 0px 0.25em; border-left: medium none; display: inline; line-height: 1.3; padding-right: 0px">Contents</h2>
 
<span class="Apple-converted-space">&nbsp;</span><span class="toctoggle" style="font-size: 12px; -webkit-user-select: none">&nbsp;[<a id="togglelink" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#">hide</a>]&nbsp;</span></div>
 
<ul style="list-style-type: none; padding-bottom: 0px; text-align: left; padding-top: 0px; padding-left: 0px; margin: 0.3em 0px; list-style-image: none; line-height: 1.5em; padding-right: 0px">
 
    <li class="toclevel-1 tocsection-1" style="margin-bottom: 0.1em"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#History"><span class="tocnumber">1</span><span class="Apple-converted-space">&nbsp;</span><span class="toctext">History</span></a>
 
    <ul style="list-style-type: none; padding-bottom: 0px; text-align: left; padding-top: 0px; padding-left: 0px; margin: 0px 0px 0px 2em; list-style-image: none; line-height: 1.5em; padding-right: 0px">
 
        <li class="toclevel-2 tocsection-2" style="margin-bottom: 0.1em"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#.22Old_S.22"><span class="tocnumber">1.1</span><span class="Apple-converted-space">&nbsp;</span><span class="toctext">&quot;Old S&quot;</span></a></li>
 
        <li class="toclevel-2 tocsection-3" style="margin-bottom: 0.1em"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#.22New_S.22"><span class="tocnumber">1.2</span><span class="Apple-converted-space">&nbsp;</span><span class="toctext">&quot;New S&quot;</span></a></li>
 
        <li class="toclevel-2 tocsection-4" style="margin-bottom: 0.1em"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#S4"><span class="tocnumber">1.3</span><span class="Apple-converted-space">&nbsp;</span><span class="toctext">S4</span></a></li>
 
    </ul>
 
    </li>
 
    <li class="toclevel-1 tocsection-5" style="margin-bottom: 0.1em"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#References"><span class="tocnumber">2</span><span class="Apple-converted-space">&nbsp;</span><span class="toctext">References</span></a></li>
 
    <li class="toclevel-1 tocsection-6" style="margin-bottom: 0.1em"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#External_links"><span class="tocnumber">3</span><span class="Apple-converted-space">&nbsp;</span><span class="toctext">External links</span></a></li>
 
</ul>
 
</div>
 
 
<p style="margin: 0.5em 0px">&nbsp;</p>
 
<p style="margin: 0.5em 0px">&nbsp;</p>
<h2 style="overflow: hidden; font-size: 1.5em; font-family: 'Linux Libertine', Georgia, Times, serif; background: none transparent scroll repeat 0% 0%; border-bottom: rgb(170,170,170) 1px solid; font-weight: normal; color: black; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 1em 0px 0.25em; line-height: 1.3; padding-right: 0px"><span id="History" class="mw-headline">History</span><span class="mw-editsection" style="font-size: small; font-family: sans-serif; vertical-align: baseline; white-space: nowrap; font-weight: normal; margin-left: 1em; display: inline-block; line-height: 1em; -webkit-user-select: none"><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">[</span><a title="Edit section: History" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/w/index.php?title=S_(programming_language)&amp;action=edit&amp;section=1">edit</a><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">]</span></span></h2>
+
<p style="margin: 0.5em 0px"><span id=".22Old_S.22" class="mw-headline">&quot;Old S&quot;</span></p>
<h3 style="overflow: hidden; font-size: 1.17em; background: none transparent scroll repeat 0% 0%; border-bottom-style: none; font-weight: bold; color: black; padding-bottom: 0px; padding-top: 0.5em; margin: 0.3em 0px 0px; line-height: 1.6"><span id=".22Old_S.22" class="mw-headline">&quot;Old S&quot;</span><span class="mw-editsection" style="font-size: small; font-family: sans-serif; vertical-align: baseline; white-space: nowrap; font-weight: normal; margin-left: 1em; display: inline-block; line-height: 1em; -webkit-user-select: none"><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">[</span><a title="Edit section: &quot;Old S&quot;" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/w/index.php?title=S_(programming_language)&amp;action=edit&amp;section=2">edit</a><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">]</span></span></h3>
 
 
<p style="margin: 0.5em 0px">S is one of several statistical computing languages that were designed at Bell Laboratories, and first took form between 1975&ndash;1976.<sup id="cite_ref-Becker_1-0" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-Becker-1"><span>[</span>1<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>Up to that time, much of the statistical computing was done by directly calling<span class="Apple-converted-space">&nbsp;</span><a title="Fortran" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Fortran">Fortran</a><span class="Apple-converted-space">&nbsp;</span>subroutines; however, S was designed to offer an alternate and more interactive approach. Early design decisions that hold even today include interactive graphics devices (printers and character terminals at the time), and providing easily accessible documentation for the functions.</p>
 
<p style="margin: 0.5em 0px">S is one of several statistical computing languages that were designed at Bell Laboratories, and first took form between 1975&ndash;1976.<sup id="cite_ref-Becker_1-0" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-Becker-1"><span>[</span>1<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>Up to that time, much of the statistical computing was done by directly calling<span class="Apple-converted-space">&nbsp;</span><a title="Fortran" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Fortran">Fortran</a><span class="Apple-converted-space">&nbsp;</span>subroutines; however, S was designed to offer an alternate and more interactive approach. Early design decisions that hold even today include interactive graphics devices (printers and character terminals at the time), and providing easily accessible documentation for the functions.</p>
 
<p style="margin: 0.5em 0px">The first working version of S was built in 1976, and operated on the<span class="Apple-converted-space">&nbsp;</span><a title="General Comprehensive Operating System" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/General_Comprehensive_Operating_System">GCOS</a><span class="Apple-converted-space">&nbsp;</span>operating system. At this time, S was unnamed, and suggestions included<span class="Apple-converted-space">&nbsp;</span><i>Interactive SCS (ISCS)</i>,<i>Statistical Computing System</i>, and<span class="Apple-converted-space">&nbsp;</span><i>Statistical Analysis System</i><span class="Apple-converted-space">&nbsp;</span>(which was already taken: see<span class="Apple-converted-space">&nbsp;</span><a title="SAS System" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/SAS_System">SAS System</a>). The name 'S' (used with single quotation marks, until 1979) was chosen, as it has the common letter used in statistical computing, and is consistent with other programming languages designed from the same institution at the time (namely the<span class="Apple-converted-space">&nbsp;</span><a title="C (programming language)" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/C_(programming_language)">C programming language</a>).</p>
 
<p style="margin: 0.5em 0px">The first working version of S was built in 1976, and operated on the<span class="Apple-converted-space">&nbsp;</span><a title="General Comprehensive Operating System" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/General_Comprehensive_Operating_System">GCOS</a><span class="Apple-converted-space">&nbsp;</span>operating system. At this time, S was unnamed, and suggestions included<span class="Apple-converted-space">&nbsp;</span><i>Interactive SCS (ISCS)</i>,<i>Statistical Computing System</i>, and<span class="Apple-converted-space">&nbsp;</span><i>Statistical Analysis System</i><span class="Apple-converted-space">&nbsp;</span>(which was already taken: see<span class="Apple-converted-space">&nbsp;</span><a title="SAS System" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/SAS_System">SAS System</a>). The name 'S' (used with single quotation marks, until 1979) was chosen, as it has the common letter used in statistical computing, and is consistent with other programming languages designed from the same institution at the time (namely the<span class="Apple-converted-space">&nbsp;</span><a title="C (programming language)" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/C_(programming_language)">C programming language</a>).</p>
 
<p style="margin: 0.5em 0px">When<span class="Apple-converted-space">&nbsp;</span><a title="UNIX/32V" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/UNIX/32V">UNIX/32V</a><span class="Apple-converted-space">&nbsp;</span>was ported to the (then new) 32-bit<span class="Apple-converted-space">&nbsp;</span><a title="Digital Equipment Corporation" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Digital_Equipment_Corporation">DEC</a><span class="Apple-converted-space">&nbsp;</span><a title="VAX" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/VAX">VAX</a>, computing on the<span class="Apple-converted-space">&nbsp;</span><a title="Unix" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Unix">Unix</a><span class="Apple-converted-space">&nbsp;</span>platform became feasible for S. In late 1979, S was ported from GCOS to UNIX, which would become the new primary platform.</p>
 
<p style="margin: 0.5em 0px">When<span class="Apple-converted-space">&nbsp;</span><a title="UNIX/32V" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/UNIX/32V">UNIX/32V</a><span class="Apple-converted-space">&nbsp;</span>was ported to the (then new) 32-bit<span class="Apple-converted-space">&nbsp;</span><a title="Digital Equipment Corporation" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Digital_Equipment_Corporation">DEC</a><span class="Apple-converted-space">&nbsp;</span><a title="VAX" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/VAX">VAX</a>, computing on the<span class="Apple-converted-space">&nbsp;</span><a title="Unix" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Unix">Unix</a><span class="Apple-converted-space">&nbsp;</span>platform became feasible for S. In late 1979, S was ported from GCOS to UNIX, which would become the new primary platform.</p>
 
<p style="margin: 0.5em 0px">In 1980 the first version of S was distributed outside Bell Laboratories and in 1981 source versions were made available.<sup id="cite_ref-Becker_1-1" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-Becker-1"><span>[</span>1<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>In 1984 two books were published by the research team at Bell Laboratories:<span class="Apple-converted-space">&nbsp;</span><i>S: An Interactive Environment for Data Analysis and Graphics</i><sup id="cite_ref-2" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-2"><span>[</span>2<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(1984 Brown Book) and<span class="Apple-converted-space">&nbsp;</span><i>Extending the S System</i>.<sup id="cite_ref-3" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-3"><span>[</span>3<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>Also, in 1984 the source code for S became licensed through AT&amp;T Software Sales for education and commercial purposes.</p>
 
<p style="margin: 0.5em 0px">In 1980 the first version of S was distributed outside Bell Laboratories and in 1981 source versions were made available.<sup id="cite_ref-Becker_1-1" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-Becker-1"><span>[</span>1<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>In 1984 two books were published by the research team at Bell Laboratories:<span class="Apple-converted-space">&nbsp;</span><i>S: An Interactive Environment for Data Analysis and Graphics</i><sup id="cite_ref-2" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-2"><span>[</span>2<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(1984 Brown Book) and<span class="Apple-converted-space">&nbsp;</span><i>Extending the S System</i>.<sup id="cite_ref-3" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-3"><span>[</span>3<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>Also, in 1984 the source code for S became licensed through AT&amp;T Software Sales for education and commercial purposes.</p>
<h3 style="overflow: hidden; font-size: 1.17em; background: none transparent scroll repeat 0% 0%; border-bottom-style: none; font-weight: bold; color: black; padding-bottom: 0px; padding-top: 0.5em; margin: 0.3em 0px 0px; line-height: 1.6"><span id=".22New_S.22" class="mw-headline">&quot;New S&quot;</span><span class="mw-editsection" style="font-size: small; font-family: sans-serif; vertical-align: baseline; white-space: nowrap; font-weight: normal; margin-left: 1em; display: inline-block; line-height: 1em; -webkit-user-select: none"><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">[</span><a title="Edit section: &quot;New S&quot;" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/w/index.php?title=S_(programming_language)&amp;action=edit&amp;section=3">edit</a><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">]</span></span></h3>
+
<p><b><span id=".22New_S.22" class="mw-headline">&quot;New S&quot;</span></b></p>
 
<p style="margin: 0.5em 0px">By 1988, many changes were made to S and the syntax of the language.<span class="Apple-converted-space">&nbsp;</span><i>The New S Language</i><sup id="cite_ref-4" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-4"><span>[</span>4<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(1988 Blue Book) was published to introduce the new features, such as the transition from<span class="Apple-converted-space">&nbsp;</span><i>macros</i><span class="Apple-converted-space">&nbsp;</span>to<span class="Apple-converted-space">&nbsp;</span><i>functions</i><span class="Apple-converted-space">&nbsp;</span>and how functions can be passed to other functions (such as<span class="Apple-converted-space">&nbsp;</span><code style="border-top: rgb(221,221,221) 1px solid; font-family: monospace, Courier; border-right: rgb(221,221,221) 1px solid; border-bottom: rgb(221,221,221) 1px solid; color: black; padding-bottom: 1px; padding-top: 1px; padding-left: 4px; border-left: rgb(221,221,221) 1px solid; padding-right: 4px; background-color: rgb(249,249,249); border-radius: 2px">apply</code>). Many other changes to the S language were to extend the concept of &quot;objects&quot;, and to make the syntax more consistent (and strict). However, many users found the transition to<span class="Apple-converted-space">&nbsp;</span><i>New S</i><span class="Apple-converted-space">&nbsp;</span>difficult, since their macros needed to be rewritten. Many other changes to S took hold, such as the use of<span class="Apple-converted-space">&nbsp;</span><a title="X Window System" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/X_Window_System">X11</a><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><a title="PostScript" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/PostScript">PostScript</a><span class="Apple-converted-space">&nbsp;</span>graphics devices, rewriting many internal functions from Fortran to C, and the use of<a title="Double precision" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Double_precision">double precision</a><span class="Apple-converted-space">&nbsp;</span>(only) arithmetic. The<span class="Apple-converted-space">&nbsp;</span><i>New S</i><span class="Apple-converted-space">&nbsp;</span>language is very similar to that used in modern versions of<span class="Apple-converted-space">&nbsp;</span><a title="S-plus" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S-plus">S-PLUS</a><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><a title="R (programming language)" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/R_(programming_language)">R</a>.</p>
 
<p style="margin: 0.5em 0px">By 1988, many changes were made to S and the syntax of the language.<span class="Apple-converted-space">&nbsp;</span><i>The New S Language</i><sup id="cite_ref-4" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-4"><span>[</span>4<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(1988 Blue Book) was published to introduce the new features, such as the transition from<span class="Apple-converted-space">&nbsp;</span><i>macros</i><span class="Apple-converted-space">&nbsp;</span>to<span class="Apple-converted-space">&nbsp;</span><i>functions</i><span class="Apple-converted-space">&nbsp;</span>and how functions can be passed to other functions (such as<span class="Apple-converted-space">&nbsp;</span><code style="border-top: rgb(221,221,221) 1px solid; font-family: monospace, Courier; border-right: rgb(221,221,221) 1px solid; border-bottom: rgb(221,221,221) 1px solid; color: black; padding-bottom: 1px; padding-top: 1px; padding-left: 4px; border-left: rgb(221,221,221) 1px solid; padding-right: 4px; background-color: rgb(249,249,249); border-radius: 2px">apply</code>). Many other changes to the S language were to extend the concept of &quot;objects&quot;, and to make the syntax more consistent (and strict). However, many users found the transition to<span class="Apple-converted-space">&nbsp;</span><i>New S</i><span class="Apple-converted-space">&nbsp;</span>difficult, since their macros needed to be rewritten. Many other changes to S took hold, such as the use of<span class="Apple-converted-space">&nbsp;</span><a title="X Window System" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/X_Window_System">X11</a><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><a title="PostScript" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/PostScript">PostScript</a><span class="Apple-converted-space">&nbsp;</span>graphics devices, rewriting many internal functions from Fortran to C, and the use of<a title="Double precision" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Double_precision">double precision</a><span class="Apple-converted-space">&nbsp;</span>(only) arithmetic. The<span class="Apple-converted-space">&nbsp;</span><i>New S</i><span class="Apple-converted-space">&nbsp;</span>language is very similar to that used in modern versions of<span class="Apple-converted-space">&nbsp;</span><a title="S-plus" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S-plus">S-PLUS</a><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><a title="R (programming language)" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/R_(programming_language)">R</a>.</p>
 
<p style="margin: 0.5em 0px">In 1991,<span class="Apple-converted-space">&nbsp;</span><i>Statistical Models in S</i><sup id="cite_ref-5" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-5"><span>[</span>5<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(1991 White Book) was published, which introduced the use of formula-notation<sup id="cite_ref-6" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-6"><span>[</span>6<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(which use the '<tt style="font-family: monospace, Courier">~</tt>' operator), data frame objects, and modifications to the use of object<span class="Apple-converted-space">&nbsp;</span><a title="Method (computer science)" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Method_(computer_science)">methods</a><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><a title="Class (computer science)" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Class_(computer_science)">classes</a>.</p>
 
<p style="margin: 0.5em 0px">In 1991,<span class="Apple-converted-space">&nbsp;</span><i>Statistical Models in S</i><sup id="cite_ref-5" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-5"><span>[</span>5<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(1991 White Book) was published, which introduced the use of formula-notation<sup id="cite_ref-6" class="reference" style="font-size: 11px; font-weight: normal; font-style: normal; line-height: 1"><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; white-space: nowrap; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_note-6"><span>[</span>6<span>]</span></a></sup><span class="Apple-converted-space">&nbsp;</span>(which use the '<tt style="font-family: monospace, Courier">~</tt>' operator), data frame objects, and modifications to the use of object<span class="Apple-converted-space">&nbsp;</span><a title="Method (computer science)" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Method_(computer_science)">methods</a><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><a title="Class (computer science)" class="mw-redirect" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Class_(computer_science)">classes</a>.</p>
<h3 style="overflow: hidden; font-size: 1.17em; background: none transparent scroll repeat 0% 0%; border-bottom-style: none; font-weight: bold; color: black; padding-bottom: 0px; padding-top: 0.5em; margin: 0.3em 0px 0px; line-height: 1.6"><span id="S4" class="mw-headline">S4</span><span class="mw-editsection" style="font-size: small; font-family: sans-serif; vertical-align: baseline; white-space: nowrap; font-weight: normal; margin-left: 1em; display: inline-block; line-height: 1em; -webkit-user-select: none"><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">[</span><a title="Edit section: S4" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/w/index.php?title=S_(programming_language)&amp;action=edit&amp;section=4">edit</a><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">]</span></span></h3>
+
<p><span id="S4" class="mw-headline">S4</span></p>
 
<p style="margin: 0.5em 0px">Version 4 of S, often abbreviated S4, provides advanced object-oriented features. S4 classes differ markedly from S3 classes.</p>
 
<p style="margin: 0.5em 0px">Version 4 of S, often abbreviated S4, provides advanced object-oriented features. S4 classes differ markedly from S3 classes.</p>
<h2 style="overflow: hidden; font-size: 1.5em; font-family: 'Linux Libertine', Georgia, Times, serif; background: none transparent scroll repeat 0% 0%; border-bottom: rgb(170,170,170) 1px solid; font-weight: normal; color: black; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 1em 0px 0.25em; line-height: 1.3; padding-right: 0px"><span id="References" class="mw-headline">References</span><span class="mw-editsection" style="font-size: small; font-family: sans-serif; vertical-align: baseline; white-space: nowrap; font-weight: normal; margin-left: 1em; display: inline-block; line-height: 1em; -webkit-user-select: none"><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">[</span><a title="Edit section: References" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/w/index.php?title=S_(programming_language)&amp;action=edit&amp;section=5">edit</a><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">]</span></span></h2>
+
<h2 style="overflow: hidden; font-size: 1.5em; font-family: 'Linux Libertine', Georgia, Times, serif; background: none transparent scroll repeat 0% 0%; border-bottom: rgb(170,170,170) 1px solid; font-weight: normal; color: black; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 1em 0px 0.25em; line-height: 1.3; padding-right: 0px"><span id="References" class="mw-headline">References</span></h2>
 
<div class="reflist" style="list-style-type: decimal; margin-bottom: 0.5em; font-size: 12px">
 
<div class="reflist" style="list-style-type: decimal; margin-bottom: 0.5em; font-size: 12px">
 
<ol class="references" style="font-size: 12px; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0.3em 0px 0.5em 3.2em; list-style-image: none; line-height: 1.5em; padding-right: 0px">
 
<ol class="references" style="font-size: 12px; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0.3em 0px 0.5em 3.2em; list-style-image: none; line-height: 1.5em; padding-right: 0px">
     <li id="cite_note-Becker-1" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none">^<span class="Apple-converted-space">&nbsp;</span><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-Becker_1-0"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up to:</span><sup style="font-size: 10px; line-height: 1"><i><b>a</b></i></sup></a><span class="Apple-converted-space">&nbsp;</span><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-Becker_1-1"><sup style="font-size: 10px; line-height: 1"><i><b>b</b></i></sup></a></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span id="CITEREFBecker" class="citation" style="word-wrap: break-word">Becker, Richard A.,<span class="Apple-converted-space">&nbsp;</span><a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" href="http://cm.bell-labs.com/stat/doc/94.11.ps" rel="nofollow"><i>A Brief History of S</i></a><span class="Apple-converted-space">&nbsp;</span><span style="font-size: 10px">(PS)</span>, Murray Hill, New Jersey: AT&amp;T Bell Laboratories<span class="reference-accessdate">, retrieved<span class="Apple-converted-space">&nbsp;</span><span class="nowrap" style="white-space: nowrap">2014-08-18</span></span></span></span></li>
+
     <li id="cite_note-Becker-1" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none">^<span class="Apple-converted-space">&nbsp;</span><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-Becker_1-0"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up to:</span><sup style="font-size: 10px; line-height: 1"><i><b>a</b></i></sup></a><span class="Apple-converted-space">&nbsp;</span><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-Becker_1-1"><sup style="font-size: 10px; line-height: 1"><i><b>b</b></i></sup></a></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span id="CITEREFBecker" class="citation" style="word-wrap: break-word">Becker, Richard A.,<span class="Apple-converted-space">&nbsp;</span><a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" rel="nofollow" href="http://cm.bell-labs.com/stat/doc/94.11.ps"><i>A Brief History of S</i></a><span class="Apple-converted-space">&nbsp;</span><span style="font-size: 10px">(PS)</span>, Murray Hill, New Jersey: AT&amp;T Bell Laboratories<span class="reference-accessdate">, retrieved<span class="Apple-converted-space">&nbsp;</span><span class="nowrap" style="white-space: nowrap">2014-08-18</span></span></span></span></li>
 
     <li id="cite_note-2" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-2"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Becker, R.A.; Chambers, J.M. (1984).<span class="Apple-converted-space">&nbsp;</span><i>S: An Interactive Environment for Data Analysis and Graphics</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole.<span class="Apple-converted-space">&nbsp;</span><a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-534-03313-X" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-534-03313-X">0-534-03313-X</a>.</span></span></li>
 
     <li id="cite_note-2" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-2"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Becker, R.A.; Chambers, J.M. (1984).<span class="Apple-converted-space">&nbsp;</span><i>S: An Interactive Environment for Data Analysis and Graphics</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole.<span class="Apple-converted-space">&nbsp;</span><a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-534-03313-X" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-534-03313-X">0-534-03313-X</a>.</span></span></li>
 
     <li id="cite_note-3" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-3"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Becker, R.A.; Chambers, J.M. (1985).<span class="Apple-converted-space">&nbsp;</span><i>Extending the S System</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole.<span class="Apple-converted-space">&nbsp;</span><a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-534-05016-6" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-534-05016-6">0-534-05016-6</a>.</span></span></li>
 
     <li id="cite_note-3" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-3"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Becker, R.A.; Chambers, J.M. (1985).<span class="Apple-converted-space">&nbsp;</span><i>Extending the S System</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole.<span class="Apple-converted-space">&nbsp;</span><a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-534-05016-6" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-534-05016-6">0-534-05016-6</a>.</span></span></li>
 
     <li id="cite_note-4" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-4"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Becker, R.A.; Chambers, J.M.; Wilks, A.R. (1988).<span class="Apple-converted-space">&nbsp;</span><i>The New S Language: A Programming Environment for Data Analysis and Graphics</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole.<a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-534-09192-X" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-534-09192-X">0-534-09192-X</a>.</span></span></li>
 
     <li id="cite_note-4" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-4"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Becker, R.A.; Chambers, J.M.; Wilks, A.R. (1988).<span class="Apple-converted-space">&nbsp;</span><i>The New S Language: A Programming Environment for Data Analysis and Graphics</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole.<a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-534-09192-X" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-534-09192-X">0-534-09192-X</a>.</span></span></li>
 
     <li id="cite_note-5" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-5"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Chambers, J.M.; Hastie, T.J. (1991).<span class="Apple-converted-space">&nbsp;</span><i>Statistical Models in S</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole. p.&nbsp;624.<span class="Apple-converted-space">&nbsp;</span><a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-412-05291-1" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-412-05291-1">0-412-05291-1</a>.</span></span></li>
 
     <li id="cite_note-5" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-5"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation book" style="word-wrap: break-word">Chambers, J.M.; Hastie, T.J. (1991).<span class="Apple-converted-space">&nbsp;</span><i>Statistical Models in S</i>. Pacific Grove, CA, USA: Wadsworth &amp; Brooks/Cole. p.&nbsp;624.<span class="Apple-converted-space">&nbsp;</span><a title="International Standard Book Number" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/International_Standard_Book_Number">ISBN</a>&nbsp;<a title="Special:BookSources/0-412-05291-1" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Special:BookSources/0-412-05291-1">0-412-05291-1</a>.</span></span></li>
     <li id="cite_note-6" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-6"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation journal" style="word-wrap: break-word">Wilkinsons, G.N.; Rogers, C.E. (1973). &quot;Symbolic description of factorial models for analysis of variance&quot;.<span class="Apple-converted-space">&nbsp;</span><i>Applied Statistics</i><span class="Apple-converted-space">&nbsp;</span><b>22</b><span class="Apple-converted-space">&nbsp;</span>(3): 392&ndash;399.<span class="Apple-converted-space">&nbsp;</span><a title="Digital object identifier" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Digital_object_identifier">doi</a>:<a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" href="http://dx.doi.org/10.2307%2F2346786" rel="nofollow">10.2307/2346786</a>.<span class="Apple-converted-space">&nbsp;</span><a title="JSTOR" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/JSTOR">JSTOR</a>&nbsp;<a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" href="http://www.jstor.org/stable/2346786" rel="nofollow">2346786</a>.</span></span></li>
+
     <li id="cite_note-6" style="margin-bottom: 0.1em"><span class="mw-cite-backlink" style="-webkit-user-select: none"><b><a style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/S_(programming_language)#cite_ref-6"><span class="cite-accessibility-label" style="overflow: hidden; border-top: 0px; clip: rect(1px 1px 1px 1px); height: 1px !important; border-right: 0px; width: 1px !important; border-bottom: 0px; position: absolute !important; padding-bottom: 0px !important; padding-top: 0px !important; padding-left: 0px !important; border-left: 0px; top: -99999px; padding-right: 0px !important; -webkit-user-select: none">Jump up</span>^</a></b></span><span class="Apple-converted-space">&nbsp;</span><span class="reference-text"><span class="citation journal" style="word-wrap: break-word">Wilkinsons, G.N.; Rogers, C.E. (1973). &quot;Symbolic description of factorial models for analysis of variance&quot;.<span class="Apple-converted-space">&nbsp;</span><i>Applied Statistics</i><span class="Apple-converted-space">&nbsp;</span><b>22</b><span class="Apple-converted-space">&nbsp;</span>(3): 392&ndash;399.<span class="Apple-converted-space">&nbsp;</span><a title="Digital object identifier" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/Digital_object_identifier">doi</a>:<a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" rel="nofollow" href="http://dx.doi.org/10.2307%2F2346786">10.2307/2346786</a>.<span class="Apple-converted-space">&nbsp;</span><a title="JSTOR" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/JSTOR">JSTOR</a>&nbsp;<a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" rel="nofollow" href="http://www.jstor.org/stable/2346786">2346786</a>.</span></span></li>
 
</ol>
 
</ol>
 
</div>
 
</div>
 
<h2 style="overflow: hidden; font-size: 1.5em; font-family: 'Linux Libertine', Georgia, Times, serif; background: none transparent scroll repeat 0% 0%; border-bottom: rgb(170,170,170) 1px solid; font-weight: normal; color: black; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 1em 0px 0.25em; line-height: 1.3; padding-right: 0px"><span id="External_links" class="mw-headline">External links</span><span class="mw-editsection" style="font-size: small; font-family: sans-serif; vertical-align: baseline; white-space: nowrap; font-weight: normal; margin-left: 1em; display: inline-block; line-height: 1em; -webkit-user-select: none"><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">[</span><a title="Edit section: External links" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/w/index.php?title=S_(programming_language)&amp;action=edit&amp;section=6">edit</a><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">]</span></span></h2>
 
<h2 style="overflow: hidden; font-size: 1.5em; font-family: 'Linux Libertine', Georgia, Times, serif; background: none transparent scroll repeat 0% 0%; border-bottom: rgb(170,170,170) 1px solid; font-weight: normal; color: black; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 1em 0px 0.25em; line-height: 1.3; padding-right: 0px"><span id="External_links" class="mw-headline">External links</span><span class="mw-editsection" style="font-size: small; font-family: sans-serif; vertical-align: baseline; white-space: nowrap; font-weight: normal; margin-left: 1em; display: inline-block; line-height: 1em; -webkit-user-select: none"><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">[</span><a title="Edit section: External links" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/w/index.php?title=S_(programming_language)&amp;action=edit&amp;section=6">edit</a><span class="mw-editsection-bracket" style="color: rgb(85,85,85); margin-left: 0px; margin-right: 0px">]</span></span></h2>
 
<ul style="list-style-type: disc; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0.3em 0px 0px 1.6em; list-style-image: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20width%3D%225%22%20height%3D%2213%22%3E%0A%3Ccircle%20cx%3D%222.5%22%20cy%3D%229.5%22%20r%3D%222.5%22%20fill%3D%22%2300528c%22%2F%3E%0A%3C%2Fsvg%3E%0A); line-height: 1.5em; padding-right: 0px">
 
<ul style="list-style-type: disc; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0.3em 0px 0px 1.6em; list-style-image: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20width%3D%225%22%20height%3D%2213%22%3E%0A%3Ccircle%20cx%3D%222.5%22%20cy%3D%229.5%22%20r%3D%222.5%22%20fill%3D%22%2300528c%22%2F%3E%0A%3C%2Fsvg%3E%0A); line-height: 1.5em; padding-right: 0px">
     <li style="margin-bottom: 0.1em"><a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" href="http://cm.bell-labs.com/stat/doc/96.7.ps" rel="nofollow">Evolution of the S Language</a>, by John M. Chambers, discusses the new features in Version 4 of S (in<span class="Apple-converted-space">&nbsp;</span><a title="PostScript" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/PostScript">PostScript</a><span class="Apple-converted-space">&nbsp;</span>format)</li>
+
     <li style="margin-bottom: 0.1em"><a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" rel="nofollow" href="http://cm.bell-labs.com/stat/doc/96.7.ps">Evolution of the S Language</a>, by John M. Chambers, discusses the new features in Version 4 of S (in<span class="Apple-converted-space">&nbsp;</span><a title="PostScript" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(11,0,128)" href="http://en.wikipedia.org/wiki/PostScript">PostScript</a><span class="Apple-converted-space">&nbsp;</span>format)</li>
     <li style="margin-bottom: 0.1em"><a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" href="http://cm.bell-labs.com/cm/ms/departments/sia/S/history.html" rel="nofollow">Stages in the Evolution of S</a>, by John M. Chambers</li>
+
     <li style="margin-bottom: 0.1em"><a class="external text" style="text-decoration: none; background: none transparent scroll repeat 0% 0%; color: rgb(102,51,102); padding-right: 13px" rel="nofollow" href="http://cm.bell-labs.com/cm/ms/departments/sia/S/history.html">Stages in the Evolution of S</a>, by John M. Chambers</li>
 
</ul>
 
</ul>
 
</div>
 
</div>

Latest revision as of 23:11, 3 May 2015

S is a statistical programming language developed primarily by John Chambers and (in earlier versions) Rick Becker and Allan Wilks of Bell Laboratories. The aim of the language, as expressed by John Chambers, is "to turn ideas into software, quickly and faithfully."

The two modern implementations of S are R, part of the GNU free software project, and S-PLUS.

 

History

 

"Old S"

S is one of several statistical computing languages that were designed at Bell Laboratories, and first took form between 1975–1976.[1] Up to that time, much of the statistical computing was done by directly calling Fortran subroutines; however, S was designed to offer an alternate and more interactive approach. Early design decisions that hold even today include interactive graphics devices (printers and character terminals at the time), and providing easily accessible documentation for the functions.

The first working version of S was built in 1976, and operated on the GCOS operating system. At this time, S was unnamed, and suggestions included Interactive SCS (ISCS),Statistical Computing System, and Statistical Analysis System (which was already taken: see SAS System). The name 'S' (used with single quotation marks, until 1979) was chosen, as it has the common letter used in statistical computing, and is consistent with other programming languages designed from the same institution at the time (namely the C programming language).

When UNIX/32V was ported to the (then new) 32-bit DEC VAX, computing on the Unix platform became feasible for S. In late 1979, S was ported from GCOS to UNIX, which would become the new primary platform.

In 1980 the first version of S was distributed outside Bell Laboratories and in 1981 source versions were made available.[1] In 1984 two books were published by the research team at Bell Laboratories: S: An Interactive Environment for Data Analysis and Graphics[2] (1984 Brown Book) and Extending the S System.[3] Also, in 1984 the source code for S became licensed through AT&T Software Sales for education and commercial purposes.

"New S"

By 1988, many changes were made to S and the syntax of the language. The New S Language[4] (1988 Blue Book) was published to introduce the new features, such as the transition from macros to functions and how functions can be passed to other functions (such as apply). Many other changes to the S language were to extend the concept of "objects", and to make the syntax more consistent (and strict). However, many users found the transition to New S difficult, since their macros needed to be rewritten. Many other changes to S took hold, such as the use of X11 and PostScript graphics devices, rewriting many internal functions from Fortran to C, and the use ofdouble precision (only) arithmetic. The New S language is very similar to that used in modern versions of S-PLUS and R.

In 1991, Statistical Models in S[5] (1991 White Book) was published, which introduced the use of formula-notation[6] (which use the '~' operator), data frame objects, and modifications to the use of object methods and classes.

S4

Version 4 of S, often abbreviated S4, provides advanced object-oriented features. S4 classes differ markedly from S3 classes.

References

  1. ^ Jump up to:a b Becker, Richard A., A Brief History of S (PS), Murray Hill, New Jersey: AT&T Bell Laboratories, retrieved 2014-08-18
  2. Jump up^ Becker, R.A.; Chambers, J.M. (1984). S: An Interactive Environment for Data Analysis and Graphics. Pacific Grove, CA, USA: Wadsworth & Brooks/Cole. ISBN 0-534-03313-X.
  3. Jump up^ Becker, R.A.; Chambers, J.M. (1985). Extending the S System. Pacific Grove, CA, USA: Wadsworth & Brooks/Cole. ISBN 0-534-05016-6.
  4. Jump up^ Becker, R.A.; Chambers, J.M.; Wilks, A.R. (1988). The New S Language: A Programming Environment for Data Analysis and Graphics. Pacific Grove, CA, USA: Wadsworth & Brooks/Cole.ISBN 0-534-09192-X.
  5. Jump up^ Chambers, J.M.; Hastie, T.J. (1991). Statistical Models in S. Pacific Grove, CA, USA: Wadsworth & Brooks/Cole. p. 624. ISBN 0-412-05291-1.
  6. Jump up^ Wilkinsons, G.N.; Rogers, C.E. (1973). "Symbolic description of factorial models for analysis of variance". Applied Statistics 22 (3): 392–399. doi:10.2307/2346786. JSTOR 2346786.

External links[edit]