Πρόσκληση για συμμετοχή σε open source πρόγραμμα εκτέλεσης αλγορίθμων

Ξεκίνησε από alkisg, 02 Οκτ 2007, 12:26:44 ΠΜ

« προηγούμενο - επόμενο »

pgrontas

[quote author=alkisg link=topic=1077.msg6498#msg6498 date=1191405990
Υ.Γ. για τα δεδομένα: αν μπορούσαμε να προτείνουμε να διορθωθούν στο βιβλίο οι δηλώσεις και να γίνουν //Δεδομένα: Μ, Ν, table[Μ, Ν]// θα γλυτώναμε πολύ κόπο...  :-\
[/quote]

Ναι έχεις δίκιο. Έχω αρχίσει και το σκέφτομαι και είναι λίγο μπέρδεμα.
Μήπως πριν αρχίσουμε την υλοποίηση θα πρέπει να οργανωθούμε κάπως?
Πχ. να δούμε όλοι μια γενική αρχιτεκτονική της εφαρμογής, να φτιάξουμε κάποιο project στο sourceforge ϊσως για source control?
Programs must be written for people to read, and only incidentally for machines to execute - Harold Abelson

alkisg

Για source control είχα ξεκινήσει να σας γράφω σε προηγούμενο μήνυμα αλλά το μετάνιωσα για να μην σας τρομάξω!

Λοιπόν, αν είμαστε 5-6 άτομα με καλά χωρισμένα καθήκοντα, τα code versioning systems θα μας φάνε αντί να μας κερδίσουν χρόνο. Από την άλλη, εγώ προσωπικά θα το προτιμούσα έστω και μόνο για την εμπειρία του να δουλέψουμε σε "κανονικό" team.
Well, it's up to you: προτιμάτε κανονικό project εξ' αρχής στο sourceforge με subversion σαν code versioning system ή απλά έναν ftp server, ένα googlepages ή κάτι σχετικό που απλά να μας αφήνει να κάνουμε upload / download;

Για αρχιτεκτονική: τα κομμάτια που ξεκινήσαμε μέχρι στιγμής είναι καλώς ορισμένα και ανεξάρτητα της υπόλοιπης υλοποίησης, δεν υπάρχει πρόβλημα.
Μόλις δω λίγο αυτό που έλεγα με την δοκιμή εκτέλεσης ενός αλγορίθμου, θα ποστάρω και τα υπόλοιπα περί αρχιτεκτονικής.
Προβληματίζομαι στο ότι στην Javascript δεν υπάρχουν threads και έτσι ο κώδικας θα πρέπει να τρέχει με SetTimeOut. Το κακό με αυτό είναι ότι δεν μπορούμε να παράγουμε μονοκόμματο κώδικα, κάθε εντολή θα πρέπει να εκτελείται τελείως ανεξάρτητα, να σταματάει η εκτέλεση και να συνεχίζεται μετά μέσω της SetTimeOut.

pgrontas

Εγώ προσωπικά θα προτιμούσα να έχουμε source control. Νομίζω πως το sourceforge πρέπει να είναι καλό αν και δεν το έχω δουλέψει ο ίδιος.
Ό,τι θέλουν οι περισσότεροι.
Programs must be written for people to read, and only incidentally for machines to execute - Harold Abelson

alkisg

Οπότε (Γιώργο; Νίκο; ) μάλλον πάμε για sourceforge.
Για βρείτε και ένα project name. Δεν αλλάζει εύκολα στη συνέχεια. Π.χ. http://activityspace.sf.net

Τι λέτε για pseudoglossa? :)

gouvasg

no problem,

για το όνομα... greekpseudocode να είναι και διεθνώς κατανοητό? (μην το δει και κανένας ξένος :) )

Γεώργιος Γκούβας
Μηχ. Η/Υ-Σ
www.gouvas.eu

evry


ευχαριστώ πολύ για τις πληροφορίες (όπως κατάλαβες θα σε τρελάνω στις ερωτήσεις τώρα που ξεκινάει και το  project)
Για τις λέξεις εννοούσα ότι στον κώδικα του λεκτικού αναλύτη απλά θα αλλάξεις τα tokens. Έτσι δεν είναι? και τα ονόματα των identifiers και κάποιων συμβόλων αλλά η δομή του αναλυτή δεν είναι η ίδια?

Παράθεση από: alkisg στις 03 Οκτ 2007, 01:06:30 ΜΜ

Για real time syntax checking: αυτός συνήθως γίνεται από κανονικό parser σε ένα background thread. Recursive descent όπως του Διερμηνευτή δεν κάνουν, γιατί αυτοί επισημαίνουν μόνο το πρώτο λάθος, χρειάζεται μη αναδρομικός, π.χ. με bison/flex και τέτοια. Και φυσικά το syntax editing component χρειάζεται να υποστηρίζει curly underlining.

Για τον highlighter: δεν αλλάζουμε απλά τις λέξεις, χρειάζεται λεκτικός αναλυτής (συνήθως - δεν έχω δει τις λεπτομέρειες του codepress). Μικρός είναι, έστειλα έναν που έχω φτιάξει σε php στο Γιώργο μήπως τον βοηθήσει.

Πάντως σοβαρά καλύτερα να κάνεις plugin για το Eclipse παρά να ξανα-ανακαλύπτεις τον τροχό εξ' αρχής. Ή, αν δουλέψεις σε C++, plugin για το visual studio ή το codeblocks.

Υ.Γ. για τα δεδομένα: αν μπορούσαμε να προτείνουμε να διορθωθούν στο βιβλίο οι δηλώσεις και να γίνουν //Δεδομένα: Μ, Ν, table[Μ, Ν]// θα γλυτώναμε πολύ κόπο...  :-\
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

evry

ψηφίζω pseudoglossa

Παράθεση από: gouvasg στις 04 Οκτ 2007, 12:37:41 ΠΜ
no problem,

για το όνομα... greekpseudocode να είναι και διεθνώς κατανοητό? (μην το δει και κανένας ξένος :) )


What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

alkisg

Παράθεση από: evry στις 04 Οκτ 2007, 12:43:52 ΠΜ
Για τις λέξεις εννοούσα ότι στον κώδικα του λεκτικού αναλύτη απλά θα αλλάξεις τα tokens. Έτσι δεν είναι?

Όχι. Διαφορετικές γλώσσες χρειάζονται διαφορετικό λεκτικό αναλυτή (εννοώ τον κώδικα, όχι τα tokens). Για παράδειγμα, η Basic με τη ΓΛΩΣΣΑ είναι πολύ κοντά λεκτικά, αλλά σκέψου έναν highlighter για php, που να χρωματίζει και HTML:
Κώδικας: php
<p class="test">This <i>is highlighted</i> as html.
<br>
<?php
echo "This should be highlighted as php.";
echo <<HEREDOC
<b>Again this is HTML</b>
/* This comment
is NOT valid here */
:HEREDOC
?>
...


Απολύτως καμία σχέση με τον ψευδοκώδικα. Το < στον ψευδοκώδικα σημαίνει μικρότερο, στην PHP επίσης, αλλά στα HTML κομμάτια είναι συνήθως αρχή δεσμευμένης λέξης. Ο highlighter θα πρέπει να κοιτάει και που βρίσκεται κάθε κομμάτι για να αποφασίσει για τη λεκτική του σημασία (π.χ. το comment παραπάνω).

Αν θες κώδικα πες μου να σου στείλω!

alkisg

Για το όνομα: αν είναι να το δούνε ξένοι, και αν (λέμε τώρα!) ποτέ αποφασίσουν να το μεταγλωττίσουν και να το χρησιμοποιήσουν, τότε το greek δεν είναι καλό να υπάρχει σαν μέρος του ονόματος, γιατί με κάθε μεταγλώττιση θα πρέπει να αλλάζει και όνομα το project!

gouvasg

Για το όνομα: δεν διαφωνώ για pseudoglossa.
για το highlighter: δεν δουλεύει με απλή αλλαγή των tokens, λεπτομέρειες ή αύριο ή την άλλη εβδομάδα...

Ευριπίδη το κοιτάζω.

άλκη που τον τρέχεις αυτό τον κώδικα; (άσχετο άλλα λείπει ένα ερωτηματικό :) )
Γεώργιος Γκούβας
Μηχ. Η/Υ-Σ
www.gouvas.eu

alkisg

Είναι κομμάτι από τον highlighter που έφτιαξα εδώ για το Στέκι για να χρωματίζονται τα [cοde=Ψευδογλώσσα] τμήματα και τα συνημμένα αρχεία .γλώσσα.
Η σχετική ανακοίνωση: https://alkisg.mysch.gr/steki/index.php?topic=405.0
Τι ερωτηματικό λείπει; Στο τέλος; Δεν σου έστειλα ολόκληρο το αρχείο, έχει παρακάτω κώδικα για μετατροπές από/σε Windows-1253/UTF8/UTF16 κτλ.

nikosdimos

Για το πως θα διαχειριζόμαστε τα αρχεία και εγώ ψηφίζω sourceforge. Πρώτον γιατί και εγώ θα ήθελα να έχω την εμπειρία ενός κανονικού team. Δεύτερον μπορεί στην αρχή να φαίνεται λίγο μπέρδεμα αλλά πιστεύω πως σε βάθος χρόνου θα μας βοηθήσει.

Τώρα όσον αφορά το όνομα δεν μπορώ να βοηθήσω. Δεν είμαι καλός στην απόδοση ονομάτων. Αλλά θα συμφωνήσω να μην το πούμε "greekpseudocode" για τον λόγο που είπε και ο alkisg πιο πάνω.

pgrontas

Programs must be written for people to read, and only incidentally for machines to execute - Harold Abelson

alkisg

ΟΚ, επομένως κάνω αίτηση για άνοιγμα project με το όνομα http://pseudoglossa.sourceforge.net.
Θα πρέπει κι εσείς να κάνετε αίτηση για εγγραφή σαν developers στο sourceforge, και στη συνέχεια μόλις εγκρίνουν το project να δηλώσετε συμμετοχή σ' αυτό.

Υ.Γ. για lisence βάζω GPL 2.0, έτσι;

nikosdimos

Παράθεση από: alkisg στις 04 Οκτ 2007, 11:29:08 ΠΜ
ΟΚ, επομένως κάνω αίτηση για άνοιγμα project με το όνομα http://pseudoglossa.sourceforge.net.
Θα πρέπει κι εσείς να κάνετε αίτηση για εγγραφή σαν developers στο sourceforge, και στη συνέχεια μόλις εγκρίνουν το project να δηλώσετε συμμετοχή σ' αυτό.

Υ.Γ. για lisence βάζω GPL 2.0, έτσι;

Εγώ έχω κάνει αίτηση για εγγραφή σαν developer. Όταν θα είναι έτοιμο το project θα δηλώσω συμμετοχή.

Τώρα όσον αφορά την άδεια δεν ξέρω και πολλά πράγματα περί GPL.