FYI... ---------- Forwarded message ---------- From: cyberpython <cyberpython [ at ] gmail [ dot ] com> Date: 2009/2/16 Subject: Πρόταση για το διαγωνισμό ανάπτυξης ΕΛΛΑΚ To: info [ at ] ellak [ dot ] gr ============================================== ΤΙΤΛΟΣ: Περιβάλλον ανάπτυξης για τη "ΓΛΩΣΣΑ" ============================================== Περίληψη: Δημιουργία ενός cross-platform περιβάλλοντος ανάπτυξης για τη γλώσσα προγραμματισμού "ΓΛΩΣΣΑ". Το τελικό αποτέλεσμα θα αποτελείται από δύο τμήματα: - Μία εφαρμογή γραμμής εντολών που θα επιτρέπει την εκτέλεση προγραμμάτων γραμμένων στη "ΓΛΩΣΣΑ" (μεταγλωττιστής) - Μία εφαρμογή που θα επιτρέπει την εύκολη συγγραφή και εκτέλεση (κάνοντας χρήση του μεταγλωττιστή) των προγραμμάτων του χρήστη μέσα από τη χρήση γραφικού περιβάλλοντος εργασίας. Ιστορικό -------- Ένα από τα μαθήματα τα οποία διδάσκονται οι μαθητές της Γ' τάξης του Ενιαίου Λυκείου είναι η "Ανάπτυξη Εφαρμογών Σε Προγραμματιστικό Περιβάλλον". Στα πλαίσια του συγκεκριμένου μαθήματος ο μαθητής έρχεται για πρώτη φορά σε επαφή με τον κόσμο του προγραμματισμού και της ανάπτυξης εφαρμογών χρησιμοποιώντας μία απλή, σχεδιασμένη για εκπαιδευτικούς σκοπούς, γλώσσα προγραμματισμού - τη "ΓΛΩΣΣΑ". Μέχρι αυτή τη στιγμή υπάρχουν δύο εφαρμογές που επιτρέπουν την ανάπτυξη προγραμμάτων στη ΓΛΩΣΣΑ, ο "Διερμηνευτής για τη ΓΛΩΣΣΑ" και η "ΓΛΩΣΣΟΜΑΘΕΙΑ". Και οι δύο εφαρμογές είναι εξαιρετικές αλλά έχουν ένα βασικό μειονέκτημα - προορίζονται για εκτέλεση αποκλειστικά σε λειτουργικά συστήματα Windows (και οι δύο εφαρμογές μπορούν να εκτελεστούν σε περιβάλλον GNU/Linux με χρήση του WINE με όλους τους περιορισμούς που συνεπάγεται αυτό). Επίσης, για τη χρήση του διερμηνευτή και στις δύο περιπτώσεις απαιτείται η χρήση γραφικού περιβάλλοντος, δηλαδή δεν είναι δυνατή η εκτέλεση του διερμηνευτή μέσα από τη γραμμή εντολών. Στόχοι ------ Δημιουργία εφαρμογής γραμμής εντολών για την εκτέλεση προγραμμάτων γραμμένων στη ΓΛΩΣΣΑ καθώς και εφαρμογής που θα επιτρέπει την εύκολη συγγραφή προγραμμάτων στη ΓΛΩΣΣΑ μέσα από τη χρήση γραφικού περιβάλλοντος εργασίας. Κύριο μέλημα αποτελεί οι εφαρμογές να είναι εκτελέσιμες σε όσο το δυνατόν περισσότερες πλατφόρμες και λειτουργικά συστήματα και για αυτό το λόγο η ανάπτυξη θα γίνει αποκλειστικά σε Java 6. Επίσης, η ανάπτυξη του μεταγλωττιστή θα γίνει με το εργαλείο SableCC που επιτρέπει την εύκολη αλλαγή του backend (οπότε ο μεταγλωττιστής μπορεί σχετικά εύκολα να μετατραπεί σε διερμηνευτή στο μέλλον). Όλο το λογισμικό θα είναι διαθέσιμο υπό την LGPL. Παραδοτέα --------- - Γραμματική για το μεταγλωττιστή (SableCC 3.x) - Κώδικας σε Java που θα υλοποιεί όλους τους στόχους παραπάνω - Public repo με τον κώδικα στο sourceforge.net - Τεκμηρίωση σε html μορφή - Tarball, πακέτα deb Χρονοδιάγραμμα -------------- - 5/3: Δημιουργία code hosting repository στο sourceforge - 15/3: Συγγραφή γραμματικής (SableCC) για το μεταγλωττιστή - 25/3: Έναρξη δημιουργίας του επεξεργαστή κώδικα - 25/4: Ολοκλήρωση μεταγλωττιστή και ενσωμάτωση (integration) με τον επεξεργαστή κώδικα - 15/5: Ολοκλήρωση τεκμηρίωσης μεταγλωττιστή και επεξεργαστή κώδικα - 25/5: Ολοκλήρωση όλων των παραδοτέων Γιατί εμένα ----------- Είμαι 23 ετών και σπουδάζω Πληροφορική στο Τμήμα Πληροφορικής του Οικονομικού Πανεπιστημίου Αθηνών. Ασχολούμαι με τον προγραμματισμό και την ανάπτυξη εφαρμογών για το desktop εδώ και 10 έτη και πιο συγκεκριμένα με εφαρμογές γραμμένες σε Borland Delphi 6, καθώς και J2SE (τα τελευταία 6). Επίσης έχω γνώσεις web development και βασικής επεξεργασίας raster και vector γραφικών. Χρησιμοποιώ αποκλειστικά GNU/Linux τα τελευταία δύο χρόνια και είμαι ενεργό μέλος της Ελληνικής Κοινότητας Του Ubuntu (http://www.ubuntu-gr.org/). Κάποια από τα projects με τα οποία έχω ασχοληθεί είναι τα παρακάτω: - Excelixis GNU/Linux distribution ( http://excelixis.wordpress.com/excelixis/ ) Διανομή GNU/Linux για software και web developers, βασισμένη στο Ubuntu - Lia ( http://cyberpython.net76.net/?page_id=4 ) Προσομοιωτής του απλού υπολογιστή των Les Goldschlager και Lister - OOSlideshow ( http://cyberpython.net76.net/?page_id=64 ) Εφαρμογή δημιουργίας slideshow videos για συστήματα GNU/Linux - IconLocator ( http://cyberpython.net76.net/?page_id=87 ) Απλή βιβλιοθήκη για την χρήση native εικονιδίων από εφαρμογές J2SE σε συστήματα με γραφικό περιβάλλον συμβατό με το FreeDesktop specification (Gnome, KDE, XFCE) - jChord/jDC ( http://cyberpython.net76.net/?page_id=18 ) Βιβλιοθήκη (jChord) που υλοποιεί το Chord DHT μέ χρήση του Java RMI καθώς και απλή p2p εφαρμογή (jDC) που κάνει χρήση της βιβλιοθήκης. Προσωπικά στοιχεία: Όνομα: Γεώργιος Επώνυμο: Μίγδος Διεύθυνση: Αριστοβούλου 56 Κάτω Πετράλωνα, Αθήνα Τηλέφωνο: 6984068104 ΑΦΜ: 130329620 ΔΟΥ: ΣΤ' ΑΘΗΝΩΝ Αναφορές -------- - "Διερμηνευτής Για Τη ΓΛΩΣΣΑ" : http://users.sch.gr/alkisg/ - "ΓΛΩΣΣΟΜΑΘΕΙΑ" : http://spinet.gr/glossomatheia/compiler/syntax/ -- Πριν εκτυπώσετε αυτό το μήνυμα, σκεφθείτε το περιβάλλον! Ένα χαρτί λιγότερο! - http://karounos.gr/blog/