Il existe certaines différences entre Lex et Flex, mais vous devez abuser de Lex pour rencontrer les problèmes avec Flex. (J'ai un programme qui abuse de Lex et ne fonctionne pas sous Flex, par conséquent.) Ceci est principalement dans le domaine de la saisie d'entrée; dans Lex, vous pouvez fournir votre propre code d'entrée et modifier le flux de caractères; Flex ne vous laissera pas faire ça.
Yacc et Bison sont assez compatibles, même si Bison a quelques astuces supplémentaires.
Vous ne pouvez probablement pas trouver des copies légitimes de (l'original, AT versions & T de) Lex et Yacc pour installer sur Ubuntu. Je ne dirais pas nécessairement que c'est impossible, mais je n'en suis pas conscient. Flex et Bison sont facilement disponibles et sont équivalents dans la plupart des cas. Vous pouvez également trouver divers programmes alternatifs et approximativement équivalents du monde de BSD. Lex et Yacc sont gérés par les détenteurs de licence Unix SVRx - des sociétés telles que IBM (AIX), HP (HP-UX) et Sun (Solaris) ont des versions modifiées de Lex et Yacc à leur disposition. MKS fournit également MKS Lex et MKS Yacc; Cependant, le Yacc a au moins quelques extensions non standard.
Flex et Bison sont gratuits. (AT & T) Lex et Yacc ne le sont pas.
Il n'y a pas de version 2.5.35 de lex - vous utilisez la version 2.5.35 de Flex, elle s'identifie simplement comme 'lex' si vous l'appelez 'lex' –