THMMY.gr

Ηλεκτρονικοί Υπολογιστές και Τεχνικά Θέματα => Προγραμματισμός (C, VB, Delphi, PHP, ASP...) => Topic started by: Turambar on December 11, 2009, 21:08:52 pm



Title: Lex, Flex, yacc, Bison
Post by: Turambar on December 11, 2009, 21:08:52 pm
Έχει κανείς ιδέα από τα παραπάνω εργαλεία που χρησιμοποιούνται για text parsing?

Τι είναι ακριβώς και πώς χρησιμοποιούνται?

Δε μπορώ να βγάλω σαφή άκρη.


Title: Re: Lex, Flex, yacc, Bison
Post by: SolidSNK on December 11, 2009, 21:24:20 pm
Parser generators. Εσύ δίνεις τους κανόνες, και αυτό σου φτιάχνει το πρόγραμμα που αναλύει κείμενο με βάση αυτούς τους κανόνες. Δηλαδή μπορείς να φτιάξεις parsers για γλώσσα προγραμματισμού ή scripting, parsers για configuration files κτλ κτλ. Το Bison χρησιμοποιείται μαζί με το flex. Εξαιρετικά ενδιαφέρον!


Title: Re: Lex, Flex, yacc, Bison
Post by: Turambar on December 11, 2009, 22:13:04 pm
μέχρι εδώ καλά.
Από εκεί και πέρα.
Πώς μπορώ να τους χρησιμοποιήσω.
Που είναι?
Σε τι γλώσσα είναι?

i have them lost


Title: Re: Lex, Flex, yacc, Bison
Post by: edenaxas on December 11, 2009, 23:05:08 pm
http://www.amazon.co.uk/flex-bison-John-Levine/dp/0596155972/ref=sr_1_1?ie=UTF8&s=books&qid=1260561876&sr=8-1


Title: deleted
Post by: BOBoMASTORAS on December 11, 2009, 23:23:43 pm
deleted


Title: deleted
Post by: BOBoMASTORAS on December 11, 2009, 23:35:47 pm
deleted


Title: Re: Lex, Flex, yacc, Bison
Post by: SolidSNK on December 12, 2009, 01:08:31 am
μέχρι εδώ καλά.
Από εκεί και πέρα.
Πώς μπορώ να τους χρησιμοποιήσω.
Που είναι?
Σε τι γλώσσα είναι?

i have them lost
Τόσο το bison όσο και το flex είναι γραμμένα σε C, ο πηγαίος κώδικας και των δύο βρίσκεται στις επίσημες ιστοσελίδες τους,  ενώ υπάρχουν και compiled πακέτα λογικά σε οοολες τις διανομές linux. Για windows πρέπει να έχουν βγει επίσης.

Τώρα για να τα "χρησιμοποιήσεις". O bob έδωσε παραδείγματα, αλλά η αλήθεια είναι πως το όλο αντικείμενο θέλει θεωρητική γνώση, την οποία για να πάρεις θέλει αρκετό διάβασμα με γραμματικές, GLR, LALR κτλ. Για το τι ρόλο παίζουν το flex και το bison, με κάλυψε ο προλαλήσας. Στο linux υπάρχει documentation και για τα δύο  το οποίο μπορείς να το δεις με την info. Εγώ από 'κει το βλέπω... α και υπάρχει ο bob :P

@bobomastoras ρε βγάλε τα <br> δε χρειάζονται σε code tag


Title: deleted
Post by: BOBoMASTORAS on December 12, 2009, 03:37:23 am
deleted


Title: Re: Lex, Flex, yacc, Bison
Post by: SolidSNK on December 12, 2009, 03:38:09 am
δεν είδα sorry...