Δημοσιεύτηκε: 01 Φεβ 2011, 22:38
από linuxs
Καταρχήν να κάνω μια μικρή εισαγωγή γιατί η γλώσσα haskell και γενικά ο συναρτησιακός προγραμματισμός, δεν είναι τόσο γνωστός όσο οι άλλοι τρόποι. Η γλώσσα haskell λοιπόν, ανήκει στις συναρτησιακές γλώσσες. Αυτό σημαίνει πως αντί για compiler που ίσως χρησιμοποιείτε για την C, C++ κλτ θα πρέπει να χρησιμοποιήσετε interpreter(διερμηνέας). Δείτε εδώ http://en.wikipedia.org/wiki/Interpreter_(computing)περισσότερα για το τι είναι διερμηνέας. Κάτι άλλο που θέλω να επισημάνω είναι ότι, προγράμματα τα οποία προσθέτουν δύο αριθμούς για παράδειγμα, ενώ στην C και σε άλλες γλώσσες γράφονται σε 5-10 γραμμές (ανάλογα το πρόγραμμα), στην haskell υπάρχει το καλό οτι γράφονται σε 2-3 γραμμές. Γενικότερα είναι πολύ απλή από θέμα προγραμματισμού αλλά ίσως σας φανεί πολύπλοκη στην αρχή.

Σε Linux περιβάλλον...

Ανοίξτε ένα τερματικό και κάντε εγκατάσταση τον διερμηνέα(interpreter) hugs τρέχοντας το παρακάτω:
Κώδικας: Επιλογή όλων
sudo apt-get install hugs

(σε περίπτωση που σας ρωτήσει yes/no πληκτρολογήστε "yes")

Αφού γίνει η εγκατάσταση του hugs είστε σχεδόν έτοιμοι.

Ο παρακάτω κώδικας είναι ένα παράδειγμα για να δείτε πως περίπου δουλέυει η haskell. Μπορείτε να αντικαταστήσετε το κώδικα με δικό σας και να δουλέψετε ανάλογα. Κάντε copy/paste τον ακόλουθο κώδικα σε έναν editor όπως gedit, nedit, bluefish editor κτλ.
Κώδικας: Επιλογή όλων
-- Add two integer numbers given
add :: Integer -> Integer -> Integer
add 0 y = y
add x 0 = x
add x y = x+y


Μετά, αποθηκεύστε το αρχείο με κατάληξη .hs στο home folder σας(έχει σημασία που το αποθηκεύετε).
Ανοίξτε ένα τερματικό(terminal) και βρείτε το αρχείο που αποθηκεύσατε(σε περίπτωση που έχετε ορίσει άλλο home folder).
Ανοίξτε το hugs πληκτρολογώντας:
Κώδικας: Επιλογή όλων
hugs

(Αυτό που κάναμε είναι να ανοίξουμε τον hugs απο το ίδιο σημείο που είναι και το αρχείο γιατί, τα αρχεία που μπορούν να φορτωθούν(με :load) θα πρέπει να βρίσκονται στον ίδιο κατάλογο)

Φορτώστε το πρόγραμμα πληκτρολωγώντας
Κώδικας: Επιλογή όλων
:l όνομα_αρχείου.hs


Το μόνο που μένει τώρα έιναι να πληκτρολογήσετε το όνομα της συνάρτησης (στο παράδειγμά μας add) και δίπλα, δύο ορίσματα(δηλαδή ποιούς αριθμούς να προσθέσει).
πχ.
Κώδικας: Επιλογή όλων
add 4 7

...το αποτέλεσμα θα πρέπει να είναι 11.

Μόλις πραγματοποιήσατε τα πρώτα βήματα προς τον συναρτησιακο προγραμματισμό...



H επίσημη σελίδα του hugs είναι αυτή: http://www.haskell.org/hugs/
και η επίσημη σελίδα της haskell είναι αυτή: http://www.haskell.org/haskellwiki/Haskell

Όλα τα παραπάνω είναι προσωπικές απόψεις και βεβαίως δέχομαι διορθώσεις!