Διαφορά μεταξύ των αναθεωρήσεων του «Erlang»

6 bytes αφαιρέθηκαν ,  πριν από 1 μήνα
μ
καμία σύνοψη επεξεργασίας
(Διάσωση 1 πηγών και υποβολή 0 για αρχειοθέτηση.) #IABot (v2.0)
μ
 
[[Αρχείο:Erlang logo.png|150px|δεξιά]]
Η '''Erlang''' είναι μια [[γλώσσα προγραμματισμού]] γενικών καθηκόντων με χαρακτηριστικά [[ταυτοχρονισμός|ταυτοχρονισμού]] (concurrency) και [[συλλογή απορριμμάτων|συλλογής απορριμμάτων]]. Το ίδιο όνομα αναφέρεται και στο σύστημα χρόνου εκτέλεσής της (runtime system). Το υποσύνολο της Erlang που μπορεί να εκτελείται ακολουθιακά είναι μια [[γλώσσα συναρτησιακού προγραμματισμού]], με [[αυστηρή αποτίμηση]] (strict evaluation), μοναδική ανάθεση (single assignment) και [[δυναμικό σύστημα τύπων]] (dynamic typing). Όσον αφορά τον ταυτοχρονισμό, ακολουθεί το [[μοντέλο Actor]]. Αναπτύχθηκε στην [[Ericsson]] για την υποστήριξη [[Παράλληλα και κατανεμημένα συστήματα|κατανεμημένων]], ανθεκτικών σε σφάλματα εφαρμογών που να εκτελούνται σε πραγματικό χρόνο (soft-real-time) και χωρίς διακοπή. Υποστηρίζει άμεση ενημέρωση του κώδικα κατά την εκτέλεση (hot swapping), χωρίς να χρειάζεται να σταματήσει το σύστημα.<ref>{{cite web|author=Joe Armstrong, Bjarne Däcker, Thomas Lindgren, Håkan Millroth|title=Open-source Erlang - White Paper|url=http://erlang.org/white_paper.html|accessdate=2008-01-23|archiveurl=https://web.archive.org/web/20060613061633/http://erlang.org/white_paper.html|archivedate=2006-06-13|url-status=dead}}</ref>
 
Αν και στις περισσότερες γλώσσες προγραμματισμού η χρήση [[Νήμα (υπολογιστές)|νημάτων]] (threads) θεωρείται δύσκολη και επιρρεπής σε λάθη, η Erlang παρέχει χαρακτηριστικά στο επίπεδο της ίδιας της γλώσσας για τη δημιουργία και το χειρισμό διεργασιών (processes), ώστε να διευκολύνεται η ανάπτυξη ταυτόχρονου κώδικα. Αν και όλος ο ταυτοχρονισμός είναι ρητός στην Erlang, οι διεργασίες επικοινωνούν μεταξύ τους [[πέρασμα μηνυμάτων|περνώντας μηνύματα]] αντί μέσω κοινών μεταβλητών, χωρίς να χρειάζονται κλειδώματα (locks).
21.585

επεξεργασίες