<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>brianp.de &#187; Kommentar</title>
	<atom:link href="http://brianp.de/tag/kommentar/feed/" rel="self" type="application/rss+xml" />
	<link>http://brianp.de</link>
	<description>Wissen ist der erste Rohstoff, der sich bei Gebrauch vermehrt! - brandeins</description>
	<lastBuildDate>Mon, 06 Sep 2010 14:55:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Scheme Kurs &#8211; Teil 1: Grundlegendes</title>
		<link>http://brianp.de/2009/10/14/scheme-kurs-teil-1-grundlegendes/</link>
		<comments>http://brianp.de/2009/10/14/scheme-kurs-teil-1-grundlegendes/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 19:20:07 +0000</pubDate>
		<dc:creator>Brian</dc:creator>
				<category><![CDATA[GdI1]]></category>
		<category><![CDATA[Scheme]]></category>
		<category><![CDATA[define]]></category>
		<category><![CDATA[Funktion]]></category>
		<category><![CDATA[Kombination]]></category>
		<category><![CDATA[Kommentar]]></category>
		<category><![CDATA[Konstante]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Parameter]]></category>
		<category><![CDATA[Präfixdarstellung]]></category>
		<category><![CDATA[Prozedur]]></category>

		<guid isPermaLink="false">http://brianp.de/?p=207</guid>
		<description><![CDATA[Scheme (1970) ist eine relativ alte Sprache, aber eine der neusten Abkömmlinge von Lisp. Und Lisp ist &#8220;die Mutter aller Programmiersprachen&#8221;! Kombination oder Präfix-Notation In Scheme ist alles in Klammern gefasst. Eine einfache Addition sieht wie folgt aus: &#40;+ zahl1 zahl2&#41; An der ersten Stelle in der Klammer steht der Operator oder die Funktion. Danach [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://de.wikipedia.org/wiki/Scheme">Scheme</a> (1970) ist eine relativ alte Sprache, aber eine der <em>neusten</em> Abkömmlinge von <a href="http://de.wikipedia.org/wiki/LISP">Lisp</a>. Und Lisp ist &#8220;die Mutter aller Programmiersprachen&#8221;!</p>
<h3>Kombination oder Präfix-Notation</h3>
<p>In Scheme ist alles in Klammern gefasst. Eine einfache Addition sieht wie folgt aus:</p>
<div class="codecolorer-container scheme default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="scheme codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">+</span> zahl1 zahl2<span style="color: #66cc66;">&#41;</span></div></div>
<p>An der ersten Stelle in der Klammer steht der Operator oder die Funktion. Danach folgen die Parameter. Die Anzahl der Parameter kann variieren, so ist es bei den eingebauten Funktionen möglich, beliebig viele anzugeben (solang sonnvoll).</p>
<div class="codecolorer-container scheme default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="scheme codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">*</span> <span style="color: #cc66cc;">2</span> <span style="color: #cc66cc;">2</span> <span style="color: #cc66cc;">2</span> <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span></div></div>
<p>(Ist das gleiche wie <img src="http://l.wordpress.com/latex.php?latex=2%20%2A%202%20%2A%202%20%2A%202%20%3D%202%5E4&#038;bg=FFFFFF&#038;fg=000000&#038;s=1" title="2 * 2 * 2 * 2 = 2^4" style="vertical-align:-20%;" class="tex" alt="2 * 2 * 2 * 2 = 2^4" />.)</p>
<p>Diese Darstellungsform nennt man <strong>Präfixdarstellung</strong>.</p>
<h3>Verschachtelte Kombinationen</h3>
<p>Kombinationen können natürlich beliebig weit verschachtelt werden.</p>
<div class="codecolorer-container scheme default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="scheme codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">*</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">+</span> <span style="color: #cc66cc;">4</span> <span style="color: #cc66cc;">9</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">-</span> <span style="color: #cc66cc;">12</span> <span style="color: #cc66cc;">3</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span></div></div>
<h3>Konstanten und Funktionen</h3>
<p>Konstanten und Funktionen können mit dem Schlüsselwort <em>define</em> definiert werden.</p>
<div class="codecolorer-container scheme default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="scheme codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">define</span> PI <span style="color: #cc66cc;">3.14</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">define</span> <span style="color: #66cc66;">&#40;</span>square var<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">*</span> var var<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span></div></div>
<p>In der ersten Zeile erstellen wir eine Konstante <em>PI</em> mit dem Wert 3.14.<br />
In der zweiten Zeile definieren wir eine Funktion (oder <strong>Prozedur</strong>) namens <em>square</em> mit dem Parameter <em>var</em>. Der <strong>Funktionskörper</strong> (oder <strong>Funktionsrumpf</strong>) multipliziert den Parameter <em>var</em> mit sich selbst und gibt das Ergebnis automatisch zurück.<br />
Danach kann man die Konstanten wie eine Zahl benutzen und die Funktion wie einen Operator:</p>
<div class="codecolorer-container scheme default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="scheme codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #66cc66;">&#40;</span>square PI<span style="color: #66cc66;">&#41;</span></div></div>
<p>würde uns das Ergebnis <em>9,8596</em> zurückgeben bzw. in diesem Fall auf dem Bildschirm ausgeben.</p>
<h3>Kommentare</h3>
<p>Kommentare werden durch einen doppelten Strichpunkt eingeleitet.</p>
<div class="codecolorer-container scheme default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="scheme codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #808080; font-style: italic;">;; Dies ist mein Kommentar</span></div></div>
]]></content:encoded>
			<wfw:commentRss>http://brianp.de/2009/10/14/scheme-kurs-teil-1-grundlegendes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
