IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Problèmes pour parser en Brainfuck


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Problèmes pour parser en Brainfuck
    Bonjour, je viens ici pour vous reporter un problème que je cherche a résoudre depuis 3 jours, en fait je n'arrive pas à parser l'instruction Loop en brainfuck plus particulierement lorsqu'il y a des Loops imbriqués.

    Par exemple pour un code brainfuck: je cherche à avoir à ça Le code dans l'ensemble serait pesant a lire car un peu long (mais pas trop) donc je prefere le séparer sous plusieurs liens hastebin.

    Parser: https://hastebin.com/ewafisoben.py


    Evaluation:
    https://hastebin.com/cuqezevaro.rb


    Bf.py (Le fichier que j'execute avec python)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    import parser
    import evalbf
     
    def execute(code, input_):
      instrs = parser.parse(code,[])
      state = evalbf.BF(input_)
     
    for instr in instrs:
        instr.eval(state)
     
    return "".join(state.output)
     
     
    print(execute("[[+]]",""))
    (PS: Je sais qu'un parser n'est pas indispensable pour brainfuck, mais je l'ai fait pour me simplifier l'évaluation)

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 738
    Par défaut
    Salut,

    Citation Envoyé par Mortim Voir le message
    Bonjour, je viens ici pour vous reporter un problème que je cherche a résoudre depuis 3 jours, en fait je n'arrive pas à parser l'instruction Loop en brainfuck plus particulierement lorsqu'il y a des Loops imbriqués.
    A proprement parler ce n'est pas un problème Python mais de construction d'un parseur et de "compilation".

    Intuitivement, vous voyez bien qu'une boucle, c'est un début avec éventuellement des conditions, un tas d'instructions à répéter suivies de la fin de la boucle. Et donc un contexte ré-entrant (on peut avoir des boucles de boucles) qu'on traite en général par la récursivité.

    Les techniques de bases sont enseignées avec l'écriture d'un parseur d'expressions arithmétiques (la boucle est une extension des parenthèses).
    Comme çà n'a rien de très nouveau, en cherchant un peu sur internet vous devriez trouver cours, exercices, exemples de code.

    Bon courage,

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci pour ton aide
    Dernière modification par Invité ; 26/02/2020 à 23h04. Motif: Inutile de citer intégralement le message précédent

Discussions similaires

  1. [fileupload] problème pour parser la requete
    Par jaimepasteevy dans le forum Struts 1
    Réponses: 12
    Dernier message: 24/04/2008, 12h02
  2. [DOM4J] Problème pour "parser" un fichier XML avec accents
    Par mlny84 dans le forum Format d'échange (XML, JSON...)
    Réponses: 7
    Dernier message: 26/11/2007, 19h06
  3. [JDOM] Problème pour parser un fichier XML [débutant]
    Par adn013 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 16/05/2007, 12h00
  4. [POO] Problème pour Parser une page XML
    Par Death83 dans le forum Langage
    Réponses: 18
    Dernier message: 29/08/2006, 10h15
  5. problème pour parser un fichier xml avec XML::Simple
    Par black_code dans le forum Modules
    Réponses: 3
    Dernier message: 30/01/2006, 19h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo