µLua DS - Forum officiel | Official forum Index du Forum

µLua DS - Forum officiel | Official forum
Le bon endroit pour en savoir plus sur MicroLua et pour parler de vos projets ! | The right place to learn more about MicroLua and talk about your projects !

 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer   ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

[Lib] Brainf_ck.lua

 
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Coin du dév' -> Librairies
Sujet précédent :: Sujet suivant  
Auteur Message
Thomas99


Hors ligne

Inscrit le: 12 Avr 2012
Messages: 141
Localisation: Le forum.

MessagePosté le: Mer 19 Juin 2013 - 19:40    Sujet du message: [Lib] Brainf_ck.lua Répondre en citant

Brainf_ck.lua
par Thomas99
 

Bibliothèque permettant de manipuler du code Brainf*ck en Lua (et µLua).

Elle permet actuellement de :
    - Compiler du code Brainf*ck en Lua
    - Générer un code Brainf*ck qui affiche un texte


Utilisation :
Tout d'abord, importez la lib :
Code:

bf = require("brainf_ck")


Doc' des fonctions :
Code:

bf.BftoLua( programme[, fonctionR][, fonctionW] )
Convertit un code Brainf*ck en code Lua, retourné sous forme de string.
Le code Lua retourne en string tout ce qu'il a écrit dans la console.
  • programme (string) : code Brainf*ck
  • functionR (string) : code Lua qui sera exécuté lors de la sortie d'un caractère dans la console (instruction Bf .) (par défaut : "io.write(string.char(t[v]))", où t[v] représente la valeur ascii du caractère à sortir)
  • functionW (string) : code Lua qui sera exécuté lors d'une demande d'entrée de l'utilisateur (instruction Bf ,) (par défaut : "t[v] = string.byte(io.read(1))", où t[v] représente la valeur ascii du caractère à entrer)
Code:

bf.BftoFunc( programme[, fonctionR][, fonctionW] )
Équivalent à BfToLua, excepté que le code Lua est retourné sous forme de fonction.

Code:

bf.runBf( programme[, fonctionR][, fonctionW] )
Équivalent à BfToLua, excepté que le code Lua est exécuté immédiatement et retourne en string tout ce que le programme Brainf*ck a écrit dans la console.

Code:

bf.stringToBf( texte )
Produit de façon très simple un programme Brainf*ck écrivant le message texte dans la console, et le retourne en string.

Exemple (µLua) :
Code:

bf = require("brainf_ck") -- on importe la lib
texte = bf.runBf("++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.") -- on exécute le programme Brainf*ck

while not Keys.newPress.Start do
    Controls.read()

    screen.print(SCREEN_UP, 5, 5, texte) -- on affiche sur l'écran ce qu'a retourné runBf, c'est à dire ce qu'a écrit le programme Brainf*ck dans la console

    screen.print(SCREEN_UP, 5, 180, "Appuyez sur Start pour quitter.", Color.new(15, 15, 15))
    
    render()
end

bf = nil
texte = nil
Affiche le classique "Hello World!" grâce à du code Brainf*ck.


Téléchargement et changelog :
La bibliothèque est distribué sous licence zlib, regardez à l'intérieur du fichier pour en savoir plus.

v0.1b (19/06/2013) (dernière version) :
    - Ajout de paramètres facultatifs à la fonction BfToLua()
    - Publication sur le forum (bah oui)
v0.1 :
    - 1ère version a avoir un numéro de version Confused
     

_________________
Publié : ctrµLua, Candran
A publier : TCPDebugger, FastShell
A finir : µPortal, LLUL, µStore, serveur wifis, microlua.js, d'autres trucs
Mon site \o/


Dernière édition par Thomas99 le Jeu 20 Juin 2013 - 18:15; édité 11 fois
Revenir en haut
Visiter le site web du posteur
Publicité






MessagePosté le: Mer 19 Juin 2013 - 19:40    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
Reylak
Administrateur

Hors ligne

Inscrit le: 24 Nov 2008
Messages: 2 838
Localisation: Toulouse

MessagePosté le: Mer 19 Juin 2013 - 23:15    Sujet du message: [Lib] Brainf_ck.lua Répondre en citant

Ça sert à rien mais j'aime l'idée :p
_________________


Plein d'infos sur le SourceForge !


Revenir en haut
Visiter le site web du posteur MSN Skype
geeker


Hors ligne

Inscrit le: 23 Déc 2012
Messages: 363

MessagePosté le: Jeu 20 Juin 2013 - 16:39    Sujet du message: [Lib] Brainf_ck.lua Répondre en citant

Okay C'est super, surtout pour des algos de cryptage légers !
_________________
Beta-testeur de l'extrème
Tox: FFBDC8B34DC3CDE51F8F1CB0A628147DE740ACD1D44682EB5492A681F6541E32E8D8BB6052B3
CtrµLua: ctrulua.github.io
Des p'tits true, des p'tits true, toujours des p'tits true ...


Revenir en haut
Visiter le site web du posteur
thermo_nono
Modérateur

Hors ligne

Inscrit le: 31 Déc 2008
Messages: 2 415
Localisation: La Géhenne

MessagePosté le: Jeu 20 Juin 2013 - 17:46    Sujet du message: [Lib] Brainf_ck.lua Répondre en citant

Mr. Green  je ne connaissais pas BrainF..k, ça a l'air un peu spécial comme langage.. 
J'apprécie l'originalité  Okay
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Revenir en haut
Visiter le site web du posteur MSN
Negi


Hors ligne

Inscrit le: 16 Avr 2013
Messages: 103
Localisation: Somewhere around Pluto

MessagePosté le: Jeu 20 Juin 2013 - 18:00    Sujet du message: [Lib] Brainf_ck.lua Répondre en citant

Nice la lib ! o/
Et BrainF*ck c'est...Pas très accueillant :
++++++++++++++++++[>++>+++>++++>+++++>++++++>+++++++<<<<<<-]++++++++++++++++++>>>.>>-------.+++++++..+++.<<<<----.>>>---.>.+++.------.--------.<<<<.+.


Par exemple,  veut dire "Hello World !".
_________________
Projet Actif : mkdz

φ

µStore
LLUL
Civi
HS-SRPG
Beaucoup d'autres...Trop T_T



Revenir en haut
Visiter le site web du posteur GTalk/Jabber
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 21:48    Sujet du message: [Lib] Brainf_ck.lua

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Coin du dév' -> Librairies Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | Creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com