C' est quoi ce langage ?
Discussion fermée
Page 1 sur 3 12 DernièreDernière
Affichage des résultats 1 à 30 sur 72

C' est quoi ce langage ?



  1. #1
    Ludwig1

    C' est quoi ce langage ?


    ------

    Bonjour,

    C'est quoi ce language?

    Et ben c'est du Wordprocessing basé sur une machine informatique virtuelle. En fait cette façon de déveloper est pratquement inconue du Grand public, mais aussi inconue par une grande partie du monde informatique classique.

    A titre d'exemple, supposons que je n'ai pas de mot permettant de faire du calcul matriciel.

    Je commence par construire le mot de création d'une Matrice.


    je vais écrire


    : Matrice ( nom --- )

    Create ConpilTimeMatrice
    DOES> RunTimeMatrice

    ;

    à l'usage ça donne

    5 5 Matrice M1 \ Cré une matrice carrée 5 par 5 de nom M1
    5 5 Matrice M2 \ Crö une matrice carrée 5 par 5 de nom M2

    Multiplier deux matrices s'écrit

    M1 M2 M*

    Afficher les coéf de la matrice à l'écran ça donne

    M1 Mtype

    Afficher un message dans une boite de dialogue Windows Avec Bouton OK
    ça donne

    S" Un essai d'affichage" OK-BOX


    En clair, pas de syntaxe à apprendre,
    simplement écrire les mots .

    la seule syntaxe est le séparateur espace entre deux mots

    Cordialement

    Ludwig

    -----

  2. #2
    pm42

    Re : C' est quoi ce language ?

    C'est comme dans tous les posts de Ludwig du langage à pile type forth et c'est parfaitement connu des informaticiens.
    C'est la base des calculatrices HP classiques (RPN ou RPL), du PostScript, du PDF et de plein d'autres choses.
    L'exemple donné est largement incomplet, l'inversion des arguments qu'on met avant la fonction n'a pas que des avantages et il serait intéressant de nous montrer la "facilité" avec laquelle on fait une boucle, un if then else, une structure de données complexe...
    Éventuellement, du polymorphisme, des lambdas, de la programmation par interface et autres seraient aussi intéressants pour montrer l'intérêt de cette approche...

    Parce que créer des verbes pour manipuler des matrices est à la portée de très nombreux langages qui de plus permettent d'écrire :
    M = M1 * M2

    Au lieu de M* et autres joyeusetés.

  3. #3
    Ludwig1

    Re : C' est quoi ce language ?

    Salut,

    Je souhaite te faire remarquer qu'il y a lieu de respecter un principe fondamental,
    celui de la Notion de machine.
    Car l'ordinateur est une machine et rien d'autre. Au même titre qu'un centre d'usinage qui usine des pièces métalliques ou autres, l'ordinateur " usine" des informations si l'on peut dire ainsi.

    Un séquence d'usinage consiste à mettre en place la pièce, ( données ) puis à appeler l'outil adoc, ( fonction )
    puis exécuter le travail ( Usinage ) efin restituer la pièce usinée ( résultat du traitement )


    Ce principe est invariant. Il à le Grand Avantage d'imposer une structure stricte.

    que ce soit au Niveau du language machine ou au Niveau de Fonctions Windows ou tous ce que l'on voudra.

    En laguage machine ça donne par exemple:

    Préparation des données Opérations à réaliser

    4 # EBP SUB
    EBX 0 [EBP] MOV
    RET
    En très haut Niveau ça donne

    DONNEE ACTION DONNEE ACTION

    MI_CREATEVEC RUN: MI_CREATEVEC$ MI_CREATEVEC SetWindowCommand ;
    MI_COMPILVEC RUN: MI_COMPILVEC$ MI_COMPILVEC SetWindowCommand ;


    Donc le principe est invariant:

    données Action données Action données Action etc..


    les données sont toujours au mème endroit,

    la pile de données, ce qui correspond au tas en PASCAL par exemple ou à l'étau pour une machine outil.

    La mise au Point d'une nouvelle fonction se fait endehors de tous Programme ce qui ramène le travail de programation à la création d'un nouveau mot.
    seule syntaxe, espace entre les mots.


    cordialement


    Ludwig
    Dernière modification par Ludwig1 ; 07/08/2015 à 19h04.

  4. #4
    Ludwig1

    Re : C' est quoi ce language ?

    Citation Envoyé par pm42 Voir le message

    il serait intéressant de nous montrer la "facilité" avec laquelle on fait une boucle, un if then else, une structure de données complexe...


    Salut,


    C'est de ça que tu parles?


    : ZLIST-EDITOR-DELETE ( --- )


    GetDroits 0<>

    IF

    DI_LIST GET-MULTSELECTED DUP 0>
    IF
    0 ?DO
    EDIT-ZLIST @ OVER I CELL * + @ 1+ I - DELETEZL 2DROP
    LOOP
    DROP
    ZLIST-EDITOR-INIT
    ELSE
    2DROP
    THEN
    ELSE
    LANGUE @

    CASE
    FRENCH OF S" Vous n'êtes pas autorisé à changer cette liste" ENDOF
    GERMAN OF S" Si sind nicht zuständig diese liste Abändern" ENDOF
    ENGLISH OF S" You are not allowed to change this list" ENDOF
    ENDCASE

    MB-OK

    THEN



    ;



    Cordialement


    Ludwig

  5. A voir en vidéo sur Futura
  6. #5
    pm42

    Re : C' est quoi ce language ?

    Citation Envoyé par Ludwig1 Voir le message
    C'est de ça que tu parles?
    Oui merci pour la franche rigolade... La comparaison entre un langage de programmation et un étau de machine outil était très bien aussi.

  7. #6
    jiherve

    Re : C' est quoi ce language ?

    Bonsoir,
    Tout çà c'est bien joli mais il faudra bien un interpréteur ou un compilateur pour exploiter le charabia et ceux ci ne se créent pas ex nihilo.
    L'APL c’était plus compact et de plus totalement abscons.
    JR
    l'électronique c'est pas du vaudou!

  8. #7
    pm42

    Re : C' est quoi ce language ?

    Citation Envoyé par jiherve Voir le message
    L'APL c’était plus compact et de plus totalement abscons.
    Oui mais très, très puissant. Il existe encore des sociétés qui vendent du soft écrit en APL. L'une d'elle a même racheté un fabriquant de compilateur pour garantir sa pérennité.
    Forth était intéressant à l'époque de sa conception, fin des années 60, début des années 70 et même sur les micro-ordinateurs 8 bits...
    Mais aujourd'hui, il faut vraiment vouloir.

    Si on veut se faire plaisir, autant faire du Malbolge (https://en.wikipedia.org/wiki/Malbolge, il est utilisé dans un épisode d'Elementary où bien sur Sherlock Holmes le reconnait)

  9. #8
    Ludwig1

    Re : C' est quoi ce language ?

    Citation Envoyé par jiherve Voir le message
    Bonsoir,
    Tout çà c'est bien joli mais il faudra bien un interpréteur ou un compilateur pour exploiter le charabia et ceux ci ne se créent pas ex nihilo.
    L'APL c’était plus compact et de plus totalement abscons.
    JR
    Salut,

    mais il y a un compilateur dans la machine virtuelle, il y a un interprèteur aussi, il y a un assembleur aussi il y a un système d'exploitation aussi tout ça dans une machine virtuelle. Il y a mème un éditeur.

    C'est tout de mème surprenant, les uns et les autres n'avez problement jamais ecris une seule fonction deux Points mais vous avez un avis hautement avisé sur la Chose, vous faites comment?
    Vous répétez ce que les autres ont répété qui n'ont fait que répété ce que d'autres encore ont répété etc...


    Ta Remarque montre clairement que tu ne sais pas comment c'est fait, C'est pas du charabia, c'est des mots qui sont dans un dictionaire, lesquels mots sont utilisés pour créer de nouveaux mots etc...


    Regarde donc un dictionnaire comment c'est fait, pour définir un mot il te faut comme par Hasard des mots qui sont définis par d'autres mots qui sont définis par des mots etc..


    Sache que le dictionaire de base est normalisé ANSI au cas ou et que chaque mot comme dans n'importe quelle langue est clairement défini.

    la compilation c'est l'age de la pierre, le Futur s'appelle word processing.


    : INTERPRET ( -- )
    BEGIN
    STATE @ IF COMPILING ELSE INTERPRETING THEN
    UNTIL ;



    tu vois ça c'est un interpréteur de commande,

    quand STATE est OFF on est en mode dialogue interactif Avec la machine, on peut lui passer des ordres au clavier


    quand STATE est ON la machine passe en mode compilation et rajoute les nouvelles définitions au dictionnaire.


    Cordialement

    Ludwig
    Dernière modification par Ludwig1 ; 07/08/2015 à 22h08.

  10. #9
    Ludwig1

    Re : C' est quoi ce langage ?

    Salut,

    Même sur un ARDUINO on peut mettre une machine virtuelle,
    et cerise sur le gateau, ça tourne en multitache

    regardez ici:

    https://www.youtube.com/watch?v=M-Xt1ShKW3c


    cordialement

    Ludwig

  11. #10
    CM63

    Re : C' est quoi ce language ?

    Bonjour,

    Citation Envoyé par Ludwig1 Voir le message
    Je souhaite te faire remarquer qu'il y a lieu de respecter un principe fondamental,
    celui de la Notion de machine.
    Une notion n'est pas un principe.

    A plus.

  12. #11
    Ludwig1

    Re : C' est quoi ce language ?

    Citation Envoyé par CM63 Voir le message
    Bonjour,



    Une notion n'est pas un principe.

    A plus.
    Salut, il se trouve que je reste toujours prudent quand à l'énoncé d'un principe. Toutefois si je m'en tient à la langue Allemande ( Ma langue maternelle) alors je dirais que l'on met le Sujet avant le verbe.

    " Türe schliesen" donc d'abord l'objet puis l'action

    en français on ne dira pas " Porte fermer" mais plutôt

    " Fermer la Porte"

    L'analyse montre qu'il est plus simple de définr les Actions que l'on peut appliquer à un objet,

    la liste qui définie tous les objets à qui om peut appliquer la Notion de fermer risque d'être longue comme un jour de pluie.


    donc dans ce cas précis la structure:


    Objet (données) Action (opération sur les données)



    pourrai être élevé au rang de principe en tout cas pour ce qui est de la langue Allemande.


    cordialement

    Ludwig
    Dernière modification par Ludwig1 ; 09/08/2015 à 11h32.

  13. #12
    Bluedeep

    Re : C' est quoi ce language ?

    Citation Envoyé par pm42 Voir le message

    Si on veut se faire plaisir, autant faire du Malbolge (https://en.wikipedia.org/wiki/Malbolge, il est utilisé dans un épisode d'Elementary où bien sur Sherlock Holmes le reconnait)
    Pourquoi pas du Brainfuck ? (le nom permet de plus de rester dans l'ambiance du fil)
    Dernière modification par Bluedeep ; 10/08/2015 à 10h32.

  14. #13
    Deedee81
    Modérateur

    Re : C' est quoi ce language ?

    Salut,

    Citation Envoyé par Bluedeep Voir le message
    Pourquoi pas du Brainfuck ? (le nom permet de plus de rester dans l'ambiance du fil)
    Tiens, ça je ne connaissais pas. Excellent.

    Merci,
    "Il ne suffit pas d'être persécuté pour être Galilée, encore faut-il avoir raison." (Gould)

  15. #14
    Ludwig1

    Re : C' est quoi ce language ?

    Citation Envoyé par Bluedeep Voir le message
    Pourquoi pas du Brainfuck ? (le nom permet de plus de rester dans l'ambiance du fil)

    Salut
    Tu te donnes bien du mal pour discréditer ce que semblerait'il tu ne connais pas.

    Cordialement


    Puisque c'est à la mode le hello world

    ça fait ça


    S" Hello World" type

    et dans une boite de dialogue ça fait ça:


    S" Hello World" MB-OK


    Cordialement

    Ludwig

    PS: sort voir ton listing kilométrique qui permet d'afficher ça dans une boite de dialogue.

    Comançant le matin,
    Avec un peu de Chance ce sera peut'être fini pour midi je penses, tu pourras aller à la soupe.

    j'ai utilisé 4 mots, essaye de faire mieux si tu peux.

    Mais je peux encore te le réduire comme ça


    : Hello-W S" Hello World" MB-OK ;

    maintenant ça fait un mot pour le message, essai de faire mieux si tu peux.
    Tu ignores tout du Sujet mais ça ne t'empêche pas de dénigrer

    En outre je te ferais remarquer que ce sont d'éminents Scientifiques qui ont mis ça au Point.

  16. #15
    Arzhur

    Re : C' est quoi ce langage ?

    Tu te donnes bien du mal pour discréditer ce que semblerait'il tu ne connais pas.
    C'est vrai ça, alors qu'il suffisait de citer le LOLCODE (très parlant et en plus y'a un côté djeunz)

  17. #16
    Ludwig1

    Re : C' est quoi ce langage ?

    Salut,

    C'est presque comique, tous le monde parle de language, alors que moi je parle d'une machine informatique Virtuelle.

    J'en déduit qu'on ne sait pas trop de quoi il s'agit ou qu'on ne sait même pas du tout ce qu'est une machine virtuelle.

    Manifestement on sait pas.

    Ici un Petit article pour les débutants

    http://www.laurentbloch.org/MySpip3/spip.php?article255

    de quoi étendre votre culture

    http://www.culture-informatique.net/...es-virtuelles/

    http://proton.inrialpes.fr/~krakowia...t-2012-4pp.pdf

    Cordialement

    Ludwig

  18. #17
    pm42

    Re : C' est quoi ce langage ?

    Citation Envoyé par Ludwig1 Voir le message
    J'en déduit qu'on ne sait pas trop de quoi il s'agit ou qu'on ne sait même pas du tout ce qu'est une machine virtuelle.
    Le coté "machine virtuelle" n'a aucune importance dans ce que tu postes puisque tous les exemples que tu donnes se limitent à de la programmation en Forth...
    Au demeurant, "word processing" est déjà utilisé largement dans un autre sens, celui du traitement de texte...
    Donc avant d'étendre la culture des autres, il serait bien que évites toi même ce genre de confusions, comme lorsque tu confonds Java et le bios des stations Sun que tu écris incorrectement et semble ne pas savoir que le monde a largement changé depuis notamment leur rachat par Oracle.

  19. #18
    Bluedeep

    Re : C' est quoi ce langage ?

    Citation Envoyé par Ludwig1 Voir le message
    de quoi étendre votre culture
    Ou l'hôpital qui se fout de la charité ....

  20. #19
    Jack
    Modérateur

    Re : C' est quoi ce langage ?

    Citation Envoyé par Ludwig1 Voir le message
    Salut,

    C'est presque comique, tous le monde parle de language, alors que moi je parle d'une machine informatique Virtuelle.
    Pourquoi avoir choisi ce titre dans ce cas?

  21. #20
    Loupsio

    Re : C' est quoi ce langage ?

    Citation Envoyé par Jack
    Pourquoi avoir choisi ce titre dans ce cas?
    Sans vouloir répondre a la place de l'auteur, je crois (en toute objectivité) que c'est parce que un des modérateurs (me souviens plus si c'est toi ou un autre, mais un pseudo vert en tout cas ^^) avait répondu par "c'est quoi ce langage" quand l'un des membre a posé une question en pascal et que ludwig1 a répondu en copiant collant un code qui n'avait strictement rien a voir (et indigeste selon moi ^^) en forth

    Et a la suite de ca l'un des moderateur a répondu un truc du genre "C'est quoi ce langage,Oo , c'est absolument pas du pascal"... ou quelque chose dans ce genre, et je pense que c'est a la suite de ca qu'il a choisi ce titre
    Dernière modification par Loupsio ; 10/08/2015 à 19h17.

  22. #21
    Jack
    Modérateur

    Re : C' est quoi ce langage ?

    C'était bien moi qui posait cette question, et à juste titre d'ailleurs puisqu'il s'agissait visiblement d'un bout de programme, impliquant par conséquent l'utilisation d'un langage quelconque.

    Je retire cependant ma question sur le titre à la lumière de ce que viens de rappeler.

  23. #22
    Ludwig1

    Re : C' est quoi ce langage ?

    Citation Envoyé par Jack Voir le message
    Pourquoi avoir choisi ce titre dans ce cas?
    Salut,

    si je ne m'abuse c'est toi qui à dit c'est quoi ce language dans un des fil ou j'ai répondu hors Sujet.

    Ce titre ? ben c'est justement pour faire comprendre que l'on affaire à une machine virtuelle. Evidement qu'on pourra programmer des fonctions Avec au même titre qu'avec Java qui aussi est une machine virtuelle. Le jeux d'instruction de la machine de base est normalisé ANSI et comme Java ça tourne sur toute les plates formes Sous DOS, Sous Windows Sous Mac OS Sous Linux, Sous UNIX etc.. ça tourne même sur un Arduino

    Un fois que la machine est installée, elle permet de prendre le contrôle du calculateur, et ça, ça n'a strictement et définitivement plus rien à voir Avec un laguage de programation.
    Puisque l'on tourne en mode interactif. En outre, la machine tourne évidement en multitache ce qui permet les échanges Avec Windows ou autre au travers d'un seul CALLBACK central. On intercepte les MSG de Windows pour les dispactcher sur les callbacks de la machine virtuelle. C'est par le bias de ce CB: unique que l'on pilote Windows. Ca c'est du Grand art.

    par exemple je me suis fait une fonction deux Point comme suit:


    : FUTURA_PROG S" http://forums.futura-sciences.com/programmation-langages-algorithmique/702885-c-quoi-langage-2.html#post5303486" >SHELL ;


    puis j'écris au clavier de temps à autre FUTURA_PROG et je suis direct callé ici, pas de Programme à écrire ni rien.


    Alors tu vois caller des appels sur un serveur c'est le temps d'écrire la Phrase et c'est fait.



    cordialement


    Ludwig

  24. #23
    pelkin

    Re : C' est quoi ce langage ?

    [QUOTE=Ludwig1;5303690]puis j'écris au clavier de temps à autre FUTURA_PROG et je suis direct callé ici, pas de Programme à écrire ni rien[QUOTE]

    Marrant, cela fait 11 frappes clavier dont une avec SHIFT, moi je fais cela en 1 clic souris (via les favoris). M'enfin, c'est vrai, pourquoi faire simple quand compliqué ça marche aussi.

    Je parie à 100 contre que vous allez dire que je n'ai rien compris.
    Dernière modification par Cram 64 ; 11/08/2015 à 14h50. Motif: Réparation []

  25. #24
    Jack
    Modérateur

    Re : C' est quoi ce langage ?

    Citation Envoyé par Ludwig1 Voir le message
    Salut,

    si je ne m'abuse c'est toi qui à dit c'est quoi ce language dans un des fil ou j'ai répondu hors Sujet.
    En effet, d'où mon message #11

  26. #25
    Ludwig1

    Re : C' est quoi ce langage ?

    [QUOTE=pelkin;5303696]
    Citation Envoyé par Ludwig1 Voir le message
    puis j'écris au clavier de temps à autre FUTURA_PROG et je suis direct callé ici, pas de Programme à écrire ni rienQUOTE]

    Marrant, cela fait 11 frappes clavier dont une avec SHIFT, moi je fais cela en 1 clic souris (via les favoris). M'enfin, c'est vrai, pourquoi faire simple quand compliqué ça marche aussi.

    Je parie à 100 contre que vous allez dire que je n'ai rien compris.
    Salut,

    merci, j'avais oublié, pendant que je programme je viens cliquer sur le mot et oups j'arrive ici, merci pour le rappel. Mais en fait je voulais dire par la que caller des appels serveur à l'intérieur d'un programme était d'une extrème simplicité.


    Cordialement


    Ludwig

  27. #26
    pelkin

    Re : C' est quoi ce langage ?

    Citation Envoyé par Ludwig1 Voir le message
    pendant que je programme je viens cliquer sur le mot et oups j'arrive ici, merci pour le rappel. Mais en fait je voulais dire par la que caller des appels serveur à l'intérieur d'un programme était d'une extrème simplicité.
    Ce qui est en contradiction totale avec :
    Citation Envoyé par Ludwig1 Voir le message
    puis j'écris au clavier de temps à autre FUTURA_PROG et je suis direct callé ici, pas de Programme à écrire ni rien
    Ou alors, il va falloir nous expliquer ce que vous entendez par "programmer"

  28. #27
    pelkin

    Re : C' est quoi ce langage ?

    [QUOTE=Ludwig1;5303702]
    Citation Envoyé par pelkin Voir le message
    pendant que je programme
    Ben tiens, justement, tant qu'on y est, aurions nous droit à voir une de vos applications (autre que mettre bonjour sur l'écran ou cliquer sur Oups ... s'il vous plaît). Une application développée, du solide, du qui tient la route ; allez, rien qu'une calculatrice scientifique, un gadget quoi, pas plus de trois minutes pour un cador tel que vous ! Merci d'avance.

  29. #28
    pelkin

    Re : C' est quoi ce langage ?

    J'oubliais, caler ne prend QU'UN "l"

  30. #29
    Ludwig1

    Re : C' est quoi ce langage ?

    Citation Envoyé par pelkin Voir le message
    Ce qui est en contradiction totale avec :

    Ou alors, il va falloir nous expliquer ce que vous entendez par "programmer"
    Justement c'est là toute la différence (merci pour la question).

    Programmer n'est peut être pas le mot exact.

    En fait on " discute" Avec la machine virtuelle et on construit des mots nouveaux que l'on met au Point en mode interactif.

    en quelque sorte on fabrique une extention du jeux d'instruction de la machine virtuelle. Cette façon de procéder suppose que tu as fait préalablement une Analyse extrèmement rigoreuse du PB posé. Tu commences par construire des mots simples et tu les teste tous en Dehors de tout Programme, tu te trouves en mode dialogue Avec ta machine, l'écran c'est une console.
    ça c'est Descartes, discours de la méthode.

    Une fois la première couche faite tu passe à la seconde ou tu rassemble les fonctions et mots Sous jascent dans des mots plus élaborés, puis tu passes à la couche suivante etc.. pour à la fin avoir un seul mot qui va lancer toute l'éxécution. Evidement tu fera des copier coller pour mettre tous ton travail dans un fichier que tu pourras réutiliser ou intégrer ailleurs etc... ca c?est classique.


    Je sais que ça perturbe quand on n'a pas l'habitude, mais une fois qu'on à pris le plis, on refuse de faire autrement.


    quand j'écris : (deux Points) au clavier, la machine passe automatiquement en mode compilation exemple

    : TEST S" un essai de message" type ;


    compile une nouvelle définition de nom TEST, compile le message puis l'ordre d'affichage. c'est le ; qui fait repasser la machine en mode interpröteur de commandes.


    on écrit TEST au clavier et la séquence est exécutée.


    Cordialement

    Ludwig


    AU FINAL, programmer consiste à étendre le vocabulaire de la machine virtuelle.

  31. #30
    pelkin

    Re : C' est quoi ce langage ?

    Bonsoir,

    Joli blabla, mais qui ne répond à aucune des questions posées. On ne vous demande pas de nous convaincre, juste de nous démontrer, allez ... juste une petit programme, simple comme bonjour pour vous, allez, seconde suggestion, un petit crible d'Eratosthène, rien que pour me (nous) convaincre.

    Bonne soirée.

Page 1 sur 3 12 DernièreDernière

Discussions similaires

  1. Differences entre le langage C et le langage Arduino
    Par Batpillou dans le forum Électronique
    Réponses: 7
    Dernier message: 19/03/2015, 21h44
  2. le langage C est t il un langage qui a de l'avenir ?
    Par vince6629 dans le forum Programmation et langages, Algorithmique
    Réponses: 13
    Dernier message: 12/11/2014, 12h01
  3. Réponses: 6
    Dernier message: 03/02/2013, 19h32
  4. de langage C en langage assembleur
    Par invite284746c1 dans le forum Électronique
    Réponses: 1
    Dernier message: 14/05/2009, 12h42