Η αναζήτηση της τέλειας γλώσσας

...συζητήσεις περί τεχνολογίας για hardware, software, υπηρεσίες, κλπ (για ubuntu ... στο Γενικά)

Συντονιστές: Geochr, ubuderix

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό greatst » 31 Μαρ 2009, 12:48

Dimitris έγραψε:...
ΠΡΟΚΛΗΣΗ: Καλέστε μια υπορουτίνα FORTRAN από ένα πρόγραμμα LISP :twisted:


Ουστ! :lol:
προσωπική ιστοσελίδαgreatst in Launchpad

Γνώσεις ⇛ Linux: Όσο ζω μαθαίνω ┃ Προγραμματισμός: Μια χαρά ┃ Αγγλικά: Εξαιρετικά

Mac mini (late 2009) (8GB RAM) με OS X 10.11.6 [και Ubuntu 16.04 Server amd64 και άλλες GNU/Linux εικονικές μηχανές με 2GB RAM, 128MB VRAM+3D_acceleration η κάθε μία].
Άβαταρ μέλους
greatst
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 639
Εγγραφή: 14 Δεκ 2008, 00:41
Τοποθεσία: Κατερίνη
Launchpad: greatst
IRC: greatst
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό sokoban4ever » 31 Μαρ 2009, 13:37

Χμμμ Τέλεια γλώσσα δεν μπορεί να υπάρξει είναι φιλοσοφικά απαράδεκτο το "τέλειο".
Εκτός και εαν κάποια φιλοσοφία είναι "τέλεια".... :) οπότε έχουμε να κάνουμε με μεταφυσική κλπ κλπ
όπου η πληροφορική δεν έχει να κάνει προφανώς και πόσο μάλλον οι υπολογιστές.
Οι άνθρωποι βέβαια έχουν την τάση να πιστέουν (για 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 και άλλες που δεν το περιμένει κανείς έυκολα :shock: )

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



Τώρα κάποιες απο αυτές τις γλώσσες έχουν επίτηδες μια "ευκολία" και κάποιες μια "δυσκολία"
Ασ πούμε η Python είναι θεικά κατανοητή διαβάζεις κώδικα και είναι λες και διαβάζεις ένα κείμενο :)
Ενώ η javascript είναι τελείως obfuscated μπροστά της. Και να πώ εδώ ότι με την python κάνεις παπάδες
ενώ με την javascript παρόλο που γίνεται λίγοι είναι οι τρελλοί που θα την χρησιμοποιήσουν.

Και τώρα C/C++ εναντίον java :mrgreen:
Θεωρώ μαζοχισμό να πρέπει να γράψεις ένα σωρο γραμμές για να καταλύξεις με ένα αρχείο jar.
Ενώ με τον ίδιο κόπο και λιγότερες η ίσες γραμμές κώδικα γράφεις κάτι σε C/C++ και πέρνεις binary για την αρχιτεκτονική σου!!! Με λίγη προσοχή είναι σαφώς πιό "γρήγορο" το πρόγραμμα.
και έχω και ένα ρητό who hez sun (ποιός την χέ... την sun) :lol: :lol:
πολλοί θα πούν ότι είναι "εμπορική" γλώσσα και μπλα μπλα μπλα . Ε και?
Άμα μπορείς να κάνεις κάτι σε άλλη γλώσσα γιατί να το κάνεις σε java?
Μπορεί να προγραμματίζεις σε java αλλά έχεις κάθε δικαίωμα να αναγνωρίζεις την "βλακεια" της γλώσσας
Έχω ένα φίλο που την μισεί και αναγκάζεται να την χρησιμοποιεί προς το παρών.... :cry:
Και εδώ θα πώ για την 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++
Αυτά :)
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό bullgr » 31 Μαρ 2009, 13:49

Συμφωνώ σε όλα με τον sokoban4ever... Τώρα την παλεύω με την C, αλλά αυτό που μου κέρδισε τις εντυπώσεις είναι η python... Πιστεύω ότι πρέπει να είναι η πρώτη γλώσσα προγραμματισμού με την οποία πρέπει να ξεκινήσει κάποιος...

Ο κώδικας της python είναι τόσο κατανοητός σε σημείο απίστευτο... Δεν θα ξεχάσω όταν πρωτοδιάβασα ένα listing στο Linuxformat και ενώ δεν είχα την παραμικρή ιδέα για python, το διάβασα και καταλάβαινα τα πάντα!!! Κατανόησα το πρόγραμμα, τι έφτιαχνε, τη λειτουργία του, τα πάντα... Και μιλάμε ότι δεν γνώριζα τίποτα για την python...

Η python είναι κατά τη γνώμη μου η κορυφαία γλώσσα προγραμματισμού για να ξεκινήσει κανείς...
ΕΠΙΤΡΕΠΕΤΑΙ ΝΑ ΠΕΣΕΙΣ, ΕΠΙΒΑΛΛΕΤΑΙ ΝΑ ΣΗΚΩΘΕΙΣ... HASTA SIEMPRE...
Άβαταρ μέλους
bullgr
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 1853
Εγγραφή: 10 Μάιος 2008, 21:45
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό mathpoet » 31 Μαρ 2009, 14:17

Έχω κουραστεί να ακούω το "η java είναι αργή", δε νομίζω ότι υπάρχει λόγος να επεκταθώ, είναι μια λάθος απλούστευση. Όποιος ενδιαφέρεται ας το ψάξει. Υπάρχουν άπειρα άρθρα με bechmarks, για την εξέλιξη της JVM, για τις επιστημονικές java εφαρμογές με μεγάλες απαιτήσεις απόδοσης κλπ...

Αλλά θέλω να επισημάνω κάτι άλλο. Λέγονται κάποιες απόψεις για διάφορες γλώσσες, αλλά δεν αναφέρεται πουθενά για ποια χρήση. Αυτό νομίζω είναι πιο σημαντικό. Γενικά αναφέρθηκαν κάποια πράγματα, όπως για τη σύγκριση java/swing με C++/qt. Αυτό έχει πολύ περισσότερο νόημα και κάνει πιο δημιουργική τη συζήτηση. Μια σύγκριση c, c++, java, python, lisp,... δεν νομίζω ότι οδηγεί πουθενά.
mathpoet
babeTUX
babeTUX
 
Δημοσιεύσεις: 72
Εγγραφή: 27 Νοέμ 2008, 16:27
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό Dimitris » 31 Μαρ 2009, 14:37

mathpoet έγραψε:Μια σύγκριση c, c++, java, python, lisp,... δεν νομίζω ότι οδηγεί πουθενά.

Δεν ήταν και ο αρχικός σκοπός (αν και κρυφά ήλπιζα να ξεσπάσει η διαμάχη :evil: ) Νομίζω ο sokoban4ever περιέγραψε ωραία τον προβληματισμό.

Και για να ξαναδιατυπώσω το ερώτημα. Ποια χαρακτηριστικά θα περιμένατε στην τέλεια γλώσσα; Lists, pointers ή arrays; Όλα μπορούν να χρησιμοποιηθουν για να κατασκευάσουν το άλλο. Aντικειμενοστρέφεια, δομικός προγραμματισμός ή functional programming; Όλα τα προγράμματα μπορούν να γραφούν και με τους 3 τρόπους, αλλά κάποια γράφονται ευκολότερα με τον ένα και κάποια με τον άλλο. Χρειαζόμαστε όλες τις δυνατότητες ή μήπως υπάρχει ένα υπερσύνολο που περιλαμβάνει όλα αυτά σαν ειδικές περιπτώσεις;
Άβαταρ μέλους
Dimitris
saintTUX
saintTUX
 
Δημοσιεύσεις: 1357
Εγγραφή: 13 Μάιος 2008, 13:57
Τοποθεσία: Θεσσαλονίκη
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό mathpoet » 31 Μαρ 2009, 15:14

Σε αυτό το ερώτημα μάλλον οι περισσότεροι πιστεύουμε ότι δεν υπάρχει τέλεια γλώσσα. Και κάποιοι ότι ούτε πρόκειται να υπάρξει :D
mathpoet
babeTUX
babeTUX
 
Δημοσιεύσεις: 72
Εγγραφή: 27 Νοέμ 2008, 16:27
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό mathpoet » 31 Μαρ 2009, 15:19

Επίσης όπως είπα και πιο πάνω, αναφέρονται τα χαρακτηριστικά αλλά όχι η χρήση. Αν θες μια γλώσσα που να κάνει για device drivers, AI, ωραία GUI, χρήσιμη στην εκμάθηση προγραμματισμού, γρήγορη, επαγγελματική αποκατάσταση,.... μάλλον δεν θα βρεις.
mathpoet
babeTUX
babeTUX
 
Δημοσιεύσεις: 72
Εγγραφή: 27 Νοέμ 2008, 16:27
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό greatst » 31 Μαρ 2009, 21:27

sokoban4ever έγραψε:...
Θεωρώ μαζοχισμό να πρέπει να γράψεις ένα σωρο γραμμές για να καταλύξεις με ένα αρχείο jar.
...


Δεν είναι έτσι όπως τα λες: ειδικά χρησιμοποιώντας ένα IDE όπως το Netbeans το "χαμαλίκι" κομμάτι του κώδικα γράφεται αυτόματα (πχ: σχεδιάζεις τις φόρμες και το IDE παράγει τον αντίστοιχο κώδικα) και το jar ειδικά παράγεται κατά το build χωρίς να κάνεις ΤΙΠΟΤΑ! 8-)

sokoban4ever έγραψε:...
Άμα μπορείς να κάνεις κάτι σε άλλη γλώσσα γιατί να το κάνεις σε java?
...


Για ... μια πλειάδα λόγων! ;)

sokoban4ever έγραψε:...
Ζητω η python και C /C++
...


Ζήτω η AmigaBASIC, η AMOS, η GWBASIC, η QBasic/QuickBasic, η Java, η C/C++, η python και ότι άλλο χρησιμοποιεί κανείς για να προγραμματίσει :D
προσωπική ιστοσελίδαgreatst in Launchpad

Γνώσεις ⇛ Linux: Όσο ζω μαθαίνω ┃ Προγραμματισμός: Μια χαρά ┃ Αγγλικά: Εξαιρετικά

Mac mini (late 2009) (8GB RAM) με OS X 10.11.6 [και Ubuntu 16.04 Server amd64 και άλλες GNU/Linux εικονικές μηχανές με 2GB RAM, 128MB VRAM+3D_acceleration η κάθε μία].
Άβαταρ μέλους
greatst
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 639
Εγγραφή: 14 Δεκ 2008, 00:41
Τοποθεσία: Κατερίνη
Launchpad: greatst
IRC: greatst
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό greatst » 31 Μαρ 2009, 21:32

bullgr έγραψε:...αυτό που μου κέρδισε τις εντυπώσεις είναι η python... Πιστεύω ότι πρέπει να είναι η πρώτη γλώσσα προγραμματισμού με την οποία πρέπει να ξεκινήσει κάποιος...
...


Έχω ασχοληθεί με python όσο χρειάστηκε για να ρίξω μια ματιά σε GTK+ (PyGTK) και δεν θα διαφωνήσω ότι έχει μια φιλοσοφία που σε αρκετούς θα φανεί απλή. Εάν πάντως είναι να ξεκινήσει κανείς με κάτι διαφορετικό από C/C++/Java, τότε εγώ θα πρότεινα και BASIC* αρκεί ο εκπαιδευτής να τη διδάξει σωστά!

*έχω υπόψη μου τις ενστάσεις του τύπου "εάν κάποιος ξεκινήσει με BASIC δεν θα μάθει ποτέ σωστό προγραμματισμό" κλπ και για το λόγο αυτό τονίζω το

έγραψε:αρκεί ο εκπαιδευτής να τη διδάξει σωστά


;)
προσωπική ιστοσελίδαgreatst in Launchpad

Γνώσεις ⇛ Linux: Όσο ζω μαθαίνω ┃ Προγραμματισμός: Μια χαρά ┃ Αγγλικά: Εξαιρετικά

Mac mini (late 2009) (8GB RAM) με OS X 10.11.6 [και Ubuntu 16.04 Server amd64 και άλλες GNU/Linux εικονικές μηχανές με 2GB RAM, 128MB VRAM+3D_acceleration η κάθε μία].
Άβαταρ μέλους
greatst
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 639
Εγγραφή: 14 Δεκ 2008, 00:41
Τοποθεσία: Κατερίνη
Launchpad: greatst
IRC: greatst
Εκτύπωση

Re: Η αναζήτηση της τέλειας γλώσσας

Δημοσίευσηαπό greatst » 31 Μαρ 2009, 21:44

Dimitris έγραψε:...Ποια χαρακτηριστικά θα περιμένατε στην τέλεια γλώσσα; Lists, pointers ή arrays; Όλα μπορούν να χρησιμοποιηθουν για να κατασκευάσουν το άλλο. Aντικειμενοστρέφεια, δομικός προγραμματισμός ή functional programming; Όλα τα προγράμματα μπορούν να γραφούν και με τους 3 τρόπους, αλλά κάποια γράφονται ευκολότερα με τον ένα και κάποια με τον άλλο. Χρειαζόμαστε όλες τις δυνατότητες ή μήπως υπάρχει ένα υπερσύνολο που περιλαμβάνει όλα αυτά σαν ειδικές περιπτώσεις;


Βαρύ και φιλοσοφικό το ερώτημα! Πάντως, εάν υπάρχει μια γλώσσα που να συνιστά το υπερσύνολο που αναφέρεις, αυτή θα μπορούσε να είναι η C++

Για όσους διαφωνούν, ακούω χαρακτηριστικά της Java (ως γλώσσας, μην πιάσουμε το API) που δεν τα παρέχει η C++ (προσοχή: ειλικρινά θέλω να μάθω τέτοια χαρακτηριστικά, γιαυτό ρωτάω!)
προσωπική ιστοσελίδαgreatst in Launchpad

Γνώσεις ⇛ Linux: Όσο ζω μαθαίνω ┃ Προγραμματισμός: Μια χαρά ┃ Αγγλικά: Εξαιρετικά

Mac mini (late 2009) (8GB RAM) με OS X 10.11.6 [και Ubuntu 16.04 Server amd64 και άλλες GNU/Linux εικονικές μηχανές με 2GB RAM, 128MB VRAM+3D_acceleration η κάθε μία].
Άβαταρ μέλους
greatst
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 639
Εγγραφή: 14 Δεκ 2008, 00:41
Τοποθεσία: Κατερίνη
Launchpad: greatst
IRC: greatst
Εκτύπωση

ΠροηγούμενηΕπόμενο

Επιστροφή στο Περί Τεχνολογίας