Αυτή είναι μια κατηγορία γλωσσών προγραμματισμού υψηλού επιπέδου που μοιράζονται ένα κοινό χαρακτηριστικό – δεν διαθέτουν ούτε χρησιμοποιούν τύπους δεδομένων. Οι τύποι δεδομένων είναι συγκεκριμένοι τύποι δεδομένων, όπως συμβολοσειρά που μπορεί να περιέχει κείμενο ή Boolean που μπορεί να περιέχει μόνο τιμές true/false. Φυσικά, αυτές οι γλώσσες εξακολουθούν να χρησιμοποιούν δεδομένα, αλλά δεν αναγνωρίζουν τύπους δεδομένων.
Το Technipages Explains Typeless
Η συντριπτική πλειοψηφία των γλωσσών προγραμματισμού κάνει διάκριση μεταξύ τύπων δεδομένων. Αυτό σημαίνει ότι κάθε είδους δεδομένα που εισάγονται πρέπει να ορίζονται ως τύπος δεδομένων. Υπάρχουν πολλά και μπορεί να διαφέρουν ελαφρώς από γλώσσα σε γλώσσα, αλλά τα κοινά περιλαμβάνουν συμβολοσειρές, floats, ακέραιους και Booleans. Εάν τα δεδομένα δηλωθούν ως λάθος τύπος δεδομένων (για παράδειγμα, γράμματα σε μια μεταβλητή μόνο με αριθμούς), αυτό μπορεί να προκαλέσει προβλήματα και να αποτρέψει την εκτέλεση ή τουλάχιστον τη σωστή εκτέλεση ενός προγράμματος.
Ενώ το περιεχόμενο μιας μεταβλητής μπορεί να αλλάξει, ο τύπος δεδομένων της συνήθως δεν μπορεί - τα δεδομένα πρέπει να μετακινηθούν ή να αντιγραφούν σε μια νέα μεταβλητή. Στις άτυπες γλώσσες, αυτό δεν συμβαίνει. Οι μεταβλητές και τα δεδομένα εξακολουθούν να υπάρχουν και μπορούν να λειτουργήσουν με τον ίδιο τρόπο που λειτουργούν σε άλλες γλώσσες, αλλά αποτελεσματικά υπάρχει μόνο ένας τύπος δεδομένων - όλα τα δεδομένα αποθηκεύονται στον ίδιο τύπο, και επομένως, οποιαδήποτε μεταβλητή μπορεί να περιέχει οποιοδήποτε είδος δεδομένα. Αυτό μπορεί να αποτρέψει ορισμένα ζητήματα από το να συμβούν – συγκεκριμένα, σφάλματα που προκαλούνται από εσφαλμένες δηλώσεις – αλλά μπορεί είναι επίσης μια ταλαιπωρία, καθώς είναι αδύνατο να δοκιμάσετε στο μέσο του προγράμματος εάν μια συγκεκριμένη μεταβλητή είναι συγκεκριμένη τύπος.
Οι γλώσσες χωρίς τύπο περιλαμβάνουν για παράδειγμα τις TCL, Rexx και BLISS. Οι κοινές γλώσσες όπως η Java, η C++ και η Python είναι όλες πληκτρολογημένες.
Σε μια τέτοια γλώσσα, υπάρχει ουσιαστικά μόνο ένας τύπος δεδομένων, έτσι ώστε μια μεταβλητή να μπορεί να αποθηκεύσει οποιονδήποτε τύπο δεδομένων (και ο τύπος των δεδομένων που αποθηκεύονται σε μια μεταβλητή μπορεί να αλλάξει καθώς εκτελείται το πρόγραμμα). Μια γλώσσα προγραμματισμού (όπως η JavaScript) είναι ιδανική για scripting, στην οποία οι μεταβλητές μπορεί να αντιπροσωπεύουν σύστημα υπολογιστή πόρους ή στοιχεία επιπλέον των τύπων δεδομένων που συνήθως απαντώνται στον προγραμματισμό με έντονη ή αδύναμη πληκτρολόγηση Γλώσσες. Μια γλώσσα επιτρέπει την ταχεία ανάπτυξη προγράμματος και τη μέγιστη ευελιξία, αλλά δεν πραγματοποιείται έλεγχος τύπου. Για αυτόν τον λόγο, τα σφάλματα ενδέχεται να μην εντοπιστούν έως ότου εκτελεστεί ο κώδικας. Δείτε τύπο δεδομένων, JavaScript, γλώσσα δέσμης ενεργειών, ισχυρή πληκτρολόγηση, τύπος, έλεγχος τύπου, αδύναμη πληκτρολόγηση.
Κοινές χρήσεις του Typeless
- Οι γλώσσες χωρίς τύπο δεν χρησιμοποιούν παραδοσιακούς τύπους δεδομένων για την κατηγοριοποίηση δεδομένων.
- Οι μεταβλητές σε γλώσσες χωρίς τύπο μπορούν να αποθηκεύσουν οποιοδήποτε είδος δεδομένων.
- Οι γλώσσες χωρίς τύπο δεν δίνουν προτεραιότητα στην ασφάλεια τύπων.
Συνήθεις κακές χρήσεις του Typeless
- Οι γλώσσες χωρίς τύπο δεν απαιτούν πληκτρολόγιο για πληκτρολόγηση.