Open main menu

Biolecture.org β

Changes

S language

2,604 bytes removed, 23:11, 3 May 2015
no edit summary
<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>
<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"p><b><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></spanb></h3p>
<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>
<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"p><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></h3p>
<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>
<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">
Anonymous user