<?xml version="1.0" encoding="ISO-8859-15"?>
<rss version="2.0"><channel>
<title>tyyppi</title>
<link>http://sange.fi/~atehwa/cgi-bin/piki.cgi/</link>
<description>Recent changes in tyyppi</description>
<item><title>tyyppi</title>
<link>http://sange.fi/~atehwa/cgi-bin/piki.cgi/tyyppi</link>
<guid>http://sange.fi/~atehwa/cgi-bin/piki.cgi/#1222324055</guid>
<description>&lt;p&gt;Jokaisella ohjelmointikielessä käsitellyllä &lt;del&gt;arvolla (= 
[tieto&lt;/del&gt; &lt;ins&gt;tiedolla ([tieto&lt;/ins&gt; eli data]) on jokin tyyppi. 
Esimerkiksi arvon 3 tyyppi on [luku] ja arvon "heipsis" tyyppi on 
[merkkijono]. Jokainen tyyppi on yksinkertainen &lt;del&gt;[tietorakenne]. 
Tietorakenne on (tietokoneen näkökulmasta) rakenne, joka pystyy 
pitämään sisällään tietynlaista tietoa; ohjelmoijan&lt;/del&gt; 
&lt;ins&gt;[tietorakenne] ja määrittää, minkälaista tietoa kyseisentyyppiset 
arvot voivat sisältää. Esimerkiksi luku ei voi olla "fioo" eikä 
merkkijonoon voi upottaa listaa.&lt;/ins&gt; 

&lt;p&gt;&lt;ins&gt;Ohjelmoijan&lt;/ins&gt; näkökulmasta &lt;del&gt;se on rakenne, jota 
käytetään tietyntyyppisen&lt;/del&gt; &lt;ins&gt;tyyppi määrittyy kahdella tavalla. 
Ensinnäkin tiedolla on ''eksplisiittinen'' tyyppi: ohjelmointikieli 
pitää kirjaa siitä, mitä tyyppiä mikin tieto on. Pythonilla 
eksplisiittisen tyypin saa selville mistä tahansa tiedosta funktiolla 
type(). Toisaalta semanttisessa mielessä&lt;/ins&gt; tiedon 
&lt;del&gt;käsittelyyn.&lt;/del&gt; 

&lt;p&gt;&lt;del&gt;Tietorakenteita on kahdentyyppisiä, sisäänrakennettuja eli 
primitiivisiä:&lt;/del&gt; 

&lt;p&gt;&lt;del&gt;* [luku] * [totuusarvo] * [merkkijono] * [lista] * 
[hajautus]&lt;/del&gt; &lt;ins&gt;tyypin määrittää se, mitä kyseisellä tiedolla voi 
tehdä: esimerkiksi lukuja voi laskea yhteen, vähentää ja niin edelleen, 
merkkijonoja muuntaa isoiksi tai pieniksi kirjaimiksi, jokaista 
[kokoelma]a voi pätkiä ja niin edelleen.&lt;/ins&gt; 

&lt;p&gt;&lt;del&gt;Sekä näitä yhdistelemällä saatuja, monimutkaisempia 
tietorakenteita.&lt;/del&gt; Joissakin ohjelmointikielissä pystyy 
määrittämään ''uusia tyyppejä'', mikä merkitsee, että 
&lt;del&gt;ohjelmointikielen toteutuskin tietää, että tietorakenteenne&lt;/del&gt; 
&lt;ins&gt;uudentyyppisten tietojen eksplisiittinen tyyppi&lt;/ins&gt; on erillinen 
&lt;ins&gt;kaikista&lt;/ins&gt; muista &lt;del&gt;tietorakenteista (= tyypeistä); joskus 
taas luomme vanhoja tietorakenteita yhdistelemällä uuden, joka 
kuitenkaan ei ole ohjelmointikielen näkökulmasta uusi tyyppi. 
Esimerkiksi jos esitämme lausetta sanojen listalla, ohjelmointikielen 
näkökulmasta kyseessä on yksinkertaisesti [lista], vaikka me 
tiedämmekin, että tuo lista sisältää nimenomaan lauseen sanoja.&lt;/del&gt; 
&lt;ins&gt;tyypeistä.&lt;/ins&gt; 

&lt;p&gt;[...]

</description>
<pubDate>Thu, 25 Sep 2008 06:27:35 +0000</pubDate>
</item>

</channel></rss>
