Personal tools

Cand folosim un egal si cand folosim doi de egal ?

From HaskellWiki

Jump to: navigation, search


1 Intrebare

--- On Fri, 2/5/10, Luminita Ticu <luminita_t..@yahoo.com>
wrote:

 From: Luminita Ticu <luminita_t..@yahoo.com>
 Subject: 
 To: popa...@yahoo.com
 Date: Friday, February 5, 2010, 8:01 AM
 In momentul in care scriem
 conditia unei probleme,doar atunci se pun 2 semne de
egal? Si
 doar la inceput,cand introducem variabilele,scriem un
singur
 semn?         

2 Raspuns

Simbolul, operatorul == compara doua valori daca sunt egale. Ele trebuie sa fie dintr-un tip care admite ideea de egalitate a valorilor, adica un tip din clasa Eq. (In termenii din materia de an al III-lea).

Un singur egal = insa este folosit pentru a introduce un nume local pt o valoare, fie ca folositi let fie ca folositi where.

let x=3 in 3*x
3+x where x=4

Sunt si situatii mai complicate cand acest egal declanseaza un proces de pattern matching (adic potrivire de sabloane) si in felul acesta se stabilesc nume asociate mai multor valori:

let (a,b) = (3,4) in a+b

Va da in final rezultatul 7 deoarece dupa identificare a=3 ( a se citi "a il denumeste pe 3 / a inseamna 3 / numele a este legat la valoarea 3",iar b=4) si prin urmare a+b se va evalua la 7.

Notiunea de variabila globala nu exista. Iar in do-notatie, let x = 3

nu specifica de fapt decat ca se transmite 3 ca parametru numit x unei functii ascunse de acea macrodefinitie care este do-notatia.

Cititi si: http://www.haskell.org/haskellwiki/Intrebarile_incepatorului http://www.haskell.org/haskellwiki/Capitole_de_manual

Dati click pe Ro din textul Category:Ro pentru a accesa harta site-ului.

Succes!

Dan Popa