Difference between revisions of "Ro/Haskell"

From HaskellWiki
Jump to navigation Jump to search
m
 
(122 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
[[Category:Ro]]
 
[[Category:Ro]]
[[Image:Haskelllogo-small-flag-RO-8.jpg|center|Haskell - Un limbaj functional pur]]
+
[[Image:Haskelllogo-small-flag-RO-8.jpg|center|Haskell - Un limbaj funcțional pur]] [https://wiki.haskell.org/Category:Ro Hartă site.]
   
 
<center>
 
<center>
  +
----
Haskell este limbajul functional succesor al LISP-ului, Scheme-ului si ML-ului !!!<br>
 
  +
Haskell este limbajul funcțional succesor al LISP-ului, Scheme-ului și ML-ului!<br>
Cel mai productiv limbaj functional ! Limbajul folosit de autorii limbajului Perl 6 si ales de echipa Linspire, utilizat la Inteligenta artificiala, prelucrari multimedia, Retele Petri, programare functionala in [[Robotica]], sinteza de circuite electronice, motoare de baze de date , cercetare , productie de software "type safe",productie de limbaje (DSL-uri, cum este Limbajul Pseudocod [[Rodin]] ), proiectare automata de scheme electronice, analize statistice si financiare (bancare)... <br> V-am starnit curiozitatea ? Cititi: [[Intrebarile incepatorului]]. Am adaugat raspunsuri noi (16 dec. 2007- 10 feb. 2008). Informatiile pentru studenti sunt la punctul 18, incepeti de acolo. [http://www.haskell.org/haskellwiki/De_ce_sa_alegem_o_tema_de_licenta_cu_Haskell_si_Limbaje_Formale Sau la pagina despre lucrari de licenta.] <br>
 
  +
Cel mai productiv limbaj funcțional! Limbajul folosit de autorii limbajului Perl 6 și ales de echipa Linspire, utilizat la inteligență artificială, prelucrări mulțimedia, rețele Petri, programare funcțională, în [[Robotică]], sinteză de circuite electronice, motoare de baze de date, cercetare, producție de software „type safe”, producție de limbaje (DSL-uri, cum este Limbajul Pseudocod [[Rodin]]), proiectare automată de scheme electronice, analize statistice și financiare (bancare), grafica 3D... <br>V-am stârnit curiozitatea? Citiți: [https://wiki.haskell.org/Întrebarile_incepatorului Întrebările începătorului]. Am adăugat răspunsuri noi (dec. 2009-16 ian. 2010). Înformațiile pentru studenți sunt la punctul 18, începeți de acolo, iar link-urile de descărcare în secțiunea 8. [https://www.haskell.org/haskellwiki/De_ce_sa_alegem_o_tema_de_licenta_cu_Haskell_si_Limbaje_Formale sau la pagina despre lucrări de licență.] Celor interesați de OpenGL le recomandăm noua pagină [[Ro/Haskell/OpenGL]]<br>
   
 
----
 
----
Nota: Pagina cursului [[Ro/Haskell/Fundamentele Programarii]] o puteti gasi si la indexul Ro de sus,dar la, litera R.
+
Nota: Pagina cursului de [https://wiki.haskell.org/Ro/Haskell/Fundamentele_Programarii Fundamentele Programării] o puteți găsi și pe harta site-ului de sus sau dând click pe Ro (în josul paginii).
  +
</center>
 
  +
'''Stirile pina in 2008:'''[[Stiri Ro/Haskell]]
 
'''Stirile din 2009:''' [[Stiri Ro/Haskell-2009]]
 
 
'''Stirea lunii:''' Incepem sa pregatim raportul stiintific (mai 2009) al comunitatii Ro/Haskell. Toti cei care lucreaza cu Haskell in Romania sau folosesc acest limbaj si utilizeaza acest site sunt asteptati cu scurte note pe e-mail despre proiectele la care folosesc Haskell. Publicare cu ecou international in HCAR - mai - 2009.
 
 
Voi incerca sa fac intai o pagina web cu stirile respective, [[Stiri Ro/HCAR-mai-2009]]. Adresa de mail unde le puteti trimite este cea a lui DanVPopa de pe serverele domeniul ub.ro(un) sau la popavdan pe serverele Yahoo din domeniul com(un). Dintr-o eroare adresa de pe Yahoo a aparut cu danvpopa ceea ce este, repetam, incorect. Rog retrimiteti mesajele despre activitatea comunitatii la adresa corecta.
 
 
</center>
 
 
Cuprinsul paginii Ro/Haskell:
 
Cuprinsul paginii Ro/Haskell:
 
<br>
 
<br>
<center>
 
 
{| border=0 cellspacing=5 cellpadding=15
 
{| border=0 cellspacing=5 cellpadding=15
 
| valign=top bgcolor=#F0F0F0 style="text-align:left" |
 
| valign=top bgcolor=#F0F0F0 style="text-align:left" |
   
   
  +
==Știri==
==. Stiri Ro/Haskell ==
 
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2014<br>
Prima pagina de stiri a grupului Ro/Haskell este aici:[[Stiri Ro/Haskell]]. Vor ramane probabil doar ultimele stiri la inceputul paginii principale. Daca va intereseaza limbajul Haskell si nu activitatea comunitatii cititi paragrafele urmatoare. (Nota: link-urile rosii sunt catre pagini in constructie, nu va mai obositi sa dati click pe ele.)
 
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2013<br>
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2012<br>
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2011<br>
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2010<br>
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2009<br>
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2008<br>
  +
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2007<br>
   
  +
==Aventura lansării comunității Ro/Haskell==
Vom grupa stirile pe ani, iar la nevoie chiar pe luni, in pagini separate.
 
  +
Începuturile folosirii limbajului Haskell în Romania numai zile ușoare și simple n-au fost. Citiți [[Aventura lansarii comunitatii Ro/Haskell]].
'''Stirile pina in 2008:'''[[Stiri Ro/Haskell]]
 
'''Stirile din 2009:''' [[Stiri Ro/Haskell-2009]]
 
   
  +
==Introducere==
In curand vom lansa si o pagina cu anunturi de congrese si simpozioane la care sunt invitati membrii comunitatii si utilizatorii de Haskell. [[Stiri Ro/Congrese]]
 
  +
Un răspuns la întrebarea „Ce este Haskell și la ce ne-a folosit și ne foloseste el?” găsiți pe pagina [[Ro/Haskell/Introducere]]. Ultima carte introductivă aparută: [[O mica introducere in Haskell 98]]. Precedenta carte introductivă aparută: [[Introducere in Haskell 98 prin exemple]].
   
  +
==Despre Haskell dorim să prezentam... (Hoogle și nu numai)==
==. Aventura lansarii comunitatii Ro/Haskell ==
 
Inceputurile folosirii limbajului Haskell in Romania numai zile usoare si simple n-au fost. Cititi [[Aventura lansarii comunitatii Ro/Haskell]].
 
   
==. Introducere ==
 
Haskell este un limbaj de uz general, din categoria limbajelor functionale pure (fara instructiuni imperative sau producatoare de efecte laterale). Foloseste Lazy Evaluation. Beneficiaza de un sistem de tipuri revolutionar, cu [[Tipuri polimorfice]] si [[Clase de tipuri]]. Permite programarea cu clase si instante de clase defiinite utilizator, clasele fiind multimi de structuri algebrice (adica mai mult decat multimi de obiecte).
 
   
  +
* [https://wiki.haskell.org/wikiupload/9/97/De_ce_Haskell.pdf De ce Haskell?] - o prezentare a limbajului Haskell din punctul de vedere al unui specialist în limbaje formale. Este un capitol dintr-o carte de Dan Popa;
Haskell permite nu numai sa ''scrii'' algoritmi ci sa si '''MANIPULEZI algoritmi''' - totul sub un control riguros al tipizarii inaccesibil in LISP. Doriti sa sumati sau sa integrati o functie ... banal. Exista un capitol din [[Introducere in Haskell 98 prin exemple]]disponibil printre acele [[Capitole de manual]]. Doriti sa gasiti optimul unei functii oarecare ? Se rezolva. Un algoritm genetic cauta optimul altui proces ? Simplu de realizat. Doriti sa combinati semnificatiile unor fragmente de limbaj pentru a scrie un compilator sau interpretor ? Nimic mai simplu. Uitati-va la [[Proiecte]] si vedeti cum se scrie un soi de LISP pe nume Scheme in 48 de ore ([http://halogen.note.amherst.edu/~jdtang/scheme_in_48/tutorial/overview.html Scheme in 48 de ore - tutorial.]). In Pascal ati fi scris programe: In Haskell manipulati programe, operati cu programe, combinati programe, scrieti generatoare de programe sau optimizatoare de functii/programe. Un program de Inteligenta artificiala combina comportamente simple intr-unul complex, inteligent ? Se programeaza in Haskell.
 
Si lista ar putea continua... Exista cel putin 37 de motive pentru a folosi Haskell ([[Ro/Haskell/MotiveProHaskell]]), in paginile web de limba engleza.
 
   
  +
* [https://wiki.haskell.org/Întrebarile_incepatorului Întrebările începătorului] - pentru cei care aud prima oară de Haskell;
Haskell este DEOSEBIT: El are o sintaxa bidimensionala (bazata pe notiunea de Layout) asa ca simpla aliniere corecta pe verticala va scuteste de paranteze ! Iar daca puneti un spatiu in PLUS nu e o greseala. Sintaxa bidimensionala face programele mult mai clare decat echivalentele lor in LISP (netipizat si cu multe paranteze: LISP = Limbajul InSuportabilelor Paranteze) sau cele in Scheme ori ML. Alte plusuri sunt tipizarea stricta, existenta [[monade]]lor si a do-notatiei (o scriere cvasi imperativa posibila intr-un limbaj functional pur) precum si existenta listelor infinite si a "multimilor ordonate" definite descriptiv, numite in manualele de Haskell (in limba engleza) "list comprehensions".
 
   
  +
* Sintaxa și semantica limbajului Haskell împreună cu structurile sale de date și funcții, disponibile de la început (fără să le mai definiti dvs.) - [[liste]], [[arbori]], [[monade]], [[clase]] - sunt în marea lor majoritate gândite astfel încât să semene cu notațiile matematice. De fapt, sunt chiar notații matematice direct implementabile în calculator. Acest lucru a dat naștere la o pleiadă de lucrări știintifice scrise direct în „literate Haskell”. Aceste lucrari sunt simultan și:
Productivitatea programarii in Haskell este net superioara altor limbaje, un algoritm [[Quicksort]] scriindu-se in doar 3-4 linii de program nu in 30-40 ca in C sau C++. Dati un click pe link-ul [[Quicksort]] pentru a-l vedea.
 
   
  +
** articole de matematică superioară, de teoria categoriilor, a tipurilor, a limbajelor ș.a.m.d.;
Unul din motivele pentru care Haskell este atat de productiv este posibilitatea de a lucra cu functii de nivel superior, polimorfice, operand inclusiv pe structuri de date definite inductiv. Acele structuri de date beneficiaza de functii de afisare si comparare (si nu numai) generate automat prin "deriving" ori definite de utilizator.
 
  +
** și programe de calculator cu extensia [[.lhs]],
  +
deci pot fi rulate ca atare.
   
  +
În realitate, Haskell-ul oferă o oportunitate simultană de a face cercetare, teorie, lucrări știintifice și programe, aproape concomitent. În plus, datorită puternicului sistem de inferențe de tipuri, Hakell-ul va fi ca un asistent care vă verifică - atât cât poate - corectitudinea a ceea ce realizați.
V-ati batut capul nu o data sa rescrieti rutinele de afisare ale unor structuri de date compuse (liste de arbori cu noduri perechi de ... samd) care se schimbau pe masura ce dezvoltati proiectul ? Ati refacut mereu functiile de comparatie pentru astfel de structuri de date compuse ? Folositi Haskell si adaugati declaratiilor de date "deriving Show" respectiv "deriving Eq" (Iar lista nu se opreste aici.) Haskell face automat restul si tipul nou creat capata din clipa declararii functiile de afisare sau comparare ce-i sunt necesare fara sa le scrieti dumneavoastra ! Dar le puteti rescrie daca nu va plac.
 
  +
Iar Haskell-ul, fiind un limbaj funcțional care permite scrierea de funcții de nivel înalt, veți putea lucra în abstract dacă doriți, rămânând totodată cu picioarele pe pământul practicii programării și al viitoarelor finanțări (deoarece de plătit se plătește mai des pentru proiecte concrete decât pentru teorie neaplicată).
   
  +
* [[Capitole de manual]]. Atenție, unele versiuni de Acrobat Reader (din seria 5) au avut probleme de securitate, conform revistelor de Linux. În asemenea situații vă sugerăm să optați mai bine pentru cărțile tipărite!
Exista o multime de compilatoare si interpretoare pentru Haskell si sunt disponibile gratuit. Hugs e un interpretor bun pentru primele lectii de Haskell. GHC este un compilator pentru proiecte profesionale. Cititi va rog si paragraful despre: Interpretoare si compilatoare de Haskell disponibile, tot pe aceasta pagina.
 
   
  +
* [https://haskell.org/hoogle Hoogle], „motorul de cautare” pentru funcții Haskell din diversele biblioteci se afla aici, la https://haskell.org/hoogle. Folosiți [https://haskell.org/hoogle Hoogle] pentru a învăța despre noi funcții de bibliotecă și pentru a descifra programe. <br>
Apropos: Daca va intereseaza teoria automatelor si limbajelor formale sau metode de transcriere a structurilor de date dintr-un format in altul, Haskell este un instrument excelent. Un translator de la o sintaxa la alta se scrie uimitor de repede, in cateva ore. Ba chiar si un mic limbaj de programare cum este Limbajul Pseudocod [[Rodin]]. Dar nu uitati mai inainte sa cititi ceva despre teoria limbajelor formale. Capitolul dedicat gramaticilor de tip 2 (Context Free Grammmars) din ierarhia lui Chomsky in primul rand dar si celelalte lucrari ale lui Noam Chomsky. Apropos de gramaticile lui Chomsky, bibliotecile de combinatori de parsere scrise in Haskell sunt mai puternice decat gramaticile independente de context, deoarece combinatorii de parsere sunt functii cu parametri. De exemplu limbajul "a la n, b la n, c la n" cat si limbajul cuvintelor duplicate pot fi usor acceptate de parsere create folosind combinatorii de parsere. Si sunt si imediat implementabile ca programe in Haskell. (Cititi din bibliografia din rubrica Mini-[[Biblioteca]].)
 
  +
[[File:Hoogle_logo.png|link=https://hoogle.haskell.org/]] <br> Puteți căuta atât după denumirea funcției, cât și după tipul acesteia. Exemple: cautati „[https://hoogle.haskell.org/?hoogle=map map]” sau „[https://hoogle.haskell.org/?hoogle=(a%20-%3E%20b)%20-%3E%20%5Ba%5D%20-%3E%20%5Bb%5D <nowiki>(a -> b) -> [a] -> [b]</nowiki>]”, ori, de ce nu, chiar tipuri cu precondiții (exemplu: „[https://hoogle.haskell.org/?hoogle=Ord%20a%20%3D%3E%20%5Ba%5D%20-%3E%20%5Ba%5D <nowiki>Ord a => [a] -> [a]</nowiki>]”). Din păcate, rezultatele sunt în engleză. :(
   
  +
==Umor, glume și anecdote despre Haskell==
  +
* Haskell a fost anunțat pe 1 aprilie, iar acest lucru nu a fost intenționat. De atunci, comunitatea Haskell cultivă un umor savuros, iar ocazional, la 1 aprilie, alternează adesea știrile serioase cu mesaje pline de umor. Vedeți și paginile de umor în limba engleză de pe https://wiki.haskell.org.
   
  +
* O serie de anecdote sau elemente mai greu de demonstrat, dar de altfel vizibile pentru cititorul avizat, circulă pe seama limbajului Haskell. Ocazional apar și în carti sau cursuri, testând atenția cititorilor/ascultătorilor. [[Anecdote si afirmatii hazlii]].
==. Despre Haskell dorim sa prezentam...(Hoogle si nu numai) ==
 
* [http://www.haskell.org/sitewiki/images/9/97/De_ce_Haskell.pdf De ce Haskell ?]O prezentare a limbajului Haskell din punctul de vedere al unui specialist in Limbaje Formale. Este un capitol dintr-o carte de Dan Popa. http://www.haskell.org/sitewiki/images/9/97/De_ce_Haskell.pdf - download "De ce Haskell ?"]
 
   
  +
* Un alt fel de umor despre Haskell îl constituie umorul involuntar. De exemplu, o discuție despre interpretoarele limbajelor - lucru pe care interlocutorul din exemplul urmator nu l-a înțeles - se poate transforma intr-un [[savuros dialog]] de genul „vorbesc împreună și se înțeleg separat”.
* [[ Intrebarile incepatorului ]] - pentru cei care aud prima oara de Haskell
 
   
  +
* Pe pagina cu [https://wiki.haskell.org/Întrebarile_incepatorului Întrebările începătorului] am adăugat între întrebările privitoare la I/O o povestire despre un discipol în ale Haskell-ului iluminat în momentul în care a aflat cum e definita funcția „print”. Vă las s-o descoperiți pe cont propriu.
* [[Capitole de manual]]. Atentie, unele versiuni de Acrobat Reader (din seria 5) au avut probleme de securitate, conform revistelor de Linux. In asemenea situatii va sugeram sa optati mai bine pentru cartile tiparite !
 
   
  +
* Programați și zâmbiți! Unele moduri de a scrie programe sau simple expresii în Haskell sunt atât de amuzante încât merită o rubrică separată. De fapt, sunt o dovadă a flexibilității limbajului.
* [http://haskell.org/hoogle Hoogle,"Motorul de cautare" pentru functii Haskell din diversele biblioteci se afla aici, la http://haskell.org/hoogle.] Folositi [http://haskell.org/hoogle Hoogle] pentru a invata despre noi functii de biblioteca si pentru a descifra programe. <br> http://www.haskell.org/hoogle/res/hoogle_large.png <br> Puteti cauta atat dupa denumirea functiei cat si dupa tipul acesteia. Exemple: cautati "map" sau "(a -> b) -> [a] -> [b]" ori, de ce nu, chiar tipuri cu preconditii "Ord a => [a] -> [a]". Rezultatele sunt in engleza :(
 
   
  +
* Despre Haskell se afirmă că asigură un nivel înalt de calitate și de securitate a programelor. Am adaugat o glumă despre controlul de calitate a cărei morală este că nu e de ajuns să certifici calitatea, ci mai întâi trebuie să o obții, să o produci: [[Calitatea si inspectorul cozonacilor]].
==. Umor glume si anecdote despre Haskell ==
 
* Haskell a fost anuntat pe 1 aprilie iar acest lucru nu a fost intentionat. De atunci comunitatea Haskell cultiva un umor savuros, iar ocazional, la 1 aprilie alterneaza adesea stirile serioase cu mesaje pline de umor.Vedeti si paginile de umor in limba engleza de pe http://www.haskell.org.
 
   
  +
==Laboratorul de construcție a limbajelor==
* O serie de anecdote sau elemente mai greu de demonstrat dar de altfel vizibile pentru cititorul avizat circula pe seama limbajului Haskell. Ocazional apar si in carti sau cursuri, testand atentia cititorilor / ascultatorilor. [[Anecdote si afirmatii hazlii]].
 
  +
Accesați laboratorul de construcție al limbajelor, locul de unde veți putea descărca limbaje de programare produse de persoane din grupul Ro/Haskell și de comunitatea Haskell în general. [[Laboratorul de Limbaje]] (pagină în pregătire)
   
  +
Aici am mutat informațiile despre construcția limbajelor: [[Laboratorul de Limbaje]]. Vedeți și noua pagină: [[ADFA]].
* Alt fel de umor despre Haskell il constitue umorul involuntar. De exemplu o discutie despre interpretoarele limbajelor - lucru pe care interlocutorul din exemplul urmator nu l-a inteles - se poate transforma intr-un [[savuros dialog]] de genul "vorbesc impreuna si se inteleg separat".
 
   
  +
==Interpretoare, compilatoare și editoare disponibile - pagini în engleză==
* Pe pagina cu [[Intrebarile incepatorului]] am adaugat intre intrebarile privitoare la IO o povestire despre un discipol in ale Haskell-ului iluminat in momentul in care a aflat cum e definita functia ''print''. Va las s-o descoperiti.
 
  +
Există o mulțime de compilatoare și interpretoare pentru Haskell și sunt disponibile gratuit: Hugs (interpretor), GHC (compilator), Hellium (mediu de instruire) și altele. O serie de distributii Linux includ interpretorul Hugs (ex: Mandrake 10.0), altele îl oferă pentru download de pe site-ul distribuției (ex: PC Linux OS 9). Unele permit instalarea imediată a interpretorului sau compilatorului de Haskell (ex: Suse 9.x funcționează cu cele doua binare din distributia Mandrake 10.0). Iar lista nu se opreste aici. Mediul de dezvoltare Kdevelopment permite și realizarea de proiecte în Haskell (are chiar sablon de proiect inclus, pregatit) dar nu uitati să instalati compilatorul GHC. Versiuni de WinHugs sunt de asemenea disponibile pe platforma Windows. Compilatorul Haskell GHC poate, cu ajutorul unui plug-in special să lucreze împreună cu mediul de dezvoltare [https://www.eclipse.org Eclipse]! Nici Visual Studio nu e uitat, exista versiuni în care se poate lucra cu Haskell. Un instrument util lansat recent este [https://www.haskell.org/visualhaskell/Visual Haskell], dar din pacate se pare ca funcționează doar cu edițiile comerciale ale Visual Studio. Testele făcute cu Visual Studio din kit-ul gratuit, distribuibil (A. R. Kit) n-au dus la niciun succes. Motivul tehnic este probabil lipsa suportului pentru plugin-uri din ediția limitata a A. R. Kit. Iar Visual Haskell este văzut ca un plug-in Visual Studio.
   
  +
'''EDIT''': La momentul scrierii (30 septembrie 2021), situația este mai bună decât este descrisă în paragraful anterior (păstrat ca o capsulă care ilustrează obstacolele întâmpinate de programatorii vechi de Haskell). Există acum câteva editoare de text care pot fi configurate pentru a facilita programarea în Haskell. Pentru Linux, se poate folosi [http://www.scintilla.org/SciTE.html SciTE] împreună cu [https://wiki.haskell.org/Tips_for_using_SciTE_with_Haskell aceste sfaturi] (în engleză). Pentru Windows, se poate folosi ori [http://www.textpad.com/ Textpad], ori [http://notepad-plus.sourceforge.net/ Notepad++], iar pentru macOS există [http://www.codingmonkeys.de/subethaedit/ SubEthaEdit], [https://macromates.com/ TextMate], [http://www.barebones.com/products/bbedit/ BBEdit] și [http://www.barebones.com/products/textwrangler/ TextWrangler]. Cele mai bune soluții totuși la capitolul editoare de text se află în editoarele cross-platform (multi-platformă). Printre ele enumerăm: [https://www.vim.org/ Vim] cu [https://www.vim.org/scripts/script.php?script_id=2356 Superior Haskell Interaction Mode], [https://www.gnu.org/software/emacs/ Emacs] (vedeți [https://wiki.haskell.org/Emacs această] pagină în engleză), [https://www.geany.org/ Geany], [http://www.sublimetext.com/ Sublime Text], [https://code.visualstudio.com/ Visual Studio Code] cu extensia Haskell (puteți vedea [https://www.reddit.com/r/haskell/comments/5yc7e0/have_you_tried_visual_studio_code_for_coding/ și] [https://marketplace.visualstudio.com/search?term=Haskell&target=VSCode&category=Programming%20Languages&sortBy=Relevance aceste] [https://medium.com/@dogwith1eye/setting-up-haskell-in-vs-code-on-macos-d2cc1ce9f60a pagini]), [https://kate-editor.org/ Kate], [https://atom.io/ Atom], [https://wiki.haskell.org/Yi Yi] (dezvoltat în Haskell, dar cu foarte puține facilități momentan) ș.a.m.d. Pentru proiectul [[Rodin]] este recomandat (momentan) editorul Total Edit. Aceste editoare de text pot să funcționeze oarecum ca un IDE (mediu de dezvoltare, engl. Integrated Development Environment), dar dacă se dorește un IDE adevărat? Există soluții și în acest caz. Pentru macOS există un IDE comercial numit [http://haskellformac.com/ Haskell for Mac], necesită OS X Yosemite sau mai sus. Dacă se dorește ceva open-source, se poate instala plugin de Haskell pentru produsele IntelliJ ([https://github.com/rikvdkleij/intellij-haskell aici]) sau, dacă aveți NixOS, puteți instala [http://leksah.org/ Leksah]. În 2020, s-a lansat [https://wiki.haskell.org/Haskell-language-server Haskell Language Server] care permite oricărui editor precum cele descrise anterior să aibă funcții tip IDE pentru Haskell. Instrucțiunile de instalare se află [https://github.com/haskell/haskell-language-server#configuring-your-editor aici]. Au existat câteva plugin-uri care sunt acum depreciate, precum Visual Haskell pentru Visual Studio, plugin-urile EclipseFP și Colorer pentru Eclipse, plugin-ul pentru XCode (pe macOS) etc. Au existat și alte IDE-uri acum inactive precum [https://wiki.haskell.org/Haste haste] (care a fost un IDE pentru Haskell scris în Haskell), [http://web.archive.org/web/20140715033114/https://www.cs.kent.ac.uk/projects/vital/ Vital] și [https://www.fpcomplete.com/business/haskell-center/overview/ FP Haskell Center].
* [[Programati si zambiti !]] Unele moduri de a scrie programe sau simple expresii in Haskell sunt atat de amuzante incat merita o rubrica separata. De fapt sunt o dovada a flexibilitatii limbajului.
 
   
  +
'''Concluzia''': dacă vreți să programați în Haskell, cel mai bine configurați un editor de text (Vim, Emacs, VS Code, Atom, Sublime Text, Notepad++, SciTe etc.) sau dacă sunteți pe macOS, puteți să încercați Haskell for Mac.
   
  +
Pentru compilatoare și interpretoare de Haskell 2010, există [https://wiki.haskell.org/GHC GHC] (Glasgow Haskell Compiler) care este compilatorul de facto pentru Haskell. Este disponibil pe majoritatea platformelor comune. Se recomandă a se folosi [https://www.haskell.org/platform/ Haskell Platform] pentru a se instala GHC împreună cu [http://www.haskell.org/cabal/ Cabal] și [http://docs.haskellstack.org/ Stack] pe Windows, macOS și Linux. Pe macOS există și Haskell for Mac, menționat mai sus. Printre compilatoare de Haskell 2010 se numără [https://wiki.haskell.org/UHC UHC] (Utrecht Haskell Compiler) și [https://github.com/Lemmih/lhc LHC] (LLVM Haskell Compiler). În cazul Haskell 98, avem [http://repetae.net/computer/jhc/ JHC] și [http://foswiki.cs.uu.nl/foswiki/Helium Helium], făcut special pentru a preda Haskell (și în consecință oferă erori mult mai informative decât cu celelalte compilatoare disponibile). Mai există alte compilere de Haskell 98, dar nu mai sunt menținute, precum [https://wiki.haskell.org/Hugs Hugs] (un interpretor mic și portabil de Haskell făcut în C, rulează pe orice mașină și are o viteză mare de interpretare, dar performanța nu se compară cu GHC de exemplu), [https://wiki.haskell.org/Yhc YHC] (York Haskell Compiler) și [https://www.haskell.org/nhc98/ nhc98].
* Despre Haskell se afirma ca asigura un nivel inalt de calitate si de securitate a programelor. Am adaugat o gluma despre controlul de calitate a carei morala este ca nu e de ajuns sa certifici calitatea, trebui mai intai sa o obtii, sa o produci: [[Calitatea si inspectorul cozonacilor]].
 
   
  +
==Lucrări în limba română, cronologic==
==. Laboratorul de Constructie a Limbajelor ==
 
Accesati laboratorul de constructie al limbajelor, locul de unde veti putea descarca limbaje de programare produse de persoane din grupul Ro/Haskell si de comunitatea Haskell in general. [[Laboratorul de Limbaje]] .Pagina in pregatire.
 
Aici am mutat informatiile despre constructia limbajelor: [[Laboratorul de Limbaje]].
 
   
  +
'''2005''':
  +
* Realizarea Interpretoarelor Adaptabile în limbajul Haskell 98 - articol de Dan Popa prezentat la Simpozionul International al Tinerilor Cercetatori ed. 2005, Chișinău, Republica Moldova (21-22 aprilie 2005)
   
  +
* Cum puteți scrie un mic asamblor adaptabil în Haskell 98: [https://wiki.haskell.org/wikiupload/2/2f/Cap8-nou-Assembler.pdf Popa, Dan; An assembler in a nutshell ] - Proceedings of the 30th annual Congress of The American-Romanian Academy of Art and Sciences (ARA), Academia de Studii Economice din Moldova, 2005, p. 196-198 x 2 coloane, ISBN 9975-75-313-2
==. Interpretoare si compilatoare disponibile - pagini in engleza ==
 
Exista o multime de compilatoare si interpretoare pentru Haskell si sunt disponibile gratuit: Hugs (interpretor), GHC (compilator), Hellium (mediu de instruire) si altele. O serie de distributii Linux includ interpretorul Hugs (ex: Mandrake 10.0), altele il ofera pentru download de pe site-ul distributiei (ex: PC Linux OS 9). Unele permit instalarea imediata a interpretorului sau compilatorului de Haskell (ex: Suse 9.x functioneaza cu cele doua binare din distributia Mandrake 10.0).Iar lista nu se opreste aici. Mediul de dezvoltare Kdevelopment permite si realizarea de proiecte in Haskell (are chiar sablon de proiect inclus, pregatit) dar nu uitati sa instalati compilatorul GHC. Versiuni de WinHugs sunt de asemenea disponibile pe platforma Windows. Compilatorul Haskell GHC poate, cu ajutorul unui plug-in special sa lucreze impreuna cu mediul de dezvoltare [http://www.eclipse.org ECLIPSE ]! Nici Visual Studio-ul nu e uitat, exista versiuni in care se poate lucra cu Hasekll. [http://www.haskell.org/visualhaskell/ Un instrument util lansat recent este Visual Haskell] Dar din pacate se pare ca functioneaza doar cu editiile comerciale ale Visual Studio. Testele facute cu Visual Studio din kitul gratuit, distribuibil (A.R.Kit) n-au dus la nici un succes. Motivul tehnic este probabil lipsa suportului pentru plugin-uri din editia limitata a A.R.Kit. Iar Visual Haskell este vazut ca un plug-in Visual Studio. Concluzia: Cautati Eclipse a carei versiune (3.0 ?) avea un plugin pentru GHC. Sau folositi XEmacs ?
 
   
  +
Versiunea în limba română a lucrării, în format de capitol de carte. Bibliografia nu este inclusă, dar noțiunile folosite sunt noțiuni fundamentale de teoria categoriilor care pot fi găsite în orice carte de teoria categoriilor.
==. Download Haskell software, gratis (Compiler & Interpreter For Free) ==
 
* [http://haskell.org/hugs Hugs] <- Download Hugs (2006 apoi urmatoarele ...)
 
* [http://haskell.org/ghc GHC] <- Download GHC (licenta BSD)
 
* [[Yhc]]
 
* [[Helium]] <- Mai vedem daca-l recomandam...
 
Puteti descarca software si de pe pagina cu software din site-ul de prezentare a cartii "The Haskell School Of Expression" [http://haskell.cs.yale.edu/soe/software.htm - Pagina cu link-uri de download.]
 
* Kdevelop de sub Linux poate functiona de asemenea impreuna cu cu GHC.
 
Iar daca va intereseaza sa descarcati software HDBC-ODBC pentru Windows incercati aceasta [http://www.haskell.org/haskellwiki/HDBC-ODBC_under_Windows pagina cu instructiuni] (in engleza).
 
   
  +
'''2006''':
  +
* Descărcați slide-urile lucrării [https://wiki.haskell.org/wikiupload/5/54/Building_an_interpreter.pdf „Cum să construiesti un interpretor adaptabil intr-o singura zi!”] de Dan Popa, de la Universitatea Bacău care descrie pas cu pas cum se poate construi un interpretor pentru un mic while-language în Haskell.Autorul a folosit în experimente versiunea Hugs din distributia Mandriva Linux 10.0. Lucrarea a fost prezentată la Conferinta ICMI 45. Slide-urile lucrarii sunt în format PDF cu titluri în engleză, dar au comentariile în limba română. O variantă a lucrarii, tradusă în limba engleză, este acum disponibilă [https://wiki.haskell.org/wikiupload/c/c6/ICMI45-paper-en.pdf aici]. Deoarece nu a fost inclusa în volumul oficial ICMI45 (din vina responsabilului de număr), ea va fi republicată. Poate fi descărcată de [https://wiki.haskell.org/wikiupload/c/c6/ICMI45-paper-en.pdf aici].
   
  +
'''2008''':
==. Lucrari in limba romana, cronologic==
 
  +
* O prezentare PDF numită „Evaluare Modulară și Interpretare folosind Monade și Clase de Tipuri” a fost acceptată pentru secțiunea Functional Grit de la Anglo Haskell 2008. Se poate găsi [https://wiki.haskell.org/wikiupload/1/1d/Prezentare-Anglo-Haskell-2008-draft2-more-slides.pdf aici] în engleză. Titlul tradus: Modular Evaluation and Interpreters Using Monads and Type Classes by Dan Popa.
2005
 
*Realizarea Interpretoarelor Adaptabile in limbajul Haskell 98 - articol de Dan Popa prezentat la Simpozionul International al Tinerilor Cercetatori ed. 2005, Chisinau, Republica Moldova (21-22 aprilie 2005).[http://www.ase.md/cartea/index.php?page=activitateastiintifica - o poza si date despre organizatori se afla aici]
 
   
  +
'''2010''':
*Cum puteti scrie un mic asamblor adaptabil in Haskell 98:[http://www.haskell.org/sitewiki/images/2/2f/Cap8-nou-Assembler.pdf Popa, Dan; An assembler in a nutshell ] - Proceedings of the 30th annual Congress of The American-Romanian <br> Academy of Art and Sciences (ARA), Academia de Studii Economice din Moldova,<br> 2005, p. 196-198 x 2 coloane, ISBN 9975-75-313-2 Versiunea in limba romana a lucrarii, in format de capitol de carte. Bibliografia nu este inclusa dar notiunile <br> folosite sunt notiuni fundamentale de teoria categoriilor care pot fi gasite <br> in orice carte de Teoria Categoriilor.
 
  +
* Dan Popa, Combinatorii de analizoare sintactice – instrumentele lingviștilor pentru învăţarea asistată de calculator a limbilor străine se poate descarca de [File:http://wiki.haskell.org/wikiupload/9/96/Combinators.pdf|aici] Lucrarea a fost prezentată la Colocviul Plurilingvism și interculturalitate din 26 februarie 2010 organizat de Catedra de limba și literatura română și Grupul de cercetare interdisciplinară LOGOS, Facultatea de Litere, Universitatea „Vasile Alecsandri” din Bacău. [http://www.ub.ro/ubub/servicii/arhiva/109-colocviul-naional-cu-participare-internaional.html Programul manifestării] sau [http://www.ub.ro/ubub/images/stories/documente/Program.pdf programul manifestării in format .PDF].
   
  +
'''2011-prezent''':
2006
 
* Descarcati slide-urile lucrarii [http://www.haskell.org/sitewiki/images/5/54/Building_an_interpreter.pdf "Cum sa construiesti un interpretor adaptabil intr-o singura zi!" de Dan Popa], de la Universitatea Bacau care descrie pas cu pas cum se poate<br> construi un interpretor pentru un mic while-language in Haskell.Autorul a <br> folosit in experimente versiunea Hugs din distributia Mandriva Linux 10.0. <br> Lucrarea a fost prezentata la Conferinta ICMI 45. [http://www.haskell.org/sitewiki/images/5/54/Building_an_interpreter.pdf Slide-urile lucrarii sunt in format pdf cu titluri in engleza dar au comentariile in limba romana.] O varianta a lucrarii, tradusa in limba engleza, este [http://www.haskell.org/haskellwiki/Image:ICMI45-paper-en.pdf acum disponibila aici.] Deoarece nu a fost inclusa in volumul oficial ICMI45 (din vina responsabilului de numar), ea va fi republicata.[http://www.haskell.org/sitewiki/images/c/c6/ICMI45-paper-en.pdf Download (pdf).]
 
   
  +
To be continued. Vedeți și homepage-ul realizatorului [[User:Ha$kell]]
2007,2008
 
* Lista ramane deschisa ... si deocamdata neactualizata. Oricum exista si mai multe lucrari despre Haskell ca in anul precedent. Le puteti gasi folosind un motor de cautare.
 
* O prezentare pdf numita "Evaloare Modulara si Interpretoare folosind Monade si Clase de Tipuri" a fost acceptata pentru sectiunea Functional Grit de la Anglo Haskell 2008. Titlul tradus: [[Modular Evaluation and Interpreters Using Monads and Type Classes by Dan Popa]].
 
   
  +
==Cărți publicate în limba română==
   
  +
Căutați cărți despre Haskell în limba româna? Sau doriți să consultați biblioteca on-line a autorilor din grupul Ro/Haskell? Dați un click pe: [[Carti publicate in limba romana]] sau pe [[Capitole de manual]]. În cursul lunii octombrie 2008 a aparut [[ Practica interpretarii monadice ]].
==. Carti publicate in limba romana==
 
   
  +
==Carti în pregătire în limba română==
Cautati carti despre Haskell in limba romana ? Sau doriti sa consultati biblioteca on-line a autorilor din grupul Ro/Haskell ? Dati un click pe: [[Carti publicate in limba romana]] sau pe [[Capitole de manual]]. In cursul lunii octombrie va apare [[ Practica interpretarii monadice ]], am contactat editorul, considerati-o ca si publicata.
 
   
  +
* „Translatoare scrise în Haskell 98 pentru securizarea sistemelor on-line”
==. Carti in pregatire in limba romana==
 
  +
Găsiți în secțiunea [[Capitole de manual]] a site-ului părți din draft-ul unui manual despre Haskell pe care am sperat să le includ intr-un volum despre scrierea unor translatoare utile în securizarea sistemelor on-line. Utilizați-le ca un set de lecții de inițiere în Haskell, deși unele capitole necesare (monade, I/O etc) nu sunt incluse. În final am inclus o parte din ele în volumul „[[Introducere in Haskell 98 prin exemple]]”.
 
* "Translatoare scrise in Haskell 98 pentru securizarea sistemelor on-line"
 
Gasiti in sectiunea [[Capitole de manual]] a site-ului parti din DRAFT-ul unui manual despre Haskell pe care am sperat sa le includ intr-un volum despre scrierea unor translatoare utile in securizarea sistemelor on-line. Utilizati-le ca un set de lectii de initiere in Haskell desi unele capitole necesare (monade , I/O etc) nu sunt incluse. In final am inclus o parte din ele in volumul "Introducere in Haskell 98 prin exemple".
 
 
 
* "O introducere agreabila in Haskell" - traducerea celebrului [http://haskell.org/tutorial/haskell-98-tutorial.pdf "A Gentle Introduction In Haskell ] - o lucrare clasica pe care incercam sa v-o oferim in traducere.
+
* „O introducere agreabil în Haskell” - traducerea celebrului [https://haskell.org/tutorial/haskell-98-tutorial.pdf „A Gentle Introduction In Haskell”] - o lucrare clasică pe care încercam v-o oferim în traducere.
Daca stiti limba franceza mai bine decat limba engleza descarcati versiunea de [http://www.haskell.org/sitewiki/images/5/5e/GentleFR.pdf aici] produs al unei echipe din grupul Fr/Haskell, document pe care l-am pus in format [http://www.haskell.org/sitewiki/images/5/5e/GentleFR.pdf pdf] dupa o ultima corectura.
+
Dacă știți limba franceză mai bine decât limba engleză, descărcați versiunea de [https://wiki.haskell.org/wikiupload/5/5e/GentleFR.pdf aici], produs al unei echipe din grupul Fr/Haskell, document pe care l-am pus în format [https://wiki.haskell.org/wikiupload/5/5e/GentleFR.pdf PDF] după o ultima corectură.
   
* [[Practica interpretarii monadice]] - Cuprinde lucrari de laborator aferente cursului de Limbaje Formale si Automate de la Universitatea Bacau, extrase din laboratoarele anului curent (si in viitor, ale altor ani). Volumul isi propune sa prezinte practic scrierea unui interpretor pentru un mic while-language in Haskell. Tehnicile prezentate sunt utile de asemenea la citirea / achizitionarea de date cu structuri si substructuri. Nu am mai adaugat: [O mica istorie a prelucrarii datelor]. Cartea este un unicat la nivel MONDIAL mai existand doar vreo 4-5 articole pe aceasta tema - si nici o alta carte - pe glob, la data scrierii acestei note: 18 dec 2009).
+
* [[Practica interpretarii monadice]] - Cuprinde lucrari de laborator aferente cursului de Limbaje Formale și Automate de la Universitatea Bacau, extrase din laboratoarele anului curent (si în viitor, ale altor ani). Volumul își propune prezinte practic scrierea unui interpretor pentru un mic while-language în Haskell. Tehnicile prezentate sunt utile de asemenea la citirea/achiziționarea de date cu structuri și substructuri. Nu am mai adaugat: [[O mica istorie a prelucrarii datelor]]. Cartea este (cel puțin a fost la data apariției) un unicat, la nivel mondial mai existând doar vreo 4-5 articole pe aceasta temă și neexistând nicio altă carte pe glob (la data scrierii acestei note: 18 dec. 2009).
   
* [[ .... ]] Titlu rezervat. O carte despre producerea interpretoarelor si/sau compilatoarelor de limbaje imperative folosind monade si functii pentru combinarea efectelor acestora. Am vrut s-o numesc "Transformers - The Royal Way of Imperative Language Construction" dar nu gasesc un echivalent in limba romana. Va detalia dezvoltarea proiectului Rodin, la care am lucrat in saptamanile precedente (prima jumatate a lui iulie 2008). Date exacte pe pagina proiectului [[Rodin]]. S-ar putea sa se numeasca doar The Power of Transformers sau chiar Transformers.
+
* [[ ... . ]] Titlu rezervat. O carte despre producerea interpretoarelor și/sau compilatoarelor de limbaje imperative folosind monade și funcții pentru combinarea efectelor acestora. Am vrut s-o numesc „Transformers - The Royal Way of Imperative Language Construction”, dar nu găsesc un echivalent în limba română. Va detalia dezvoltarea proiectului Rodin, la care am lucrat în saptamanile precedente (prima jumatate a lui iulie 2008). Date exacte se găsesc pe pagina proiectului [[Rodin]]. S-ar putea se numească doar „The Power of Transformers” sau chiar „[[Transformers]]”. Nu dați click - nu este pagina gata.
   
==. dRaftul personal ==
+
==dRaftul personal==
[[dRaftul personal]] va fi o colectie de carti libere, electronice, pe care sper s-o construim impreuna, din variantele (eventual '''pre-release''') ale cartilor din domeniul stiintelor informatice. Greselile de tipar sunt oferite gratuit. :)
+
[[dRaftul personal]] va fi o colecție de cărți libere, electronice, pe care sper s-o construim împreună, din variantele (eventual '''pre-release''') ale cărților din domeniul stiintelor informatice. Greșelile de tipar sunt oferite gratuit. :) Vedeți și cărțile libere din zona [[User:Ha$kell]].
   
==. Traduceri si ... Voluntariat ;) ==
+
==Traduceri și... voluntariat==
Grupul Ro/Haskell va ofera sansa sa va afirmati ca traducator, ceea ce, (daca sunteti filolog) se considera activitate profesionala. Vedeti [[Proiecte de traduceri]]. Contactati-l pe Dan la adresa de e-mail cunoscuta (e pe site intr-o prezentare .pdf) sau la telefonul cunoscut la Universitate si stabilim detaliile si ... rasplata. Special pentru filologii din grupul de cercetare LOGOS, ar putea face asa ceva cu studentii lor ?
+
Grupul Ro/Haskell va oferă șansa afirmați ca traducator, ceea ce, (dacă sunteți filolog) se consideră activitate profesională. Vedeți [[Proiecte de traduceri]]. Contactați-l pe Dan la adresa de e-mail cunoscută (e pe site într-o prezentare .PDF) sau la telefonul cunoscut la Universitate și stabilim detaliile și... răsplata. Special pentru filologii din grupul de cercetare LOGOS, ar putea face așa ceva cu studenții lor?
   
==. Distributii Linux de Download apreciate ==
+
==Distributii Linux de Download apreciate==
Lista urmatoare nu este nici pe departe completa. [[Distributii Linux de Download apreciate]] de utilizatorii de Haskell. De ce ? Doar insusi Linux-ul este un enorm mediu de programare!
+
Lista următoare nu este nici pe departe completă. [[Distributii Linux de Download apreciate]] de utilizatorii de Haskell. De ce? Doar însuși Linux-ul este un enorm mediu de programare!
   
==. Mini-biblioteca despre Haskell, Hugs,GHC si Limbaje Formale On Line ==
+
==Mini-bibliotecă despre Haskell, Hugs, GHC și limbaje formale online ==
Nici nu va inchipuiati cate materiale exista pe Internet. Voi incerca sa intretin o lista de carti si articole disponibile pe Internet, in format PDF sau macar sa indic pe cele mai valoroase. [[Ro/Haskell/Mini-biblioteca-de-Haskell]]
+
Nici nu închipuiți câte materiale există pe Internet. Voi încerca întrețin o listă de cărți și articole disponibile pe Internet, în format PDF sau măcar indic pe cele mai valoroase. [[Ro/Haskell/Mini-biblioteca-de-Haskell]]
   
  +
==Merită să citiți==
==. Merita sa cititi ==
 
Se spune despre carti ca ajung sa fie citite in intregime destul de rar. Despre o carte se spune ca este buna daca ea contine ceea ce stii deja. Altfel n-o poti aprecia. Asa ca o vei citi, probabil, tot selectiv. [[Ce merita sa cititi]] aflati de aici. Lista va trebui completata, au aparut multe materiale noi.
+
Se spune despre cărți ca ajung fie citite în întregime destul de rar. Despre o carte se spune este bună dacă ea conține ceea ce știi deja. Altfel n-o poți aprecia. Așa o vei citi, probabil, tot selectiv. [[Ce merita sa cititi]] aflați de aici. Lista va trebui completată, au aparut multe materiale noi.
   
  +
==De-ale studenților și întrebarile incepatorului==
==. Mesaje ==
 
  +
Încercăm să reflectam aici probleme cu care se confrunta studenții nostri. Să publicăm un sfat, un exemplu sau orice altceva ce i-ar putea ajuta.
Multumesc tuturor celor care mi-au trimis felicitari si e-mail-uri cu ocazia trecerii in noul an 2008. Vom muta in curand mesajele pe o pagina separata [[Ro/Haskell/Mesaje]]. <- Dati click daca e link albastru.
 
  +
Citiți și: [[ Intrebarile incepatorului ]]
   
  +
Volumul [[Practica interpretarii monadice]] care (împreună cu un istoric al domeniului) și alte capitole a fost prezentat ca teza de doctorat pe 24 noiembrie 2009 va avea o serie de [[Întrebari despre combinatorii de parsere]] pe această pagină separată.
Dan Popa, initiatorul comunitatii Haskell-Ro, doreste tuturor, atat cadrelor didactice care predau sau vor preda limbaje formale, limbaje functionale sau compilatoare folosind Haskell o lectura instructiva si cat mai placuta, mai ales ca acum este deja publicat un prim manual romanesc de Haskell: [http://www.edusoft.ro/detalii.php?id=81 "Introducere in Haskell 98 prin exemple" publicat la EduSoft.] din care va informam ca gasiti pe site [[Capitole de manual]]
 
   
  +
Dacă ați ales cursul optional numit [[Programare functionala]] începeți studiul de aici: [[Programare functionala]]
Drept carte complementara puteti citi cartea domnului M.Gontineac. Contine printre altele o traducere a listei functiilor din Standard Prelude si o serie de exemple de programare imperativa cu operatii de I/O.
 
Nou, disponibil ca e-book pe NET: Gontineac Mihai, ''Programare Functionala'' O introducere utilizand limbajul Haskell - Ed. Alexandru Myller, Iasi a avut candva (pe dienai.ro) o serie de capitole. Acum (oct 2008) este gazduit [http://www.math.uaic.ro/~gonti/Cursuri/ProgramareFunctionala/ProgrFunct.pdf aici datorita domnului profesor Mihai Gontineac] , caruia ii multumim pe aceasta cale. (Atat lui cat si editorului de la Editura Alexandru Myller, Iasi.)
 
   
  +
Dacă sunteți interesați de cursul de Limbaje formale, dați click pe [[Ro/Haskell/Limbaje formale]]. Programa de curs va fi aici.
   
  +
Dacă sunteți interesați de Laboratorul de Limbaje formale dați click pe [[Laboratorul de Limbaje]]. Atenție, este o pagină destinată celor avansați în construcția de limbaje. Ceilalți vor începe prin a citi manualul. Știți zicala: când nimic nu funcționează, ei bine... citește manualul. Laboratoarele din 2006 le-am strans în cartea [[Practica interpretarii monadice]], care a aparut în octombrie 2008. Faceți liste de comenzi pentru ea, pentru a obtine un preț mai bun de la editor.
==. De-ale studentilor si Intrebarile incepatorului==
 
Incercam sa reflectam aici probleme cu care se confrunta studentii nostri.
 
Sa publicam un sfat, un exemplu sau orice altceva ce i-ar putea ajuta.
 
Cititi si: [[ Intrebarile incepatorului ]] <br>
 
----
 
Daca ati ales cursul optional numit [[Programare functionala]] incepeti studiul de aici: [[Programare functionala]]
 
----
 
Daca sunteti interesati de cursul de Limbaje formale dati click pe ... [[Ro/Haskell/Limbaje formale]]. Programa de curs va fi aici.
 
----
 
Daca sunteti interesati de Laboratorul de Limbaje formale dati click pe ... [[Laboratorul de Limbaje]]. Atentie, este o pagina destinata celor avansati in constructia de limbaje. Ceilalti ... vor incepe prin a citi manualul. Stiti zicala - Cand nimic nu functioneaza, ei bine ... citeste manualul. Laboratoarele din 2006 le-am strans in cartea [[Practica interpretarii monadice]], care are ca data de aparitie (prezumata) data de 15 oct 2008. Faceti liste de comenzi pentru ea, pentru a obtine un pret mai bun de la editor.
 
----
 
Daca sunteti interesati de cursul de Tehnici de compilare dati click pe ... [[Ro/Haskell/Tehnici de compilare]]. Programa de curs va fi aici. Pina la aparitia cartii de [[Compilatoare in Haskell]] cititi despre [[Constructia Compilatoarelor Folosind Flex si Bison]]. Scuze ca nu avem mai mult deocamdata.
 
----
 
Daca sunteti interesati de cursul de Arhitectura sistemelor de calcul Linux - iar HUGS si GHC ruleaza si pe Linux dati click pe ... [[Ro/Haskell/Arhitectura sistemelor de calcul Linux]]. Programa de curs va fi aici.
 
----
 
Altele ...
 
   
  +
Dacă sunteți interesați de cursul de Tehnici de compilare dati click pe [[Ro/Haskell/Tehnici de compilare]]. Programa de curs va fi aici. Până la apariția cărții de [[Compilatoare in Haskell]], citiți despre [[Constructia Compilatoarelor Folosind Flex si Bison]]. Scuze că nu avem mai mult deocamdată.
==. Prezentari ==
 
PPT-uri numai bune de vizionat. Dati click daca sunt albastre: [[PPT in ENgleza]], [[PPT in Romana]]. Deocamdata cautati-le la Bazar.[[O colectie de link-uri]] variate, utila intr-o lume in care pina si Google este manipulat prin schimbarea ordinii aparitiei raspunsurilor. Iata si Targul "Link-uri de vara 2008" [[O colectie de link-uri variate - 2008]] Aceasta sectiune de prezentari este in dezvoltare.
 
   
  +
Dacă sunteți interesați de cursul de Arhitectura sistemelor de calcul Linux - iar Hugs și GHC ruleaza și pe Linux, dați click pe... [[Ro/Haskell/Arhitectura sistemelor de calcul Linux]].
==. Ce n-am publicat aici...inca ==
 
   
  +
[[Cum se rateaza un examen]]
La o revizuire a site-ului din vara lui 2007 am gasit ca Ro/Haskell ar putea fi inca imbunatatit. O sumedenie de lucruri ar putea fi adaugate, de la simple explicatii pentru incepatori la colectii de link-uri catre articole si carti celebre pentru avansati. In cazul in care cautati pe Ro/Haskell versiuni romanesti ale unor anumite lucrari sau anumite subiecte uitati-va si pe aceasta pagina, macar sa stiti sa ... nu mai cautati.[[Ce n-am publicat aici...inca]] <br>
 
  +
Altele...
   
  +
==Prezentări==
==. Biblioteci unde am trimis (si gasiti) carti despre Haskell==
 
  +
PPT-uri numai bune de vizionat. Dați click dacă sunt roșii: [[PPT in ENgleza]], [[PPT in Romana]]. Deocamdată căutați-le la Bazar. [[O colectie de link-uri]] variate, utilă într-o lume în care până și Google este manipulat prin schimbarea ordinii apariției răspunsurilor. Iată și Târgul „Link-uri de vara 2008” [[O colectie de link-uri variate - 2008]] Această secțiune de prezentări este în dezvoltare. Vedeți și prezentările din pagina [[User:Ha$kell]].
Deoarece cartile de Haskell s-au publicat in editii mai mici decat cele de C sau C++ va indicam [[Biblioteci]] unde le puteti gasi: Pagina [[Biblioteci]].
 
   
  +
==Ce n-am publicat aici... încă==
==. Firme care folosesc Haskell si doresc sa-si prezinte activitatea ==
 
Dorim sa asiguram prin viitoarea pagina '''Firme''' o legatura intre cei ce folosesc Haskell si cei care invata Haskell. O cautare pe Internet m-a convins ca cererea de programatori de Haskell pentru piata externa este in crestere. Firme mari cum ar fi Ericson angajeaza specialisti in programarea functionala. Iar Nokia a deschide o capacitate de productie la Cluj. ;) Nu stim insa daca va angaja specialisti in Haskell ;)
 
   
  +
La o revizuire a site-ului din vara lui 2007, am gasit ca Ro/Haskell ar putea fi încă îmbunătățit. O sumedenie de lucruri ar putea fi adaugate, de la simple explicații pentru începători la colecții de link-uri catre articole și cărți celebre pentru avansați. În cazul în care căutați pe Ro/Haskell versiuni românești ale unor anumite lucrări sau anumite subiecte, uitați-vă și pe această pagină, macar să știți să... nu mai cautati.[[Ce n-am publicat aici... inca]]
==. Proiecte ==
 
  +
[[Proiecte]] la care participa membri ai comunitatii Ro/Haskell. Pagina in dezvoltare. Deocamdata neactualizata desi proiecte exista. Incepand cu cele ale studentilor ...
 
  +
==Biblioteci unde am trimis (si găsiți) carti despre Haskell==
  +
Deoarece cărțile de Haskell s-au publicat în ediții mai mici decat cele de C sau C++ va indicam [[Biblioteci]] unde le puteti gasi.
  +
  +
==Firme care folosesc Haskell și doresc să-și prezinte activitatea==
  +
Dorim să asiguram prin viitoarea pagina [[Firme]] o legătură intre cei ce folosesc Haskell și cei care învață Haskell. O cautare pe Internet m-a convins ca cererea de programatori de Haskell pentru piața '''externă''' este în crestere. Dar abia de la apariția unor cărți cum este [http://book.realworldhaskell.org/ Real World Haskell] ne așteptăm la o creștere mai rapidă a numărului de aplicații. De asemenea, succesul unor proiecte de 3D Game Design ([[frag]]) a propulsat Haskell-ul și în atentia fabricanților de jocuri video, cu atât mai mult cu cât el poate fi folosit usor la implementarile inteligenței artificiale ale personajelor. (Haskell fiind un urmas al Lisp-ului și ML-ului). Citiți despre proiect și descărcați materialele sale, o carte și un motor de de Quake în surse de pe pagina [[frag]] .
  +
  +
S-a lansat Industrial Haskell Group [https://industry.haskell.org/ https://industry.haskell.org/] cu scopul de a sprijini aplicatiile industriale ale Haskell-ului.
  +
  +
'''UPDATE''': În noiembrie 2008 s-a lansat prima ediție de [http://book.realworldhaskell.org/ Real World Haskell] și se poate citi online la [http://book.realworldhaskell.org/read/ această adresă].
  +
  +
==Proiecte==
  +
[[Proiecte]] la care participă membri ai comunității Ro/Haskell. Pagină în dezvoltare. Deocamdată neactualizată, deși proiecte există. Începand cu cele ale studenților... Vedeti și [[Laboratorul de limbaje]] și [[Ph.D area]] când vor fi gata.
  +
  +
==PhD. area==
  +
O zona dedicată problematicii doctoratelor, indicațiilor de realizare a tezelor și proiectelor ș.a.m.d. Se va numi [[Ph.D area]].
  +
  +
==Research area==
  +
Descoperirea faptului că din 2007-2008 posedăm rezultate de nivel ISI (apreciere prin comparație cu nivelul altor reviste care au publicat pe aceeași temă!) în domeniul Interpretării și Compilarii Monadice, a Construcției Modulare a Limbajelor, a Arborilor Modulari și Semanticilor Monadice Modulare, deja testate prin proiectul [[Rodin]] și oferite spre prezentare la [[AngloHaskell2008]] apoi validate matematic prin publicare - 2009, precum și invitațiile din străinatate și interesul unor [[Firme Europene]] ne-au facut să realizam pagina [[Research area]].
  +
  +
==Avertismente și condiții de folosire==
   
==. Avertismente ==
 
----
 
 
<p class='previewnote'>
 
<p class='previewnote'>
Atentie: Acest site este dedicat comunitatii Haskell, activitatii acesteia, incurajarii folosirii limbajului Haskell si a altor proiecte conexe. In nici un caz si sub nici o forma continutul acestor pagini nu poate fi folosit pentru blocarea activitatii unei persoane, interzicerea unor cursuri, atacarea unei persoane care a publicat stiri reale, hartuire, ostracizare, calomnie si alte metode de atac nejustificat la persoana care pot produce blocaje proiectelor noastre. Stirile sunt verificate si raman in arhiva. Nu mai faceti presiuni pentru stergerea stirilor despre sefii care ne-au pus bete in roate, sunt inutile. Vedeti cazul [[Anexa]]. </p>
+
Atentie: Acest site este dedicat comunității Haskell, activității acesteia, încurajării folosirii limbajului Haskell și a altor proiecte conexe. În niciun caz și sub nicio formă conținutul acestor pagini nu poate fi folosit pentru blocarea activității unei persoane, interzicerea unor cursuri, atacarea unei persoane care a publicat știri reale, hărțuire, ostracizare, calomnie și alte metode de atac nejustificat la persoană care pot produce blocaje proiectelor noastre. Știrile sunt verificate și rămân în arhivă. Nu mai faceți presiuni pentru ștergerea știrilor despre șefii care ne-au pus bețe în roate, sunt inutile. Vedeți cazul [[Anexa]]. </p>
   
  +
<p class='previewnote'>
  +
Atenție: Trimițând articole și date personale pentru publicare pe acest site al comunității Ro/Haskell, acceptați stocarea datelor dvs. pe servere care nu sunt în Uniunea Europeană și nici macar în Eurasia! Accesul la copiile acestui site oferite de alte servicii proxy (diferite de site-ul original [www.haskell.org]) nu vă garantează nici acuratețea conținutului, nici calitatea de 'virus-free' a materialelor. </p>
   
 
<p class='previewnote'>
 
<p class='previewnote'>
  +
Verificați întotdeauna fișierele descărcate: PDF-urile pot conține uneori cod arbitrar, iar fișiere .doc macroviruși. Luați-vă toate măsurile de precauție posibile. Detectarea faptului că un program este virus este o problemă algoritmic nedecidabilă, deci nu se știe niciodată. Numai plain-text-ul nu contine viruși. </p>
Atentie: Trimitand articole si date personale pentru publicare pe acest site al comunitatii Haskell/Ro acceptati stocarea datelor dvs. pe servere care nu sunt in Uniunea Europeana si nici macar in Eurasia! Accesul la copiile acestui site oferite de alte servicii proxy (diferite de site-ul original www.haskell.org) nu va garanteaza nici acuratetea continutului nici calitatea de 'virus-free' a materialelor. </p>
 
   
 
<p class='previewnote'>
 
<p class='previewnote'>
  +
Materialele oferite de Ro/Haskell sunt deocamndată oferite la... [[Calitate Ro/Haskell]] sau pur și simplu „As It Is”. Firește că facem eforturi pentru a îmbunătăți continuu calitatea, dar în lipsa unei plăți din partea dumneavoastră nu putem oferi decât calitate cu garanții la nivelul minim cerut de legislație, și '''fără garanție de potrivire''' cu un scop sau altul pe care l-ați putea avea în vedere. Din fericire, deoarece Haskell este un limbaj universal extrem de puternic și flexibil, șansele unei potriviri sunt destul de mari în realitate.</p>
Verificati intotdeauna fisierele descarcate: PDF - urile pot contine uneori cod arbitrar iar doc-urile macrovirusi. Luati-va toate masurile de precautie posibile. Detectarea faptului ca un program este virus este o problema algoritmic nedecidabila, deci nu se stie niciodata. Numai plain-text-ul nu contine virusi. </p>
 
   
  +
<p class='previewnote'>
  +
Atentie: Adresele de e-mail oferite de Ro/Haskell sunt oferite exclusiv pentru: activitate didactică, promovarea limbajului Haskell și a platformelor software pe care rulează acesta, training-ului asociat și a chestiunilor legate de activitatea comunitatii [[Ro/Haskell]] și eficiența sau blocajele care intervin în aceste activități. Introducerea acestor adrese în baze de date comerciale și de uz comercial va fi tratata după caz ca SPAM (în ciuda notițelor de genul: acest mesaj nu este spam etc.) sau ca încălcare a condițiilor de utilizare a site-ului stabilite de către autorii acestuia, consecințele conform legii mergând până la confiscarea aparaturii pe care rulați baza de date. De asemenea, riscați pierderea tuturor clienților din rețele mari ca Yahoo deoarece vom marca aceste mesaje ca SPAM, în mod repetat. </p>
   
  +
==Drepturi de autor==
----
 
  +
Paginile web depuse pe acest site sunt proprietatea autorilor lor, care au contribuit cu aceste materiale oferind pentru copiile de pe acest site dreptul de folosire sub o licență permisivă: https://www.haskell.org/haskellwiki/HaskellWiki:Copyrights. Materialele stocate pe servere externe acestui site și legate prin link-uri către alte site-uri se supun licentelor de pe serverele de origine! Cărțile și capitolele de cărți aparțin editorilor și autorilor și nu pot fi multiplicate fără acordul acestora. (Faceți link-uri la ele!)
==. Bazare si Targuri cu link-uri ==
 
   
  +
În acelasi timp, conform legii 8/1996 din România aveți obligația de a cita numele autorilor sau, în lipsa numele de autor al acestora, în cazul ca nu aveți decât acest nickname. (Conform legii, autorul decide sub ce formă ajunge opera la cunoștința publicului, inclusiv cu ce semnatură de autor sau sub ce pseudonim.)
[[O colectie de link-uri]] variate, utila intr-o lume in care pina si Google este manipulat prin schimbarea ordinii aparitiei raspunsurilor. Cea dintai pe care am strans-o. (prin 2007 ??)
 
  +
Exemplu: Realizatorul acestei pagini Dan Popa trebuie citat ori ca Dan Popa, ori ca Ha$kell sau [[User:Ha$kell]] de pe www.haskell.org.
  +
Exemplu de citare corecta [[Fr/Haskell]].
   
  +
==Bazare și Târguri cu link-uri==
[[O colectie de link-uri variate - 2008]] - am extras pentru dumneavoastra. Alegerea link-urilor importante (dupa parerea noastra) n-o poate face Google ci o minte umana care stie ce sa va propuna.
 
   
  +
[[O colectie de link-uri]] variate, utilă intr-o lume în care până și Google este manipulat prin schimbarea ordinii apariției răspunsurilor. Cea dintâi pe care am strâns-o. (prin 2007?)
[[O colectie de link-uri din 1 noiembrie 2008]]. Am numit-o Targul mic de Haskell.
 
   
  +
[[O colectie de link-uri variate - 2008]] - am extras pentru dumneavoastră. Alegerea link-urilor importante (după parerea noastră) n-o poate face Google, ci o minte umană care știe ce să vă propună.
  +
  +
[[O colectie de link-uri din 1 noiembrie 2008]]. Am numit-o Târgul mic de Haskell din noiembrie 2008.
  +
  +
[[Links/O colectie de link-uri/iunie 2009]] Am numit-o Târgul mic de Haskell din iunie 2009.
  +
  +
[[Links/O colectie de link-uri/iulie 2009]] Am numit-o Târgul mic de Haskell din iulie 2009.
  +
  +
La târg ca la târg. Alegeți ce vă place din ceea ce se oferă. Dacă ajungeți prea târziu, s-ar putea chiar să nu mai găsiți unele lucruri.
  +
  +
==Anticariat==
  +
[[Anticariat Ro/Haskell]] Încercam să oferim celor interesați cărțile pe care le-am citit deja. Dacă aveți cărți de Haskell disponibile, nu ezitați să le anunțați aici. Se pot trimite prin poștă ca „imprimate”, în plic având colțul tăiat, eventual cu ramburs.
  +
  +
==Hardware==
  +
Interesul de a rula Haskell pe diferite feluri de hardware, a atins cote înalte.
  +
Așa cum am mai spus la cursul de Limbaje Formale sau la cel de Compilatoare, un limbaj cum este Haskell în care (din cauza felului cum este definit lambda calculul) același calcul se poate începe din mai multe locuri și chiar simultan, în paralel, va fi unul dintre limbajele care se pretează la rulare pe mașini intensiv paralele. Încercam să înființăm o pagina de [[Secrete hardware - software]] pentru utilizatorii de Haskell și cei care vor naviga pe acest site.
  +
Știați de exemplu că puteți folosi vechi monitoare de maxim 1024 x 768 la rezolutia 1280 x 768 neinclusa în manual, pentru a vedea mai bine programele Haskell cu linii lungi ?
  +
  +
==Imagini din expoziții==
  +
[[Imagini]] care vor constitui o colectie. În dezvoltare...
 
----
 
----
  +
==Topul lucrărilor practice==
==. Anticariat ==
 
  +
[[Primul Top]] al lucrărilor ce merita citite de practicieni. În dezvoltare...
[[Anticariat Ro/Haskell]] Incercam sa oferim celor interesati cartile pe care le-am citit deja. Daca aveti carti de Haskell disponibile nu ezitati sa le anuntati aici. Se pot trimite prin posta ca "imprimate", in plic avand coltul taiat, eventual cu ramburs.
 
 
----
 
----
  +
==Universități din România unde se predă Haskell==
==. Hardware ==
 
  +
Găsiți pe pagina: [[Oameni si cursuri din Romania]].
Interesul de a rula Haskell pe diferite feluri de Hardware, a atins cote inalte.
 
Asa cum am mai spus la cursul de Limbaje Formale sau la cel de Compilatoare, un limbaj cum este Haskell in care (din cauza felului cum este definit lambda calculul) acelasi calcul se poate incepe din mai multe locuri si chiar simultan , in paralel, va fi unul dintre limbajele care se preteaza la rulare pe masini intensiv paralele. Incercam sa infiintam o pagina de [[Secrete hardware - software]] pentru utilizatorii de Haskell si cei care vor naviga pe acest site.
 
Stiati de exemplu ca puteti folosi vechi monitoare de maxim 1024 x 768 la rezolutia 1280 x 768 neinclusa in manual, pentru a vedea mai bine programele Haskell cu linii lungi ?
 
   
  +
Vechea pagina, neterminată este aici: [[Universitati la care puteti urma cursuri de Haskell si programare functionala.]]
==. Imagini din expozitii ==
 
  +
[[Imagini]] care vor constitui o colectie. In dezvoltare ...
 
  +
Dragi colegi care predați Haskell, nu ezitați să vă prezentați activitatea!
 
----
 
----
  +
==. Topul lucrarilor practice ==
 
  +
==C++ versus Haskell==
[[Primul Top]] al lucrarilor ce merita citite de practicieni. In dezvoltare ...
 
  +
[[Intrebari despre asemanari, deosebiri și comparatii intre limbajele]]
----
 
  +
==. Universitati din Ro unde se preda Haskell ==
 
  +
Eventual... [[Alte intrebari puse des.]]
[[Universitati la care puteti urma cursuri de Haskell si programare functionala.]] Dragi colegi care predati Haskell, nu ezitati sa va prezentati activitatea !
 
----
 
==. C++ versus Haskell ==
 
[[Intrebari despre asemanari, deosebiri si comparatii intre limbajele]] Eventual... [[Alte intrebari puse des.]]
 
----
 
==. Haskell, Muzica si Baletul ==
 
De catva timp, numele Haskell il gasesc asociat cu informatii despre arta, mai ales despre balet. Va urma o pagina despre Haskell si arte sau, de ce nu, despre prelucrarea informatiei artistice. Deja cu programe Haskell s-a prelucrat muzica. Pe cand si la noi alte proiecte ? Reveniti cand vom completa [[Haskell, Muzica si Baletul]] iar acest link va fi albastru. Sau parcurgeti [[O colectie de link-uri variate - 2008]] de la Targul "Link-uri de vara 2008"
 
 
 
----
 
----
  +
==Jocuri și concursuri==
==. Navigator ==
 
  +
Mai mult sau mai putin legate de activitatea comunității. [[Jocuri]].
  +
Vedeți și: [[Ro/Haskell/OpenGL]]
   
  +
==Haskell pentru ingineri de software și hardware==
Navigatorule, poti da click cu succes pe link-urile albastre ! Cele rosii sunt doar paginii din viitor, inca neconstruite. :)
 
  +
[[Haskell pentru ingineri]]
   
  +
==Haskell, muzica și baletul==
[[Intrebarile incepatorului]], [[Capitole de manual]],[[Practica interpretarii monadice]],
 
  +
De catva timp, numele Haskell il gasesc asociat cu informatii despre arta, mai ales despre balet. Va urma o pagină despre Haskell și arte sau, de ce nu, despre prelucrarea informației artistice. Deja cu programe Haskell s-a prelucrat muzică. Pe când și la noi alte proiecte? Reveniți când vom completa [[Haskell, Muzica și Baletul]], iar acest link va fi albastru. Sau parcurgeți [[O colectie de link-uri variate - 2008]] de la Târgul „Link-uri de vară 2008”
[[Stiri Ro/Haskell]],[[Tipuri polimorfice]], [[Clase de tipuri]], [[Quicksort]],
 
[[Anecdote si afirmatii hazlii]],[[savuros dialog]], [[Programati si zambiti !]],
 
[[Opinia editorului revistei MyLinux]], [[Laboratorul de Limbaje]] (<-Pagina in pregatire.),
 
[http://haskell.org/hugs Hugs] <- '''Downloadul interpretorului Hugs''' , [http://haskell.org/ghc GHC] <- '''Downloadul compilatorului GHC''',
 
[http://www.haskell.org/sitewiki/images/5/54/Building_an_interpreter.pdf "Cum sa construiesti un interpretor adaptabil intr-o singura zi!" de Dan Popa],
 
[[Carti publicate in limba romana]], [[dRaftul personal]], [[Proiecte de traduceri]],
 
[[Distributii Linux de Download apreciate]], de utilizatorii de Haskell.
 
[[Ce merita sa cititi]], [http://www.edusoft.ro/detalii.php?id=81 "Introducere in Haskell 98 prin exemple" publicat la EduSoft.],
 
Mini bibliografie despre [[Programare functionala]], [[Ce n-am publicat aici...inca]],
 
[[Proiecte]], [[O colectie de link-uri]], Inca [[O colectie de link-uri variate - 2008]],
 
[[Anticariat Ro/Haskell]], Viitoarea colectie de [[Imagini]], [[Primul Top]], al lucrarilor.
 
[[Universitati la care puteti urma cursuri de Haskell si programare functionala.]],
 
[[Intrebari despre asemanari, deosebiri si comparatii intre limbajele]], Eventual...
 
[[Alte intrebari puse des.]], [[Haskell, Muzica si Baletul]], [[Rodin]],
 
[[Category:Ro]], [http://www.haskell.org/haskellwiki/Category:Ro Categories:Ro].
 
   
  +
'''Muzica monadelor'''
==. Multumiri ==
 
  +
Muzică gratuită, disponibila pentru download (cu unele restricții pentru redifuzare) găsiți pe pagina [[Music of monads]] - traducerea: [[Muzica monadelor]], mulțumită echipei muzicienilor care au colaborat cu Jamendo.
  +
Ascultați [[Muzica monadelor]].
   
  +
==Navigator==
Am scris acest paragraf pentru a aduce mulţumiri celor care susţin comunitatea noastră:
 
   
  +
Navigatorule, poți da click cu succes pe link-urile roșii! Celelalte sunt doar pagini din viitor, încă neconstruite. :)
* echipei care dezvolta Glasgow Haskell Compiler -ului si lui Simon P.J. care a facut atat de multe pentru noi, care a scris pina si prefetele de manual
 
  +
* echipei care dezvolta Hugs si WinHugs
 
  +
[[Intrebarile incepatorului]], [[Capitole de manual]],[[Practica interpretarii monadice]],
* furnizorului de găzduire web: http://www.cs.yale.edu/ care a initiat proiectul haskell.org
 
  +
[[Stiri Ro/Haskell]],[[Tipuri polimorfice]], [[Clase de tipuri]], [[Quicksort]],
* autorilor si studentilor care au acceptat listarea programelor în secţiunile site-ului
 
  +
[[Anecdote și afirmatii hazlii]],[[savuros dialog]], [[Programati și zambiti!]],
* Univ Al. I. Cuza, Iasi pentru activitatea Conf. Dr. Mihai Gontineac si lansarea volumului on-line de Programare Functionala
 
  +
[[Opinia editorului revistei MyLinux]], [[Laboratorul de Limbaje]] (<-Pagina în pregatire.),
* tuturor colegilor profesori de Haskell
 
  +
[https://haskell.org/hugs Hugs] <- '''Downloadul interpretorului Hugs''' , [https://haskell.org/ghc GHC] <- '''Downloadul compilatorului GHC''',
* tuturor studentilor care ne-au ajutat la alcatuirea rubricii de intrebari
 
  +
[https://www.haskell.org/wikiupload/5/54/Building_an_interpreter.pdf „Cum să construiesti un interpretor adaptabil intr-o singura zi!” de Dan Popa],
* editorilor de la editurile EduSoft, Al. Myller si MatrixRom care au avut bunavointa de a accepta postarea de materiale on-line libere, necriptate. Mii de multumiri.
 
  +
[[Carti publicate în limba romana]], [[dRaftul personal]], [[Proiecte de traduceri]],
* revistelor in care am publicat articole despre Haskell: Revista MyLinux (Actualmente my Hardware), Revista Studii si Cerc Stiintifice Seria Matematica de la Univ. Bacau
 
  +
[[Distributii Linux de Download apreciate]], de utilizatorii de Haskell.
* referentilor din Romania care au recenzat carti si/sau articole despre Haskell: Dana Avram Lupsa (Cluj), Nechita Elena (Bacau) - desi a predat Lisp s-a incumetat sa semneze o recenzie a unei carti de Haskell.
 
  +
[[Ce merita sa cititi]], [https://www.edusoft.ro/detalii.php?id=81 „Introducere în Haskell 98 prin exemple” publicat la EduSoft.],
* profesorilor din alte tari care au oferit carti OnLine despre Haskell si Gopher
 
  +
Mini bibliografie despre [[Programare functionala]], [[Ce n-am publicat aici... inca]],
* autorilor de biblioteci de parsere
 
  +
[[Proiecte]], [[O colectie de link-uri]], Înca [[O colectie de link-uri variate - 2008]],
* masteranzilor din alte tari care au scris si publicat lucrari despre Haskell
 
  +
[[Anticariat Ro/Haskell]], Viitoarea colectie de [[Imagini]], [[Primul Top]], al lucrarilor.
* furnizorilor de Linux si comunitatea OpenOffice - fara munca lor n-am fi putut face usor .pdf-urile cartilor
 
  +
[[Universitati la care puteti urma cursuri de Haskell si programare functionala.]],
* autorilor celebrului volum [[Gentle]]
 
  +
[[Intrebari despre asemanari, deosebiri si comparatii intre limbajele]], Eventual...
* anticariatului care ne-a (re)difuzat volume de Haskell si draft-uri de manuscrise
 
  +
[[Alte intrebari puse des.]], [[Haskell, Muzica și Baletul]], [[Rodin]],
şi nu în ultimul rând, tuturor celor care oferă materiale pentru wiki-ul nostru.
 
  +
[[Category:Ro]], [https://www.haskell.org/haskellwiki/Category:Ro Categories:Ro].
  +
  +
==Bannere==
  +
Bannere necomerciale, educationale și culturale, aici: [[Ro/Haskell/Banners]]
  +
  +
==Umor==
  +
  +
Am avut ocazia să citesc cea mai... indescriptibilă în cuvinte pagina provenita prin traducere - presupun ca automată - din volumul [[Gentle]]. Pagina a fost atribuită spre citire domnului student Pargaru căruia îi recunoaștem meritele de umorist Haskell, în echipă cu un translator automat. Citiți: [[Umor Haskell mort-copt]]. Textul original este la pagina 35 în [[Gentle]].
  +
  +
Pagina indexată la indexul [[Category:Ro]] [https://www.haskell.org/haskellwiki/Category:Ro Categories:Ro]
  +
  +
==Utilizare, istoric==
  +
  +
Contoarele indicând numarul de utilizări ale paginilor site-ului continuă să creasca. Iată mai jos câteva momente istorice și numărul de accese înregistrat până la anumite date.
  +
  +
14 mai 2009 - This page has been accessed 18,653 times. This page was last modified 18:29, 12 May 2009
   
Le dorim tuturtor mult bine si prosperitate ! In 2009 si anii ce vor urma.
 
----
 
Pagina indexata la indexul [[Category:Ro]] [http://www.haskell.org/haskellwiki/Category:Ro Categories:Ro]
 
----
 
23 martie 2009 - This page has been accessed 16,981 times. This page was last modified 13:12, 18 December 2008.<br>
 
14 aprilie 2009 - This page has been accessed 17,832 times. This page was last modified 06:15, 14 April 2009.
 
 
28 aprilie 2009 - This page has been accessed 18,158 times. This page was last modified 06:21, 14 April 2009
 
28 aprilie 2009 - This page has been accessed 18,158 times. This page was last modified 06:21, 14 April 2009
<br>
 
   
  +
14 aprilie 2009 - This page has been accessed 17,832 times. This page was last modified 06:15, 14 April 2009
  +
  +
23 martie 2009 - This page has been accessed 16,981 times. This page was last modified 13:12, 18 December 2008.<br>
  +
  +
22 iunie 2009 - This page has been accessed 19,754 times.
  +
  +
20 iulie 2009 - This page has been accessed 20,494 times. This page was last modified 10:33, 23 June 2009.
  +
  +
29 iulie 2009 -This page has been accessed 20,752 times. This page was last modified 19:43, 29 July 2009.
  +
  +
31 august 2009 - This page has been accessed 21,520 times.
  +
  +
7 oct 2009 - This page has been accessed 22,222 times. This page was last modified 21:28, 7 October 2009
  +
  +
12 dec 2009 - This page has been accessed 24,513 times.
  +
  +
Cândva intre 12 dec 2009 și 11 ian 2010 contorul de accese la aceasta pagină a trecut de totalul de 25000 de accese.
  +
  +
26 apr 2010: Contorul de accese la aceasta pagina a trecut de totalul de 27050 de accese.
  +
  +
9 Feb 2011. - This page has been accessed 35,588 times.
  +
  +
13 Apr 2011 - This page has been accessed 36,191 times.
  +
  +
13 Iunie 2011 - This page has been accessed 37,061 times.
  +
  +
7 nov 2011 - This page has been accessed 40,863 times.
  +
  +
24 July 2013 - This page has been accessed 68,881 times.
  +
  +
30 Septembrie 2021 - Între timp s-a scos funcția aceasta din MediaWiki, deci nu avem cum să știm câți au văzut această pagină. Sigur a trecut de 70000 accesări, posibil 80-90000 sau chiar 100000 accesări (totuși, între 07.2013 și 09.2021 este o distanță mare).
  +
 
----
 
----
[http://www.haskell.org/haskellwiki/Ro/Haskell <= Inapoi la inceputul paginii principale Ro/Haskell. ]<br> <br>
+
[https://www.haskell.org/haskellwiki/Ro/Haskell <= Înapoi la începutul paginii principale Ro/Haskell. ]<br><br>
[http://www.haskell.org/haskellwiki/Intrebarile_incepatorului <'''-''' Inapoi la Intrebarile incepatorului Ro/Haskell. ]
+
[https://www.haskell.org/haskellwiki/Intrebarile_incepatorului <'''-''' Înapoi la Întrebarile incepatorului Ro/Haskell. ]
  +
----
  +
  +
https://www.haskell.org/wikiupload/4/4c/Header2-RoH.gif
  +
  +
Din '''12 mai 2009 ''' Ro/Haskell se înscrie între organizațiile semnatare ale [https://www.capetowndeclaration.org/list_signatures?indorg=all&keyword=Romania” Open Education Declaration”].

Latest revision as of 16:59, 30 September 2021

Haskell - Un limbaj funcțional pur

Hartă site.


Haskell este limbajul funcțional succesor al LISP-ului, Scheme-ului și ML-ului!
Cel mai productiv limbaj funcțional! Limbajul folosit de autorii limbajului Perl 6 și ales de echipa Linspire, utilizat la inteligență artificială, prelucrări mulțimedia, rețele Petri, programare funcțională, în Robotică, sinteză de circuite electronice, motoare de baze de date, cercetare, producție de software „type safe”, producție de limbaje (DSL-uri, cum este Limbajul Pseudocod Rodin), proiectare automată de scheme electronice, analize statistice și financiare (bancare), grafica 3D...
V-am stârnit curiozitatea? Citiți: Întrebările începătorului. Am adăugat răspunsuri noi (dec. 2009-16 ian. 2010). Înformațiile pentru studenți sunt la punctul 18, începeți de acolo, iar link-urile de descărcare în secțiunea 8. sau la pagina despre lucrări de licență. Celor interesați de OpenGL le recomandăm noua pagină Ro/Haskell/OpenGL


Nota: Pagina cursului de Fundamentele Programării o puteți găsi și pe harta site-ului de sus sau dând click pe Ro (în josul paginii).

Cuprinsul paginii Ro/Haskell:


Știri

https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2014
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2013
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2012
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2011
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2010
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2009
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2008
https://www.haskell.org/haskellwiki/Stiri_Ro/Haskell-2007

Aventura lansării comunității Ro/Haskell

Începuturile folosirii limbajului Haskell în Romania numai zile ușoare și simple n-au fost. Citiți Aventura lansarii comunitatii Ro/Haskell.

Introducere

Un răspuns la întrebarea „Ce este Haskell și la ce ne-a folosit și ne foloseste el?” găsiți pe pagina Ro/Haskell/Introducere. Ultima carte introductivă aparută: O mica introducere in Haskell 98. Precedenta carte introductivă aparută: Introducere in Haskell 98 prin exemple.

Despre Haskell dorim să prezentam... (Hoogle și nu numai)

  • De ce Haskell? - o prezentare a limbajului Haskell din punctul de vedere al unui specialist în limbaje formale. Este un capitol dintr-o carte de Dan Popa;
  • Sintaxa și semantica limbajului Haskell împreună cu structurile sale de date și funcții, disponibile de la început (fără să le mai definiti dvs.) - liste, arbori, monade, clase - sunt în marea lor majoritate gândite astfel încât să semene cu notațiile matematice. De fapt, sunt chiar notații matematice direct implementabile în calculator. Acest lucru a dat naștere la o pleiadă de lucrări știintifice scrise direct în „literate Haskell”. Aceste lucrari sunt simultan și:
    • articole de matematică superioară, de teoria categoriilor, a tipurilor, a limbajelor ș.a.m.d.;
    • și programe de calculator cu extensia .lhs,

deci pot fi rulate ca atare.

În realitate, Haskell-ul oferă o oportunitate simultană de a face cercetare, teorie, lucrări știintifice și programe, aproape concomitent. În plus, datorită puternicului sistem de inferențe de tipuri, Hakell-ul va fi ca un asistent care vă verifică - atât cât poate - corectitudinea a ceea ce realizați. Iar Haskell-ul, fiind un limbaj funcțional care permite scrierea de funcții de nivel înalt, veți putea lucra în abstract dacă doriți, rămânând totodată cu picioarele pe pământul practicii programării și al viitoarelor finanțări (deoarece de plătit se plătește mai des pentru proiecte concrete decât pentru teorie neaplicată).

  • Capitole de manual. Atenție, unele versiuni de Acrobat Reader (din seria 5) au avut probleme de securitate, conform revistelor de Linux. În asemenea situații vă sugerăm să optați mai bine pentru cărțile tipărite!
  • Hoogle, „motorul de cautare” pentru funcții Haskell din diversele biblioteci se afla aici, la https://haskell.org/hoogle. Folosiți Hoogle pentru a învăța despre noi funcții de bibliotecă și pentru a descifra programe.

Hoogle logo.png
Puteți căuta atât după denumirea funcției, cât și după tipul acesteia. Exemple: cautati „map” sau „(a -> b) -> [a] -> [b]”, ori, de ce nu, chiar tipuri cu precondiții (exemplu: „Ord a => [a] -> [a]”). Din păcate, rezultatele sunt în engleză. :(

Umor, glume și anecdote despre Haskell

  • Haskell a fost anunțat pe 1 aprilie, iar acest lucru nu a fost intenționat. De atunci, comunitatea Haskell cultivă un umor savuros, iar ocazional, la 1 aprilie, alternează adesea știrile serioase cu mesaje pline de umor. Vedeți și paginile de umor în limba engleză de pe https://wiki.haskell.org.
  • O serie de anecdote sau elemente mai greu de demonstrat, dar de altfel vizibile pentru cititorul avizat, circulă pe seama limbajului Haskell. Ocazional apar și în carti sau cursuri, testând atenția cititorilor/ascultătorilor. Anecdote si afirmatii hazlii.
  • Un alt fel de umor despre Haskell îl constituie umorul involuntar. De exemplu, o discuție despre interpretoarele limbajelor - lucru pe care interlocutorul din exemplul urmator nu l-a înțeles - se poate transforma intr-un savuros dialog de genul „vorbesc împreună și se înțeleg separat”.
  • Pe pagina cu Întrebările începătorului am adăugat între întrebările privitoare la I/O o povestire despre un discipol în ale Haskell-ului iluminat în momentul în care a aflat cum e definita funcția „print”. Vă las s-o descoperiți pe cont propriu.
  • Programați și zâmbiți! Unele moduri de a scrie programe sau simple expresii în Haskell sunt atât de amuzante încât merită o rubrică separată. De fapt, sunt o dovadă a flexibilității limbajului.
  • Despre Haskell se afirmă că asigură un nivel înalt de calitate și de securitate a programelor. Am adaugat o glumă despre controlul de calitate a cărei morală este că nu e de ajuns să certifici calitatea, ci mai întâi trebuie să o obții, să o produci: Calitatea si inspectorul cozonacilor.

Laboratorul de construcție a limbajelor

Accesați laboratorul de construcție al limbajelor, locul de unde veți putea descărca limbaje de programare produse de persoane din grupul Ro/Haskell și de comunitatea Haskell în general. Laboratorul de Limbaje (pagină în pregătire)

Aici am mutat informațiile despre construcția limbajelor: Laboratorul de Limbaje. Vedeți și noua pagină: ADFA.

Interpretoare, compilatoare și editoare disponibile - pagini în engleză

Există o mulțime de compilatoare și interpretoare pentru Haskell și sunt disponibile gratuit: Hugs (interpretor), GHC (compilator), Hellium (mediu de instruire) și altele. O serie de distributii Linux includ interpretorul Hugs (ex: Mandrake 10.0), altele îl oferă pentru download de pe site-ul distribuției (ex: PC Linux OS 9). Unele permit instalarea imediată a interpretorului sau compilatorului de Haskell (ex: Suse 9.x funcționează cu cele doua binare din distributia Mandrake 10.0). Iar lista nu se opreste aici. Mediul de dezvoltare Kdevelopment permite și realizarea de proiecte în Haskell (are chiar sablon de proiect inclus, pregatit) dar nu uitati să instalati compilatorul GHC. Versiuni de WinHugs sunt de asemenea disponibile pe platforma Windows. Compilatorul Haskell GHC poate, cu ajutorul unui plug-in special să lucreze împreună cu mediul de dezvoltare Eclipse! Nici Visual Studio nu e uitat, exista versiuni în care se poate lucra cu Haskell. Un instrument util lansat recent este Haskell, dar din pacate se pare ca funcționează doar cu edițiile comerciale ale Visual Studio. Testele făcute cu Visual Studio din kit-ul gratuit, distribuibil (A. R. Kit) n-au dus la niciun succes. Motivul tehnic este probabil lipsa suportului pentru plugin-uri din ediția limitata a A. R. Kit. Iar Visual Haskell este văzut ca un plug-in Visual Studio.

EDIT: La momentul scrierii (30 septembrie 2021), situația este mai bună decât este descrisă în paragraful anterior (păstrat ca o capsulă care ilustrează obstacolele întâmpinate de programatorii vechi de Haskell). Există acum câteva editoare de text care pot fi configurate pentru a facilita programarea în Haskell. Pentru Linux, se poate folosi SciTE împreună cu aceste sfaturi (în engleză). Pentru Windows, se poate folosi ori Textpad, ori Notepad++, iar pentru macOS există SubEthaEdit, TextMate, BBEdit și TextWrangler. Cele mai bune soluții totuși la capitolul editoare de text se află în editoarele cross-platform (multi-platformă). Printre ele enumerăm: Vim cu Superior Haskell Interaction Mode, Emacs (vedeți această pagină în engleză), Geany, Sublime Text, Visual Studio Code cu extensia Haskell (puteți vedea și aceste pagini), Kate, Atom, Yi (dezvoltat în Haskell, dar cu foarte puține facilități momentan) ș.a.m.d. Pentru proiectul Rodin este recomandat (momentan) editorul Total Edit. Aceste editoare de text pot să funcționeze oarecum ca un IDE (mediu de dezvoltare, engl. Integrated Development Environment), dar dacă se dorește un IDE adevărat? Există soluții și în acest caz. Pentru macOS există un IDE comercial numit Haskell for Mac, necesită OS X Yosemite sau mai sus. Dacă se dorește ceva open-source, se poate instala plugin de Haskell pentru produsele IntelliJ (aici) sau, dacă aveți NixOS, puteți instala Leksah. În 2020, s-a lansat Haskell Language Server care permite oricărui editor precum cele descrise anterior să aibă funcții tip IDE pentru Haskell. Instrucțiunile de instalare se află aici. Au existat câteva plugin-uri care sunt acum depreciate, precum Visual Haskell pentru Visual Studio, plugin-urile EclipseFP și Colorer pentru Eclipse, plugin-ul pentru XCode (pe macOS) etc. Au existat și alte IDE-uri acum inactive precum haste (care a fost un IDE pentru Haskell scris în Haskell), Vital și FP Haskell Center.

Concluzia: dacă vreți să programați în Haskell, cel mai bine configurați un editor de text (Vim, Emacs, VS Code, Atom, Sublime Text, Notepad++, SciTe etc.) sau dacă sunteți pe macOS, puteți să încercați Haskell for Mac.

Pentru compilatoare și interpretoare de Haskell 2010, există GHC (Glasgow Haskell Compiler) care este compilatorul de facto pentru Haskell. Este disponibil pe majoritatea platformelor comune. Se recomandă a se folosi Haskell Platform pentru a se instala GHC împreună cu Cabal și Stack pe Windows, macOS și Linux. Pe macOS există și Haskell for Mac, menționat mai sus. Printre compilatoare de Haskell 2010 se numără UHC (Utrecht Haskell Compiler) și LHC (LLVM Haskell Compiler). În cazul Haskell 98, avem JHC și Helium, făcut special pentru a preda Haskell (și în consecință oferă erori mult mai informative decât cu celelalte compilatoare disponibile). Mai există alte compilere de Haskell 98, dar nu mai sunt menținute, precum Hugs (un interpretor mic și portabil de Haskell făcut în C, rulează pe orice mașină și are o viteză mare de interpretare, dar performanța nu se compară cu GHC de exemplu), YHC (York Haskell Compiler) și nhc98.

Lucrări în limba română, cronologic

2005:

  • Realizarea Interpretoarelor Adaptabile în limbajul Haskell 98 - articol de Dan Popa prezentat la Simpozionul International al Tinerilor Cercetatori ed. 2005, Chișinău, Republica Moldova (21-22 aprilie 2005)
  • Cum puteți scrie un mic asamblor adaptabil în Haskell 98: Popa, Dan; An assembler in a nutshell - Proceedings of the 30th annual Congress of The American-Romanian Academy of Art and Sciences (ARA), Academia de Studii Economice din Moldova, 2005, p. 196-198 x 2 coloane, ISBN 9975-75-313-2

Versiunea în limba română a lucrării, în format de capitol de carte. Bibliografia nu este inclusă, dar noțiunile folosite sunt noțiuni fundamentale de teoria categoriilor care pot fi găsite în orice carte de teoria categoriilor.

2006:

  • Descărcați slide-urile lucrării „Cum să construiesti un interpretor adaptabil intr-o singura zi!” de Dan Popa, de la Universitatea Bacău care descrie pas cu pas cum se poate construi un interpretor pentru un mic while-language în Haskell.Autorul a folosit în experimente versiunea Hugs din distributia Mandriva Linux 10.0. Lucrarea a fost prezentată la Conferinta ICMI 45. Slide-urile lucrarii sunt în format PDF cu titluri în engleză, dar au comentariile în limba română. O variantă a lucrarii, tradusă în limba engleză, este acum disponibilă aici. Deoarece nu a fost inclusa în volumul oficial ICMI45 (din vina responsabilului de număr), ea va fi republicată. Poate fi descărcată de aici.

2008:

  • O prezentare PDF numită „Evaluare Modulară și Interpretare folosind Monade și Clase de Tipuri” a fost acceptată pentru secțiunea Functional Grit de la Anglo Haskell 2008. Se poate găsi aici în engleză. Titlul tradus: Modular Evaluation and Interpreters Using Monads and Type Classes by Dan Popa.

2010:

2011-prezent:

To be continued. Vedeți și homepage-ul realizatorului User:Ha$kell

Cărți publicate în limba română

Căutați cărți despre Haskell în limba româna? Sau doriți să consultați biblioteca on-line a autorilor din grupul Ro/Haskell? Dați un click pe: Carti publicate in limba romana sau pe Capitole de manual. În cursul lunii octombrie 2008 a aparut Practica interpretarii monadice .

Carti în pregătire în limba română

  • „Translatoare scrise în Haskell 98 pentru securizarea sistemelor on-line”

Găsiți în secțiunea Capitole de manual a site-ului părți din draft-ul unui manual despre Haskell pe care am sperat să le includ intr-un volum despre scrierea unor translatoare utile în securizarea sistemelor on-line. Utilizați-le ca un set de lecții de inițiere în Haskell, deși unele capitole necesare (monade, I/O etc) nu sunt incluse. În final am inclus o parte din ele în volumul „Introducere in Haskell 98 prin exemple”.

Dacă știți limba franceză mai bine decât limba engleză, descărcați versiunea de aici, produs al unei echipe din grupul Fr/Haskell, document pe care l-am pus în format PDF după o ultima corectură.

  • Practica interpretarii monadice - Cuprinde lucrari de laborator aferente cursului de Limbaje Formale și Automate de la Universitatea Bacau, extrase din laboratoarele anului curent (si în viitor, ale altor ani). Volumul își propune să prezinte practic scrierea unui interpretor pentru un mic while-language în Haskell. Tehnicile prezentate sunt utile de asemenea la citirea/achiziționarea de date cu structuri și substructuri. Nu am mai adaugat: O mica istorie a prelucrarii datelor. Cartea este (cel puțin a fost la data apariției) un unicat, la nivel mondial mai existând doar vreo 4-5 articole pe aceasta temă — și neexistând nicio altă carte — pe glob (la data scrierii acestei note: 18 dec. 2009).
  • ... . Titlu rezervat. O carte despre producerea interpretoarelor și/sau compilatoarelor de limbaje imperative folosind monade și funcții pentru combinarea efectelor acestora. Am vrut s-o numesc „Transformers - The Royal Way of Imperative Language Construction”, dar nu găsesc un echivalent în limba română. Va detalia dezvoltarea proiectului Rodin, la care am lucrat în saptamanile precedente (prima jumatate a lui iulie 2008). Date exacte se găsesc pe pagina proiectului Rodin. S-ar putea să se numească doar „The Power of Transformers” sau chiar „Transformers”. Nu dați click - nu este pagina gata.

dRaftul personal

dRaftul personal va fi o colecție de cărți libere, electronice, pe care sper s-o construim împreună, din variantele (eventual pre-release) ale cărților din domeniul stiintelor informatice. Greșelile de tipar sunt oferite gratuit. :) Vedeți și cărțile libere din zona User:Ha$kell.

Traduceri și... voluntariat

Grupul Ro/Haskell va oferă șansa să vă afirmați ca traducator, ceea ce, (dacă sunteți filolog) se consideră activitate profesională. Vedeți Proiecte de traduceri. Contactați-l pe Dan la adresa de e-mail cunoscută (e pe site într-o prezentare .PDF) sau la telefonul cunoscut la Universitate și stabilim detaliile și... răsplata. Special pentru filologii din grupul de cercetare LOGOS, ar putea face așa ceva cu studenții lor?

Distributii Linux de Download apreciate

Lista următoare nu este nici pe departe completă. Distributii Linux de Download apreciate de utilizatorii de Haskell. De ce? Doar însuși Linux-ul este un enorm mediu de programare!

Mini-bibliotecă despre Haskell, Hugs, GHC și limbaje formale online

Nici nu vă închipuiți câte materiale există pe Internet. Voi încerca să întrețin o listă de cărți și articole disponibile pe Internet, în format PDF sau măcar să indic pe cele mai valoroase. Ro/Haskell/Mini-biblioteca-de-Haskell

Merită să citiți

Se spune despre cărți ca ajung să fie citite în întregime destul de rar. Despre o carte se spune că este bună dacă ea conține ceea ce știi deja. Altfel n-o poți aprecia. Așa că o vei citi, probabil, tot selectiv. Ce merita sa cititi aflați de aici. Lista va trebui completată, au aparut multe materiale noi.

De-ale studenților și întrebarile incepatorului

Încercăm să reflectam aici probleme cu care se confrunta studenții nostri. Să publicăm un sfat, un exemplu sau orice altceva ce i-ar putea ajuta. Citiți și: Intrebarile incepatorului

Volumul Practica interpretarii monadice care (împreună cu un istoric al domeniului) și alte capitole a fost prezentat ca teza de doctorat pe 24 noiembrie 2009 va avea o serie de Întrebari despre combinatorii de parsere pe această pagină separată.

Dacă ați ales cursul optional numit Programare functionala începeți studiul de aici: Programare functionala

Dacă sunteți interesați de cursul de Limbaje formale, dați click pe Ro/Haskell/Limbaje formale. Programa de curs va fi aici.

Dacă sunteți interesați de Laboratorul de Limbaje formale dați click pe Laboratorul de Limbaje. Atenție, este o pagină destinată celor avansați în construcția de limbaje. Ceilalți vor începe prin a citi manualul. Știți zicala: când nimic nu funcționează, ei bine... citește manualul. Laboratoarele din 2006 le-am strans în cartea Practica interpretarii monadice, care a aparut în octombrie 2008. Faceți liste de comenzi pentru ea, pentru a obtine un preț mai bun de la editor.

Dacă sunteți interesați de cursul de Tehnici de compilare dati click pe Ro/Haskell/Tehnici de compilare. Programa de curs va fi aici. Până la apariția cărții de Compilatoare in Haskell, citiți despre Constructia Compilatoarelor Folosind Flex si Bison. Scuze că nu avem mai mult deocamdată.

Dacă sunteți interesați de cursul de Arhitectura sistemelor de calcul Linux - iar Hugs și GHC ruleaza și pe Linux, dați click pe... Ro/Haskell/Arhitectura sistemelor de calcul Linux.

Cum se rateaza un examen Altele...

Prezentări

PPT-uri numai bune de vizionat. Dați click dacă sunt roșii: PPT in ENgleza, PPT in Romana. Deocamdată căutați-le la Bazar. O colectie de link-uri variate, utilă într-o lume în care până și Google este manipulat prin schimbarea ordinii apariției răspunsurilor. Iată și Târgul „Link-uri de vara 2008” O colectie de link-uri variate - 2008 Această secțiune de prezentări este în dezvoltare. Vedeți și prezentările din pagina User:Ha$kell.

Ce n-am publicat aici... încă

La o revizuire a site-ului din vara lui 2007, am gasit ca Ro/Haskell ar putea fi încă îmbunătățit. O sumedenie de lucruri ar putea fi adaugate, de la simple explicații pentru începători la colecții de link-uri catre articole și cărți celebre pentru avansați. În cazul în care căutați pe Ro/Haskell versiuni românești ale unor anumite lucrări sau anumite subiecte, uitați-vă și pe această pagină, macar să știți să... nu mai cautati.Ce n-am publicat aici... inca

Biblioteci unde am trimis (si găsiți) carti despre Haskell

Deoarece cărțile de Haskell s-au publicat în ediții mai mici decat cele de C sau C++ va indicam Biblioteci unde le puteti gasi.

Firme care folosesc Haskell și doresc să-și prezinte activitatea

Dorim să asiguram prin viitoarea pagina Firme o legătură intre cei ce folosesc Haskell și cei care învață Haskell. O cautare pe Internet m-a convins ca cererea de programatori de Haskell pentru piața externă este în crestere. Dar abia de la apariția unor cărți cum este Real World Haskell ne așteptăm la o creștere mai rapidă a numărului de aplicații. De asemenea, succesul unor proiecte de 3D Game Design (frag) a propulsat Haskell-ul și în atentia fabricanților de jocuri video, cu atât mai mult cu cât el poate fi folosit usor la implementarile inteligenței artificiale ale personajelor. (Haskell fiind un urmas al Lisp-ului și ML-ului). Citiți despre proiect și descărcați materialele sale, o carte și un motor de de Quake în surse de pe pagina frag .

S-a lansat Industrial Haskell Group https://industry.haskell.org/ cu scopul de a sprijini aplicatiile industriale ale Haskell-ului.

UPDATE: În noiembrie 2008 s-a lansat prima ediție de Real World Haskell și se poate citi online la această adresă.

Proiecte

Proiecte la care participă membri ai comunității Ro/Haskell. Pagină în dezvoltare. Deocamdată neactualizată, deși proiecte există. Începand cu cele ale studenților... Vedeti și Laboratorul de limbaje și Ph.D area când vor fi gata.

PhD. area

O zona dedicată problematicii doctoratelor, indicațiilor de realizare a tezelor și proiectelor ș.a.m.d. Se va numi Ph.D area.

Research area

Descoperirea faptului că din 2007-2008 posedăm rezultate de nivel ISI (apreciere prin comparație cu nivelul altor reviste care au publicat pe aceeași temă!) în domeniul Interpretării și Compilarii Monadice, a Construcției Modulare a Limbajelor, a Arborilor Modulari și Semanticilor Monadice Modulare, deja testate prin proiectul Rodin și oferite spre prezentare la AngloHaskell2008 apoi validate matematic prin publicare - 2009, precum și invitațiile din străinatate și interesul unor Firme Europene ne-au facut să realizam pagina Research area.

Avertismente și condiții de folosire

Atentie: Acest site este dedicat comunității Haskell, activității acesteia, încurajării folosirii limbajului Haskell și a altor proiecte conexe. În niciun caz și sub nicio formă conținutul acestor pagini nu poate fi folosit pentru blocarea activității unei persoane, interzicerea unor cursuri, atacarea unei persoane care a publicat știri reale, hărțuire, ostracizare, calomnie și alte metode de atac nejustificat la persoană care pot produce blocaje proiectelor noastre. Știrile sunt verificate și rămân în arhivă. Nu mai faceți presiuni pentru ștergerea știrilor despre șefii care ne-au pus bețe în roate, sunt inutile. Vedeți cazul Anexa.

Atenție: Trimițând articole și date personale pentru publicare pe acest site al comunității Ro/Haskell, acceptați stocarea datelor dvs. pe servere care nu sunt în Uniunea Europeană și nici macar în Eurasia! Accesul la copiile acestui site oferite de alte servicii proxy (diferite de site-ul original [www.haskell.org]) nu vă garantează nici acuratețea conținutului, nici calitatea de 'virus-free' a materialelor.

Verificați întotdeauna fișierele descărcate: PDF-urile pot conține uneori cod arbitrar, iar fișiere .doc macroviruși. Luați-vă toate măsurile de precauție posibile. Detectarea faptului că un program este virus este o problemă algoritmic nedecidabilă, deci nu se știe niciodată. Numai plain-text-ul nu contine viruși.

Materialele oferite de Ro/Haskell sunt deocamndată oferite la... Calitate Ro/Haskell sau pur și simplu „As It Is”. Firește că facem eforturi pentru a îmbunătăți continuu calitatea, dar în lipsa unei plăți din partea dumneavoastră nu putem oferi decât calitate cu garanții la nivelul minim cerut de legislație, și fără garanție de potrivire cu un scop sau altul pe care l-ați putea avea în vedere. Din fericire, deoarece Haskell este un limbaj universal extrem de puternic și flexibil, șansele unei potriviri sunt destul de mari în realitate.

Atentie: Adresele de e-mail oferite de Ro/Haskell sunt oferite exclusiv pentru: activitate didactică, promovarea limbajului Haskell și a platformelor software pe care rulează acesta, training-ului asociat și a chestiunilor legate de activitatea comunitatii Ro/Haskell și eficiența sau blocajele care intervin în aceste activități. Introducerea acestor adrese în baze de date comerciale și de uz comercial va fi tratata după caz ca SPAM (în ciuda notițelor de genul: acest mesaj nu este spam etc.) sau ca încălcare a condițiilor de utilizare a site-ului stabilite de către autorii acestuia, consecințele conform legii mergând până la confiscarea aparaturii pe care rulați baza de date. De asemenea, riscați pierderea tuturor clienților din rețele mari ca Yahoo deoarece vom marca aceste mesaje ca SPAM, în mod repetat.

Drepturi de autor

Paginile web depuse pe acest site sunt proprietatea autorilor lor, care au contribuit cu aceste materiale oferind pentru copiile de pe acest site dreptul de folosire sub o licență permisivă: https://www.haskell.org/haskellwiki/HaskellWiki:Copyrights. Materialele stocate pe servere externe acestui site și legate prin link-uri către alte site-uri se supun licentelor de pe serverele de origine! Cărțile și capitolele de cărți aparțin editorilor și autorilor și nu pot fi multiplicate fără acordul acestora. (Faceți link-uri la ele!)

În acelasi timp, conform legii 8/1996 din România aveți obligația de a cita numele autorilor sau, în lipsa numele de autor al acestora, în cazul ca nu aveți decât acest nickname. (Conform legii, autorul decide sub ce formă ajunge opera la cunoștința publicului, inclusiv cu ce semnatură de autor sau sub ce pseudonim.) Exemplu: Realizatorul acestei pagini Dan Popa trebuie citat ori ca Dan Popa, ori ca Ha$kell sau User:Ha$kell de pe www.haskell.org. Exemplu de citare corecta Fr/Haskell.

Bazare și Târguri cu link-uri

O colectie de link-uri variate, utilă intr-o lume în care până și Google este manipulat prin schimbarea ordinii apariției răspunsurilor. Cea dintâi pe care am strâns-o. (prin 2007?)

O colectie de link-uri variate - 2008 - am extras pentru dumneavoastră. Alegerea link-urilor importante (după parerea noastră) n-o poate face Google, ci o minte umană care știe ce să vă propună.

O colectie de link-uri din 1 noiembrie 2008. Am numit-o Târgul mic de Haskell din noiembrie 2008.

Links/O colectie de link-uri/iunie 2009 Am numit-o Târgul mic de Haskell din iunie 2009.

Links/O colectie de link-uri/iulie 2009 Am numit-o Târgul mic de Haskell din iulie 2009.

La târg ca la târg. Alegeți ce vă place din ceea ce se oferă. Dacă ajungeți prea târziu, s-ar putea chiar să nu mai găsiți unele lucruri.

Anticariat

Anticariat Ro/Haskell Încercam să oferim celor interesați cărțile pe care le-am citit deja. Dacă aveți cărți de Haskell disponibile, nu ezitați să le anunțați aici. Se pot trimite prin poștă ca „imprimate”, în plic având colțul tăiat, eventual cu ramburs.

Hardware

Interesul de a rula Haskell pe diferite feluri de hardware, a atins cote înalte. Așa cum am mai spus la cursul de Limbaje Formale sau la cel de Compilatoare, un limbaj cum este Haskell în care (din cauza felului cum este definit lambda calculul) același calcul se poate începe din mai multe locuri și chiar simultan, în paralel, va fi unul dintre limbajele care se pretează la rulare pe mașini intensiv paralele. Încercam să înființăm o pagina de Secrete hardware - software pentru utilizatorii de Haskell și cei care vor naviga pe acest site. Știați de exemplu că puteți folosi vechi monitoare de maxim 1024 x 768 la rezolutia 1280 x 768 neinclusa în manual, pentru a vedea mai bine programele Haskell cu linii lungi ?

Imagini din expoziții

Imagini care vor constitui o colectie. În dezvoltare...


Topul lucrărilor practice

Primul Top al lucrărilor ce merita citite de practicieni. În dezvoltare...


Universități din România unde se predă Haskell

Găsiți pe pagina: Oameni si cursuri din Romania.

Vechea pagina, neterminată este aici: Universitati la care puteti urma cursuri de Haskell si programare functionala.

Dragi colegi care predați Haskell, nu ezitați să vă prezentați activitatea!


C++ versus Haskell

Intrebari despre asemanari, deosebiri și comparatii intre limbajele

Eventual... Alte intrebari puse des.


Jocuri și concursuri

Mai mult sau mai putin legate de activitatea comunității. Jocuri. Vedeți și: Ro/Haskell/OpenGL

Haskell pentru ingineri de software și hardware

Haskell pentru ingineri

Haskell, muzica și baletul

De catva timp, numele Haskell il gasesc asociat cu informatii despre arta, mai ales despre balet. Va urma o pagină despre Haskell și arte sau, de ce nu, despre prelucrarea informației artistice. Deja cu programe Haskell s-a prelucrat muzică. Pe când și la noi alte proiecte? Reveniți când vom completa Haskell, Muzica și Baletul, iar acest link va fi albastru. Sau parcurgeți O colectie de link-uri variate - 2008 de la Târgul „Link-uri de vară 2008”

Muzica monadelor Muzică gratuită, disponibila pentru download (cu unele restricții pentru redifuzare) găsiți pe pagina Music of monads - traducerea: Muzica monadelor, mulțumită echipei muzicienilor care au colaborat cu Jamendo. Ascultați Muzica monadelor.

Navigator

Navigatorule, poți da click cu succes pe link-urile roșii! Celelalte sunt doar pagini din viitor, încă neconstruite. :)

Intrebarile incepatorului, Capitole de manual,Practica  interpretarii monadice,
Stiri Ro/Haskell,Tipuri polimorfice, Clase de tipuri, Quicksort, 
Anecdote și afirmatii hazlii,savuros dialog, Programati și zambiti!, 
Opinia editorului revistei MyLinux, Laboratorul de Limbaje (<-Pagina în pregatire.), 
Hugs <- Downloadul interpretorului Hugs , GHC  <- Downloadul compilatorului GHC,
„Cum să construiesti un interpretor adaptabil intr-o singura zi!” de Dan Popa, 
Carti publicate în limba romana, dRaftul personal, Proiecte de traduceri, 
Distributii Linux de Download apreciate, de utilizatorii de Haskell.
Ce merita sa cititi, „Introducere în Haskell 98 prin exemple” publicat la EduSoft.,
Mini bibliografie despre Programare functionala, Ce n-am publicat aici... inca, 
Proiecte, O colectie de link-uri, Înca O colectie de link-uri variate - 2008, 
Anticariat Ro/Haskell, Viitoarea colectie de Imagini, Primul Top, al lucrarilor. 
Universitati la care puteti urma cursuri de Haskell si programare functionala.,
Intrebari despre asemanari, deosebiri si comparatii intre limbajele, Eventual... 
Alte intrebari puse des., Haskell, Muzica și Baletul, Rodin,, Categories:Ro.

Bannere

Bannere necomerciale, educationale și culturale, aici: Ro/Haskell/Banners

Umor

Am avut ocazia să citesc cea mai... indescriptibilă în cuvinte pagina provenita prin traducere - presupun ca automată - din volumul Gentle. Pagina a fost atribuită spre citire domnului student Pargaru căruia îi recunoaștem meritele de umorist Haskell, în echipă cu un translator automat. Citiți: Umor Haskell mort-copt. Textul original este la pagina 35 în Gentle.

Pagina indexată la indexul Categories:Ro

Utilizare, istoric

Contoarele indicând numarul de utilizări ale paginilor site-ului continuă să creasca. Iată mai jos câteva momente istorice și numărul de accese înregistrat până la anumite date.

14 mai 2009 - This page has been accessed 18,653 times. This page was last modified 18:29, 12 May 2009

28 aprilie 2009 - This page has been accessed 18,158 times. This page was last modified 06:21, 14 April 2009

14 aprilie 2009 - This page has been accessed 17,832 times. This page was last modified 06:15, 14 April 2009

23 martie 2009 - This page has been accessed 16,981 times. This page was last modified 13:12, 18 December 2008.

22 iunie 2009 - This page has been accessed 19,754 times.

20 iulie 2009 - This page has been accessed 20,494 times. This page was last modified 10:33, 23 June 2009.

29 iulie 2009 -This page has been accessed 20,752 times. This page was last modified 19:43, 29 July 2009.

31 august 2009 - This page has been accessed 21,520 times.

7 oct 2009 - This page has been accessed 22,222 times. This page was last modified 21:28, 7 October 2009

12 dec 2009 - This page has been accessed 24,513 times.

Cândva intre 12 dec 2009 și 11 ian 2010 contorul de accese la aceasta pagină a trecut de totalul de 25000 de accese.

26 apr 2010: Contorul de accese la aceasta pagina a trecut de totalul de 27050 de accese.

9 Feb 2011. - This page has been accessed 35,588 times.

13 Apr 2011 - This page has been accessed 36,191 times.

13 Iunie 2011 - This page has been accessed 37,061 times.

7 nov 2011 - This page has been accessed 40,863 times.

24 July 2013 - This page has been accessed 68,881 times.

30 Septembrie 2021 - Între timp s-a scos funcția aceasta din MediaWiki, deci nu avem cum să știm câți au văzut această pagină. Sigur a trecut de 70000 accesări, posibil 80-90000 sau chiar 100000 accesări (totuși, între 07.2013 și 09.2021 este o distanță mare).


<= Înapoi la începutul paginii principale Ro/Haskell.

<- Înapoi la Întrebarile incepatorului Ro/Haskell.


Header2-RoH.gif

Din 12 mai 2009 Ro/Haskell se înscrie între organizațiile semnatare ale Open Education Declaration”.