Αποστολέας Θέμα: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας  (Αναγνώστηκε 10600 φορές)

komni

  • Θαμώνας
  • ***
  • Μηνύματα: 48
Καλησπέρα σε όλους,

Ονομάζομαι Κομνηνός και είμαι μαθητής Γ' λυκείου από τον Άλιμο.

Μέσα στην καραντίνα(Α και Β) ανέπτυξα έναν διερμηνευτή για την Γλώσσα τον οποίο μπορείτε να χρησιμοποιήσετε μέσω του φυλλομετρητή σας, χωρίς να κατεβάσετε κάποιο πρόγραμμα.

Λινκ: https://gloglossa.gr
(Δουλεύει σε όλες τις πλατφόρμες, δεν υποστηρίζει Internet Explorer)

Έχει σχεδόν πλήρη υποστήριξη για τη Γλώσσα, το μόνο που δεν μπορεί να καταλάβει αυτή τη στιγμή είναι η δήλωση σταθερών αλλά λογικά την επόμενη βδομάδα θα έρθει υποστήριξη και γι' αυτό.
Παρέχει πλήρης υποστήριξη για όλες τις λειτουργίες της Γλώσσας!

Ψάχνω για άτομα που θα βοηθήσουν να τον τεστάρω για bugs. Όποιος ενδιαφέρεται ας αφήσει το email του σε απάντηση ή ας επικοινωνήσει μαζί μου komninoschat@gmail.com 6940023003

Σκοπεύω να τον αναπτύξω πολύ περισσότερο, να προσθέσω υποστήριξη για παλαιότερους φυλλομετρητές, debugger, κλπ. Αυτό είναι η πρώτη έκδοση.


-- Τεχνικές Λεπτομέριες --

Ο parser και ο interpreter είναι γραμμένοι σε Typescript εξ ολοκλήρου(Δεν χρησιμοποίησα κάποιο εργαλείο parser generator).
Το Typescript γίνεται transpiled σε Javascript και έτσι μπορούν όλα αυτά να τρέχουν στον browser χωρίς επικοινωνία με κάποιο server.
Η ιστοσελίδα είναι γραμμένη σε Nuxt.js(Βασισμένο πάνω στο Vue.js).
Η ιστοσελίδα ΔΕΝ περιέχει κανένα κώδικα analytics και δεν συλλέγω κανένα δεδομένο χρηστών.
Ο κώδικας είναι open-source και μπορείτε να τον δείτε στο github μου: https://github.com/komninoschat/glo

« Τελευταία τροποποίηση: 24 Νοε 2020, 02:53:43 πμ από komni »

tdrivas

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 659
  • κάποτε έκαιγαν βιβλία,τώρα καίνε μυαλά...
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #1 στις: 19 Νοε 2020, 07:30:09 μμ »
Proud of my student...
Thanassis Drivas
BSc in Computer Science
MSc in Space Science Applications and Technologies

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 6011
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #2 στις: 19 Νοε 2020, 08:09:19 μμ »
Άξιος! Οι web τεχνολογίες (HTML5/Javascript/CSS) πλέον είναι υπερ-ώριμες για ένα τέτοιο εγχείρημα, και θα βοηθήσει αρκετούς μαθητές που έχουν πρόσβαση μόνο σε tablets/κινητά. Να μην παρασυρθείς μόνο και μειώσεις το διάβασμα για τις Πανελλαδικές, γιατί θα είναι κρίμα να φτιάξεις διερμηνευτή και να μην πάρεις 20 στην ΑΕΠΠ!

Να υποθέσω θα σε έχουμε συνάδελφο Πληροφορικό σε λίγα χρόνια;

bugman

  • Επισκέπτης
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #3 στις: 19 Νοε 2020, 09:08:33 μμ »
@komni
Καλή η προσπάθεια, της μετατροπής σε javascript.
1. Εκτός από τα μονά ' ' για εισαγωγικά αλφαριθμητικών θα πρέπει να βάλεις και τα διπλά " "
2. Η εξαγωγή σε αρχείο γίνεται σε UTF-8. πράγμα που σημαίνει ότι για να τρέξει στον διερμηνευτή του Άλκη πρέπει να ανοιχτεί με το πρόχειρο, και από εκεί να γίνει αντιγραφή και επικόλληση.
3. To "ανθρωπάκι" που τρέχει εμφανίζει αργά το κώδικα στην οθόνη, και συνεχίζει και όταν οι γραμμές κώδικα περάσουν τις προβαλλόμενες γραμμές. Δεν έχει νόημα να γίνεται κάτι τέτοιο

Δοκίμασα αυτόν τον κώδικα (έβγαλα τις σταθερές, και άλλαξα τα εισαγωγικά σε μονά)

Κώδικας: [Επιλογή]
ΠΡΟΓΡΑΜΜΑ Κυκλική_Ουρά
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Πίσω, Μπροστά, Ουρα[10], ι, Τιμή
ΑΡΧΗ
  Τιμή <- 0
  Πίσω <- 1
  Μπροστά <- 0
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    Ουρα[ι] <- 0
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 10 στοιχεία 1 έως 10
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι, Πίσω, Μπροστά, Ουρα)
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 5 στοιχείων
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΑΝ Μπροστά <> 0 ΤΟΤΕ
      ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
      ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
    ΑΛΛΙΩΣ
      ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 5 στοιχεία 11 έως 15
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι + 10, Πίσω, Μπροστά, Ουρα)
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 10 στοιχείων
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΑΝ Μπροστά <> 0 ΤΟΤΕ
      ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
      ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
    ΑΛΛΙΩΣ
      ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 2 στοιχεία 16 έως 17
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 2
    ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι + 15, Πίσω, Μπροστά, Ουρα)
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 3 στοιχείων
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 3
    ΑΝ Μπροστά <> 0 ΤΟΤΕ
      ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
      ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
    ΑΛΛΙΩΣ
      ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΙΑΔΙΚΑΣΙΑ Εισαγωγή_Στοιχείου(Α, Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Α, Πίσω, Μπροστά, Ουρα[10]
ΑΡΧΗ
  ΑΝ Πίσω = Μπροστά ΤΟΤΕ
    ΓΡΑΨΕ 'Η ουρά γέμισε, δεν θα βάλω το ', Α
  ΑΛΛΙΩΣ
    ΑΝ Μπροστά = 0 ΤΟΤΕ
      Μπροστά <- Πίσω
    ΤΕΛΟΣ_ΑΝ
    Ουρα[Πίσω] <- Α
    Πίσω <- Πίσω mod 10 + 1
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
ΔΙΑΔΙΚΑΣΙΑ Εξαγωγή_Στοιχείου(Α, Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Α, Πίσω, Μπροστά, Ουρα[10]
ΑΡΧΗ
  ΑΝ Μπροστά > 0 ΤΟΤΕ
    Α <- Ουρα[Μπροστά]
    Μπροστά <- Μπροστά mod 10 + 1
    ΑΝ Μπροστά = Πίσω ΤΟΤΕ
      Μπροστά <- 0
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
ΔΙΑΔΙΚΑΣΙΑ Δείξε(Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Πίσω, Μπροστά, Ουρα[10], ι
ΑΡΧΗ
  ΑΝ Μπροστά = 0 ΤΟΤΕ
    ΓΡΑΨΕ 'Η ουρά είναι άδεια'
  ΑΛΛΙΩΣ
    ΓΡΑΨΕ 'Αρχή Ουράς ', Μπροστά
    ΑΝ Μπροστά = Πίσω ΤΟΤΕ
      ΓΡΑΨΕ Ουρα[Μπροστά]
      ι <- Μπροστά mod 10 + 1
    ΑΛΛΙΩΣ
      ι <- Μπροστά
    ΤΕΛΟΣ_ΑΝ
    ΟΣΟ ι <> Πίσω ΕΠΑΝΑΛΑΒΕ
      ΓΡΑΨΕ Ουρα[ι]
      ι <- ι mod 10 + 1
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'Τέλος ουράς ', Πίσω
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

komni

  • Θαμώνας
  • ***
  • Μηνύματα: 48
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #4 στις: 19 Νοε 2020, 09:20:17 μμ »

komni

  • Θαμώνας
  • ***
  • Μηνύματα: 48
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #5 στις: 19 Νοε 2020, 09:28:53 μμ »
Άξιος! Οι web τεχνολογίες (HTML5/Javascript/CSS) πλέον είναι υπερ-ώριμες για ένα τέτοιο εγχείρημα, και θα βοηθήσει αρκετούς μαθητές που έχουν πρόσβαση μόνο σε tablets/κινητά. Να μην παρασυρθείς μόνο και μειώσεις το διάβασμα για τις Πανελλαδικές, γιατί θα είναι κρίμα να φτιάξεις διερμηνευτή και να μην πάρεις 20 στην ΑΕΠΠ!

Να υποθέσω θα σε έχουμε συνάδελφο Πληροφορικό σε λίγα χρόνια;

Ευχαριστώ για τα καλά σας λόγια. Δεν πολυασχολούμαι με πανελλήνιες γιατί θα φύγω αλλά καλά υποθέσατε.

Ερώτηση: Έχετε κάποιο test suite για διερμηνευτές της Γλώσσας το οποίο θα μπορέσω να χρησιμοποιήσω για να επιβεβαιώσω την λειτουργικότητα του δικού μου; Αν όχι θα σας ενδιέφερε/έχετε τον χρόνο να ασχοληθείτε με κάτι τέτοιο;

komni

  • Θαμώνας
  • ***
  • Μηνύματα: 48
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #6 στις: 19 Νοε 2020, 09:36:15 μμ »
@komni
Καλή η προσπάθεια, της μετατροπής σε javascript.
1. Εκτός από τα μονά ' ' για εισαγωγικά αλφαριθμητικών θα πρέπει να βάλεις και τα διπλά " "
2. Η εξαγωγή σε αρχείο γίνεται σε UTF-8. πράγμα που σημαίνει ότι για να τρέξει στον διερμηνευτή του Άλκη πρέπει να ανοιχτεί με το πρόχειρο, και από εκεί να γίνει αντιγραφή και επικόλληση.
3. To "ανθρωπάκι" που τρέχει εμφανίζει αργά το κώδικα στην οθόνη, και συνεχίζει και όταν οι γραμμές κώδικα περάσουν τις προβαλλόμενες γραμμές. Δεν έχει νόημα να γίνεται κάτι τέτοιο

Δοκίμασα αυτόν τον κώδικα (έβγαλα τις σταθερές, και άλλαξα τα εισαγωγικά σε μονά)

Κώδικας: [Επιλογή]
ΠΡΟΓΡΑΜΜΑ Κυκλική_Ουρά
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Πίσω, Μπροστά, Ουρα[10], ι, Τιμή
ΑΡΧΗ
  Τιμή <- 0
  Πίσω <- 1
  Μπροστά <- 0
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    Ουρα[ι] <- 0
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 10 στοιχεία 1 έως 10
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι, Πίσω, Μπροστά, Ουρα)
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 5 στοιχείων
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΑΝ Μπροστά <> 0 ΤΟΤΕ
      ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
      ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
    ΑΛΛΙΩΣ
      ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 5 στοιχεία 11 έως 15
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 5
    ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι + 10, Πίσω, Μπροστά, Ουρα)
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 10 στοιχείων
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    ΑΝ Μπροστά <> 0 ΤΟΤΕ
      ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
      ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
    ΑΛΛΙΩΣ
      ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Προσθήκη 2 στοιχεία 16 έως 17
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 2
    ΚΑΛΕΣΕ Εισαγωγή_Στοιχείου(ι + 15, Πίσω, Μπροστά, Ουρα)
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
!! Αφαίρεση 3 στοιχείων
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 3
    ΑΝ Μπροστά <> 0 ΤΟΤΕ
      ΚΑΛΕΣΕ Εξαγωγή_Στοιχείου(Τιμή, Πίσω, Μπροστά, Ουρα)
      ΓΡΑΨΕ 'Εξαγωγή ', Τιμή
    ΑΛΛΙΩΣ
      ΓΡΑΨΕ 'Λάθος Εξαγωγής, Η ουρά είναι άδεια'
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ Δείξε(Πίσω, Μπροστά, Ουρα)
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ

ΔΙΑΔΙΚΑΣΙΑ Εισαγωγή_Στοιχείου(Α, Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Α, Πίσω, Μπροστά, Ουρα[10]
ΑΡΧΗ
  ΑΝ Πίσω = Μπροστά ΤΟΤΕ
    ΓΡΑΨΕ 'Η ουρά γέμισε, δεν θα βάλω το ', Α
  ΑΛΛΙΩΣ
    ΑΝ Μπροστά = 0 ΤΟΤΕ
      Μπροστά <- Πίσω
    ΤΕΛΟΣ_ΑΝ
    Ουρα[Πίσω] <- Α
    Πίσω <- Πίσω mod 10 + 1
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
ΔΙΑΔΙΚΑΣΙΑ Εξαγωγή_Στοιχείου(Α, Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Α, Πίσω, Μπροστά, Ουρα[10]
ΑΡΧΗ
  ΑΝ Μπροστά > 0 ΤΟΤΕ
    Α <- Ουρα[Μπροστά]
    Μπροστά <- Μπροστά mod 10 + 1
    ΑΝ Μπροστά = Πίσω ΤΟΤΕ
      Μπροστά <- 0
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
ΔΙΑΔΙΚΑΣΙΑ Δείξε(Πίσω, Μπροστά, Ουρα)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: Πίσω, Μπροστά, Ουρα[10], ι
ΑΡΧΗ
  ΑΝ Μπροστά = 0 ΤΟΤΕ
    ΓΡΑΨΕ 'Η ουρά είναι άδεια'
  ΑΛΛΙΩΣ
    ΓΡΑΨΕ 'Αρχή Ουράς ', Μπροστά
    ΑΝ Μπροστά = Πίσω ΤΟΤΕ
      ΓΡΑΨΕ Ουρα[Μπροστά]
      ι <- Μπροστά mod 10 + 1
    ΑΛΛΙΩΣ
      ι <- Μπροστά
    ΤΕΛΟΣ_ΑΝ
    ΟΣΟ ι <> Πίσω ΕΠΑΝΑΛΑΒΕ
      ΓΡΑΨΕ Ουρα[ι]
      ι <- ι mod 10 + 1
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    ΓΡΑΨΕ 'Τέλος ουράς ', Πίσω
  ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

Ευχαριστώ για την βοήθεια!

1) Νόμιζα πως η Γλώσσα δέχεται μόνο τα μονά, θα το φτιάξω σήμερα.
2) Γιατί γίνεται αυτό; Σε ποιά κωδικοποίηση πρέπει να το εξάγω ώστε να είμαι συμβατός;
3) Όντως, δεν έχει κανένα νόημα. Απλά φαίνεται ωραίο σε Instagram Story και κάνει καλή φιγούρα  :P

Υ.Γ. Ίσως το διατύπωσα λάθως στο ποστ αλλά δεν γίνεται κάποια μεταγλώττηση του προγράμματος σε Javascript απλά ο διερμηνευτής ο ίδιος είναι γραμμένος σε Typescript και μεταγωλττίζεται σε Javascript όχι τα προγράμματα που τρέχει.

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 6011
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #7 στις: 19 Νοε 2020, 11:03:17 μμ »
> Ερώτηση: Έχετε κάποιο test suite...

Το καλύτερο είναι τα προγράμματα του βιβλίου! Αλλά αν θες δες και τα Παραδείγματα για το Διερμηνευτή σε μορφή .zip.

> Σε ποιά κωδικοποίηση πρέπει να το εξάγω ώστε να είμαι συμβατός;

$ file Φυσαλίδα.glo
Φυσαλίδα.glo: Little-endian UTF-16 Unicode text, with CRLF line terminators

Ο Διερμηνευτής μου χρησιμοποιεί Unicode με BOM, επειδή αυτό είναι το default για τα Windows, ώστε να μπορούν τα προγράμματα να ανοίγουν με το Notepad κλπ. Επίσης υποστηρίζει και άλλες μορφές όπως UTF-8 με BOM, ANSI κλπ.
Το UTF-8 χωρίς BOM είναι το default σε όλα τα άλλα λειτουργικά και στο Internet, εκτός από τα Windows. Αλλά πλέον και τα Windows άρχισαν να γίνονται φιλικά σε open source πρότυπα και τεχνολογίες, και όσο μπορούν προωθούν κι αυτά το UTF-8 χωρίς BOM, ακόμα και στο Notepad. Το "όσο μπορούν" είναι επειδή χωρίς BOM δεν είναι εύκολο να ξεχωρίσει κάποιος το UTF-8 από το ANSI.

Long story short, άστο UTF-8 χωρίς BOM μια χαρά το έχεις, και όποιος θέλει ας κάνει copy/paste...

nikosx

  • Ομάδα διαγωνισμάτων 2010
  • *
  • Μηνύματα: 375
  • ___
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #8 στις: 19 Νοε 2020, 11:07:15 μμ »
Συγχαρητήρια!!
Νίκος Ξένος
Καθηγητής Πληροφορικής
nxenos@sch.gr

dpa2006

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 830
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #9 στις: 19 Νοε 2020, 11:57:11 μμ »
Συγχαρητήρια!
τον χρησιμοποιώ ήδη.
Computer science (abbreviated CS or CompSci) is the scientific and practical approach to computation and its applications. It is the systematic study of the feasibility, structure, expression, and mechanization of the methodical processes (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information, whether such information is encoded in bits and bytes in a computer memory or transcribed engines and protein structures in a human cell.source:http://en.wikipedia.org/wiki/Computer_science

ilias_s

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 463
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #10 στις: 20 Νοε 2020, 12:07:30 πμ »
ΜΠΡΑΒΟ komni!!!

(μπορεί να ακουστεί χαζό αλλά... εγώ τρελάθηκα και με το night mode!)


dpa2006

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 830
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #11 στις: 20 Νοε 2020, 12:08:16 πμ »
Το night mode είναι εκπληκτικό!
Computer science (abbreviated CS or CompSci) is the scientific and practical approach to computation and its applications. It is the systematic study of the feasibility, structure, expression, and mechanization of the methodical processes (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information, whether such information is encoded in bits and bytes in a computer memory or transcribed engines and protein structures in a human cell.source:http://en.wikipedia.org/wiki/Computer_science

bugman

  • Επισκέπτης
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #12 στις: 20 Νοε 2020, 01:53:44 πμ »
@komni
1.Πληροφορίες για το BOM
https://en.wikipedia.org/wiki/Byte_order_mark
Στο UTF-8 βάζεις τρεις χαρακτήρες, 0xEF,0xBB,0xBF (γράφεις πρώτα αυτούς και μετά το κείμενο)
2. Πράγματι ο διερμηνευτής σου είναι ωραίος! Βλεπω στο Github ότι φτιάχνεις και μια Pascal. Μου θυμίζεις το κόλλημα που έφαγα και εγώ στην ηλικία σου με τις γλώσσες (θέλει προσοχή...εγώ ασχολούμε στα 54 ακόμα...)

George Eco

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 467
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #13 στις: 20 Νοε 2020, 02:02:21 πμ »
Χρήσιμο και πιο προσβάσιμο, μιας κι υπάρχουν παιδιά που δεν έχουν PC αλλά έχουν κινητό! Ένα μεγάλο ευχαριστώ που κάθισες κι έφτιαξες αυτό το πράγμα!

komni

  • Θαμώνας
  • ***
  • Μηνύματα: 48
Απ: ΝΕΟΣ διαδικτυακός διερμηνευτής της Γλώσσας
« Απάντηση #14 στις: 20 Νοε 2020, 04:03:55 πμ »
@nikosx @dpa2006 @ilias_s @bugman @George Eco - Ευχαριστώ πολυ!

@alkisg - Τέλεια! Θα τα δοκιμάσω αύριο

@alkisg @bugman - Όσον αφορά την κωδικοποίηση, έχω στείλει σε φίλους για να δω τι μπορεί να ανοίξει που και να καταλάβω αν τελικά θα χρειαστεί αλλαγή

Επίσης, μόλις έβαλα υποστήριξη για αλφαριθμητικούς με διπλά εισαγωγικά και σταθερές, οπότε νομίζω πως πλέον υπάρχει πλήρης υποστήριξη για όλα.
« Τελευταία τροποποίηση: 20 Νοε 2020, 02:18:19 μμ από komni »