Ωστόσο, σε αντίθεση με την περίπτωση της διαπροσωπικής επικοινωνίας όπου χρησιμοποιείται μία κοινή γλώσσα, στην επικοινωνία ανθρώπου-μηχανής υφίστανται δύο γλώσσες — μία που χρησιμοποιεί ο χρήστης για να εισάγει τα δεδομένα και μια που χρησιμοποιεί ο υπολογιστής για να παρουσιάσει τα δεδομένα.

Η χρήση των γραμματικών κανόνων είναι μια τεχνική που προέρχεται από την ανάλυση και μοντελοποίηση φυσικής γλώσσας και εφαρμόστηκε καταρχήν για να περιγράψει το διάλογο σε μια γλώσσα εντολών (command language). Η γλώσσα εντολών αποτελεί τον πιο παλιό τρόπο αλληλεπίδρασης. Οι εντολές μπορεί να είναι λέξεις ή συνδυασμοί πλήκτρων, ενώ ο χρήστης πρέπει να θυμάται τις εντολές (ενθύμηση αντί αναγνώριση) κάτι που μπορεί να ισχύει για έμπειρους χρήστες οι οποίοι μπορούν να εκτελέσουν γρήγορα σύνθετες λειτουργίες (π.χ. del *.exe). Παρακάτω εξετάζουμε τις πιο ενδεικτικές τεχνοτροπίες που αναπτύχθηκαν για την προδιαγραφή διεπαφών χρήστη και οι οποίες είναι βασισμένες σε γραμματικούς κανόνες.

Γραμματικές BNF

Υπήρξαν διάφορες εκδοχές της τεχνικής με πιο διαδεδομένη τη μορφή Backus Naur Form (BNF) που παρουσιάστηκε αρχικά από τον John Backus και στην συνέχεια βελτώθηκε από τον Peter Naur (Naur and Backus, 1960; Naur, 1963).

Σχεδίασε-γραμμή::= Διάλεξε-γραμμή +
Διάλεξε-σημεία +
Τελικό-σημείο
Διάλεξε-γραμμή::= Θέση-δρομέα +
ΠΙΕΣΕ-ΠΛΗΚΤΡΟ-ΠΟΝΤΙΚΙΟΥ
Διάλεξε-σημεία::= Διάλεξε-ένα |
Διάλεξε-ένα +
Διάλεξε-σημεία
Διάλεξε-ένα::= Θέση-δρομέα +
ΠΙΕΣΕ-ΠΛΗΚΤΡΟ-ΠΟΝΤΙΚΙΟΥ
Τελικό-σημείο::= Θέση-δρομέα +
ΠΙΕΣΕ-ΠΛΗΚΤΡΟ-ΠΟΝΤΙΚΙΟΥ-δις
Θέση-δρομέα::= [κενό]|
ΜΕΤΑΚΙΝΗΣΕ-ΠΟΝΤΙΚΙ +
Θέση-δρομέα
Πίνακας 2 - 4: Παράδειγμα κανόνων BNF

Στην ΕΑΥ, οι κανόνες BNF χρησιμοποιήθηκαν για να περιγράψουν τη γραμματική της διεπαφής χρήστη, θεωρώντας το συντακτικό επίπεδο του διαλόγου απομονωμένο και αγνοώντας τη σημασιολογία του. Ένα παράδειγμα