HaskellWiki

Haskell | Wiki community | Recent changes
Random page | Special pages

 

Not logged in
Log in | Help

Sunt tipurile din Haskell totuna cu domeniile functiilor din matematica ?

Categories: Ro

Sunt tipurile din Haskell totuna cu domeniile functiilor din matematica ? La ce foloseste Haskell tipurile ?

Retineti: Tipurile din Haskell NU sunt totuna cu domeniile functiilor ! Sunt informatii pentru deducerea tipului rezultatelor de catre compilator.

Ar trebui sa stiti, iar daca ati urmat un curs de semantica a limbajelor de programare sau ati lucrat cu un limbaj modern stiti, ca un compilator (modern) face si inferente (deductii) de tipuri. De exemplu daca f:: a -> b si x:: a atunci f x :: b.

Sistemul de tipuri din Haskell face ceva mai mult deoarece poate opera cu tipuri polimorfice (cum sunt listele de orice, [x] ) si poate determina cel mai mic tip (deoarece tipuri mai generale pot fi multe) al unei expresii.

Ca urmare, ceea ce scriem la declaratiile functiilor ca semnatura nu este exact "domeniul" functiei ci o informatie numita "tipul argumentelor", informatie utila pentru procesarea facuta de sistemul de inferente de tipuri. Pentru matematician as spune ca se da nu:
- domeniul
- multimea din care functia ia valori
- regula de corespondenta (setul de ecuatii)

Programatorul in Haskell intelege ca o functie se specifica daca se dau:
- multimea din care argumentele POT lua valori (fara restrictii bazate pe valoare)
- multimea din care functia ia valori
- regula de corespondenta (setul de ecuatii)

Sistemul de inferente de tipuri face inferente cu tipuri, rationamente in care apar Integer, Char , [] etc dar nu cu VALORILE lor.


Pagina indexata la indexul Categories:Ro


<= Inapoi la pagina principala Ro/Haskell.

Retrieved from "http://haskell.org/haskellwiki/Sunt_tipurile_din_Haskell_totuna_cu_domeniile_functiilor_din_matematica_%3F"

This page has been accessed 286 times. This page was last modified 09:28, 21 January 2008. Recent content is available under a simple permissive license.