Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Discussions


Index du Forum » Discussions » supprimé
Inikiwi Hors ligne Membre Points: 594 Défis: 8 Message

supprimé

Posté le 04/11/2021 12:12

suprimmé


Lephenixnoir En ligne Administrateur Points: 24673 Défis: 170 Message

Citer : Posté le 04/11/2021 13:59 | #


On sent que tu mélanges quelques trucs.

je souhaite créer un programme qui permet d’exécuter un langage interprété en Multi taches.

Si tu développes un programme pour exécuter un langage interprété (aussi appelé interpréteur), ça veut dire que tu es en train de créer un langage de programmation.

Le multi-tâche c'est surtout une notion de matériel (processeur avec plusieurs threads/coeurs) ou d'OS (ordonnancement, y compris sur un seul coeur). Et sur la calculatrice il n'y a ni l'un ni l'autre. Tu peux programmer le multi-tâche dans l'interpréteur de ton langage, mais il ne faut pas oublier que c'est pas "normal".

Ensuite, « implémentation de syscalls » c'est si tu es en train de créer un OS (ou un kernel).

Tu as l'air d'être parti pour créer un langage de programmation, donc « implémenter des syscalls » ça n'a aucun sens. Ton interpréteur (que tu crées) va utiliser les syscalls fournis pas l'OS (que tu ne crées pas) pour faire son job. C'est pareil que ce soit sur la calto ou la DS (il faudra juste que tu aies deux versions du code bas-niveau : une qui appelle les syscalls de la calculatrice, une qui appelle ceux de la DS - probablement via une bibliothèque).

Au départ je voulait utiliser lua, lua a déjà été porté plusieurs fois mais il y avais un inconvenant c'est juste du lua... C'est le langage lua avec des fonction pré-compilé, pas de librairies externe codé en c ou lua. Et ça prendra du temps de tout recoder.

Je ne comprends pas vraiment les problèmes que tu décris. Le language Lua a des fonctions précompilées mais supporte aussi des libs externes en Lua, par exemple LuaFX peut en charger si ma mémoire est bonne. Et sinon tu peux l'ajouter, c'est plus simple que de créer un langage. Je ne vois pas non plus que ce que tu imagines recoder qui prendrait du temps ?

Dans tous les cas ton langage Basic/Asm a l'air correct, il n'y a rien de bien méchant. Note que l'assembleur ne permet pas de faire des calculs compliqués en une seule ligne dans le style (A×B+cos(θ)sin(ϕ)-X)→Y donc c'est vraiment pas agréable de coder des trucs compliqués avec.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Inikiwi Hors ligne Membre Points: 594 Défis: 8 Message

Citer : Posté le 05/11/2021 13:29 | #


| OpCode | arg1 | next  | arg2 | end   |
----------------------------------------
| 2 byte |  ~   | 1byte |  ~   | 1byte |


Je pense avoir trouvé une bonne structure!
ps: l’édition de code sans monospace est horrible changez ça dans les balises de code!

Ajouté le 12/03/2022 à 13:04 :
Salut, en ce moment je crée weblua, j'ai déjà une version fonctionnelle. Le principe est de créer un serveur http natif en c++ avec du lua.
voici le code de demo:
local function callback()
    print("callback");
end

weblua.add("/","test.html")
weblua.add("/callback/","test.html", callback)

output:
sudo weblua .
lua register ended
new url: / test.html
new url, callback: /callback/ test.html
lua script   ended
GET /callback/ HTTP/1.1 -> 200
callback
GET /favicon.ico HTTP/1.1 -> 404
GET / HTTP/1.1 -> 200
GET /callback/ HTTP/1.1 -> 200
callback


LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 158 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd