Χμμμ Τέλεια γλώσσα δεν μπορεί να υπάρξει είναι φιλοσοφικά απαράδεκτο το "τέλειο".
Εκτός και εαν κάποια φιλοσοφία είναι "τέλεια"....

οπότε έχουμε να κάνουμε με μεταφυσική κλπ κλπ
όπου η πληροφορική δεν έχει να κάνει προφανώς και πόσο μάλλον οι υπολογιστές.
Οι άνθρωποι βέβαια έχουν την τάση να πιστέουν (για 1000 μύριους λόγους) σε κάτι που έχουν μάθει ,σε κατι που έχουν
εκτεθεί καιρό. Τους γίνεται συνήθεια.
Πάντως όπως και στις γλώσσες τις ανθρώπινες υπάρχουν πολλές γλώσσες προγραμματισμού.
Άλλες είναι ανεπτυγμένες άλλες λιγότερο κλπ
Μια μικρή παραμοίωση.
Τα ελληνικά για παράδειγμα (δεν το λέω απο εθνικιστική σκοπιά!) είναι μια απο τις πιό πλούσιες και δυνατές γλώσσες
με την μυθολογία και αρχαία φιλοσοφία σαν τις "libraries" της έφτασε να είναι μια απο τις γλώσσες που στο χώρο των επιστημών κλπ. Κατα τον διαφωτισμό έκανε ένα δυνατό "update" στα "libraries" της αλλά ταυτόχρονα δημιουργήθηκαν
"wrappers" και "bindings" σε άλλες γλώσσες του δυτικού πολιτισμού.
Η γλώσσα είναι ένα δυναμικό φαινόμενο δηλαδή όλο εξελίσετε και δεν είναι σίγουρο σε τι θα εξελιχθεί καθώς αυτό εξαρτάται απο το πού "βαδίζει" και η ίδια η κοινωνία.
Αν έχεις μια καλή γλώσσα έχεις "απλά" περισσότερες δυνατότητες αλλά και αυτό δεν είναι αρκετό
απλά είναι μια δυνατότητα. Εξαρτάτε πως θα την χρησιμοποιήσεις γιατι ειναι ένα "εργαλείο "..
Θα πεί κανείς μα αφου ασ πούμε τα ελληνικά είναι τόσο καλή γλώσσα γιατί δεν έχουμε δει πρόοδο
κι όμως χρησιμοποιούμε γυρώ στις 800 λέξεις απο την γλώσσα και συνήθως αναλονώμαστε με τα καθημερινά και αυστηρώς προσωπικά περιβάλλοντα...
Υπάρχουν και άλλες γλώσσες όπως τα πολωνικά ή τα γερμανικά οι οποίες είναι επίσης πλούσιες και πάει λέγωντας.
Κοινή ρίζα τον γλωσσών είναι τα κάτι πρωτόγωνες-->φοινικικά --> ελληνικά' --> λατινικα --> σύγχρονες γλώσσες (χοντρικά ....)
Στους υπολογιστές έχουμε γλώσσα μηχανής -->kartes --> assembly --> compiled languages --> αλλες (και scripting )
Στους υπολογιστές γλώσσα( που είναι ικάνή) είναι αυτή που είναι turing complete(
http://en.wikipedia.org/wiki/Turing_complete )
Στις ανθρώπινες γλώσσες πρέπει να μπορούν να περιγράψουν π.χ αφηρημένες ένοιες με σαφήνεια κλπ κλπ
(Οι παρομειώσεις είναι πρόχειρες αλλά πιστέυω να το πιάσατε αυτό που θέλω να πώ)
Στους υπολογιστές (όπως τα βλέπω) υπάρχουν 2 μεγάλες κατηγορίες γλωσσών high level αυτές που είναι C Family και αυτές που δεν είναι
Οιι γλώσσες C family είναι αυτές που έχουν κυριαρχήσει
C,C++,Java,javascript,python,perl,php
(και ναι και η javascript ειναι turing complete και άλλες που δεν το περιμένει κανείς έυκολα

)
Θέλω να τονίσω εδώ για τις αρχιτεκτονικές και τις γλώσσες ότι γενικά είναι πιό γρίγορο ένα πρόγραμμα με ένα "γρήγορους" αλγορίθμους σε ένα αργό μηχάνημα παρά ένα πρόγραμμα με "αργούς" αλγορίθμους σε ένα γρηγορότερο.
Σε όλες τις γλώσσες πιό critical απο όλα είναι η επιλογή των σωστών αλγόριθμων καθώς και το optimization
Αμα γράψεις συνάρτηση σε c με pass by value για καθε κάλεσμα μιας συναρτησης θα έχεις και ένα αντίγραφο να σου τρώει μνήμη και επίσης τον χρόνο να κάνει όλο αυτό ο επεξεργαστής για αυτό υπάρχουν και οι pointers στα ορίσματα αλλά και οι function pointers.
Υπάρχουν και άλλες βεβαίως απλα αυτές κυριαρχούν η C family
Όταν δώ κωδικα απο άλλη γλώσσα απο C family μου φένονται σαν αλιμπουρνέζικα ....

(είδικά σε ορισμένες γλώσσες τις οποίες δεν θα θίξω )
Τώρα κάποιες απο αυτές τις γλώσσες έχουν επίτηδες μια "ευκολία" και κάποιες μια "δυσκολία"
Ασ πούμε η Python είναι θεικά κατανοητή διαβάζεις κώδικα και είναι λες και διαβάζεις ένα κείμενο
Ενώ η javascript είναι τελείως obfuscated μπροστά της. Και να πώ εδώ ότι με την python κάνεις παπάδες
ενώ με την javascript παρόλο που γίνεται λίγοι είναι οι τρελλοί που θα την χρησιμοποιήσουν.
Και τώρα C/C++ εναντίον java
Θεωρώ μαζοχισμό να πρέπει να γράψεις ένα σωρο γραμμές για να καταλύξεις με ένα αρχείο jar.
Ενώ με τον ίδιο κόπο και λιγότερες η ίσες γραμμές κώδικα γράφεις κάτι σε C/C++ και πέρνεις binary για την αρχιτεκτονική σου!!! Με λίγη προσοχή είναι σαφώς πιό "γρήγορο" το πρόγραμμα.
και έχω και ένα ρητό who hez sun (ποιός την χέ... την sun)
πολλοί θα πούν ότι είναι "εμπορική" γλώσσα και μπλα μπλα μπλα . Ε και?
Άμα μπορείς να κάνεις κάτι σε άλλη γλώσσα γιατί να το κάνεις σε java?
Μπορεί να προγραμματίζεις σε java αλλά έχεις κάθε δικαίωμα να αναγνωρίζεις την "βλακεια" της γλώσσας
Έχω ένα φίλο που την μισεί και αναγκάζεται να την χρησιμοποιεί προς το παρών....
Και εδώ θα πώ για την python που και αυτή έχει byte code και είναι higly portable +1000 στην python
παίζει και σε κινητά με Symbian κλπ.
Και την χρησιμοποιεί και η Google και η NASA και ένα σώρο άλλοι .
Επίσης μια χαρά κάνει και για critical εφαρμογές άμα είναι bug free ο κώδικας όλα καλά!!!!!!!
Επειδή εδώ στην ελλάδα μάθαμε το κολ.. net framework και τα windows και μας έχουν δέσει χεροπόδαρα
δεν χάθηκε καμιά ελπίδα ακόμα. Δεν υπάρχει μόνο net framework για windows και java για τα άλλα .. έλεος
Στο χέρι μας είναι να χρησιμοπούμε και καλύτερες γλώσσες!!!
Πέρα από όλα τα καλά που έχει η python όπως readability, introspection ,modularity,portability
έχει και extensibility μπορείς δηλαδη εκεί που θέλεις ταχύτητα να γράψεις σε άλλη γλώσσα όπως C/C++
Συγνώμη αλλά το γεγονός ότι σε κάποια πανεπιστήμια στο εξωτερικό χρόοοονια τώρα (απο το 98 περίπου) μαθαίνουν python είναι πολύ καλό!!
Το ότι μαθαίνουν java και pascal στα ελληνικά μου φένεται απλα βλακεία
Πρώτα πρέπει να μάθει κανείς python για να καταλάβει ευκολότερα διάφορα πράγματα και να σκεφτεται αλγοριθμικά
Ζητω η python και C /C++ Αυτά
