Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Langage de programmation] Algoid / AL

    16 juin 2013 à 20:40:53

    Lol. Merci.....

    Bah... pour le moment il me dit qu'il n'a rien compris.... vivement les vacances que je lui montre un peu plus.... (il habite chez sa mère un peu loin)

    • Partager sur Facebook
    • Partager sur Twitter
    Découvrez Algoid le langage pour apprendre à programmer.
    Anonyme
      17 juin 2013 à 6:59:14

      Ça serait possible de mettre des onglets (Pour mieux gérer le multi fichier) ? Et peut-être la mise en cache des tuto/doc pour y accéder quand on a pas de réseau ?

      Édit : On ne peut pas copier du texte ?

      -
      Edité par Anonyme 17 juin 2013 à 7:49:24

      • Partager sur Facebook
      • Partager sur Twitter
        17 juin 2013 à 11:21:10

        Je ne peut pas lancer l'applet maintenant pour voir (sous Android...), mais les champs de texte de Swing et d'AWT n'ont pas de menu contextuel par défaut. Par contre, Ctrl + X/C/V marchent. Et comme les développeurs s'embêtent rarement avec des choses aussi longues et énervantes que le clic droit et les menus, ils les oublient, ne les mettent pas en place dans leurs applis, et utilisent les raccourcis claviers, beaucoup plus simples et rapides. Voilà :-p
        Donc débrouilles-toi avec Ctrl. :-)
        EDIT : Vu les compétences que tu à renseigné, tu doit bien connaitre ces raccourcis, et il doit peut être y avoir un problème... Je testerai l'applet la prochaine fois. Vraiment désolé...

        -
        Edité par antoine1023 17 juin 2013 à 11:25:15

        • Partager sur Facebook
        • Partager sur Twitter
        Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
        Anonyme
          17 juin 2013 à 18:40:38

          Sur téléphone (nexus 4) y a pas de touche CTRL... Et si on reste appuyé dessus pour normalement sélectionner le texte, ça ouvre une demi-page web sur la documentation d'Algoid.

          EDIT :

          CyaNn a écrit:

          Lol. Merci.....

          Bah... pour le moment il me dit qu'il n'a rien compris.... vivement les vacances que je lui montre un peu plus.... (il habite chez sa mère un peu loin)


          Je trouve que ton tutoriel n'est pas assez interactif/tape à l’œil pour attirer un enfant (ou en tout cas le garder concentrer dessus^^). Par exemple tu pourrais faire des commentaires interactif :

          http://jsbin.com/omuqax/3/edit

          -
          Edité par Anonyme 17 juin 2013 à 20:16:43

          • Partager sur Facebook
          • Partager sur Twitter
            17 juin 2013 à 20:43:56

            ^^ Je croyais que tu parlais de l'applet...
            Sinon oui, mêmes problèmes que toi sous FroYo.
            Quand aux tutoriels, tu pourrait peut-être en écrire un sur Wikibooks, non ? Je ne connais pas trop, mais comme c'est collaboratif, d'autres gens pourraient te donner un coup de main.
            Après c'est sûr que niveau graphisme, c'est un autre monde que celui de www.algoid.net...

            • Partager sur Facebook
            • Partager sur Twitter
            Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
              17 juin 2013 à 21:12:14

              antoid : je suis en train de les écrire pour developpez.com (désolé pour la pub hein.... mais bon.) Ils me filent un coup de main pour l'orthographe et les idées.

              Wiki oui ce serais sympa.... manque le temps.

              Hors-Sujet, ton idée est super sympa. Seulement comment intégrer cela sur tablette ? Il faut toucher, on y pense pas au premier abord....

              Je comptais faire des vidéos tutos par la suite. J'ai même imprimer un tshirt.... seul problème, je me suis cassé la main et du coup ça à repousser (mains dans le platre oblige) Je vais reflechir à vos idées qui sont très bonnes.... merci ^_^

              Sinon en attendant, une petite preview de la version à venir :

              copy / paste / select.... que du bon ^_^

              • Partager sur Facebook
              • Partager sur Twitter
              Découvrez Algoid le langage pour apprendre à programmer.
              Anonyme
                17 juin 2013 à 21:39:36

                Le bandeau bleu ne sera plus par défaut rétrécis ?
                • Partager sur Facebook
                • Partager sur Twitter
                  18 juin 2013 à 6:38:33

                  Si il disparaît lorsque la partie texte perd le focus.

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Découvrez Algoid le langage pour apprendre à programmer.
                  Anonyme
                    18 juin 2013 à 7:50:38

                    Donc il ne disparait pas quand le clavier est ouvert ?

                    Déjà que sur portable ça fait petit alors si tu rajoutés ça... 

                    • Partager sur Facebook
                    • Partager sur Twitter
                      18 juin 2013 à 8:24:47

                      Ben après je ne suis pas magicien non plus.... .il faut que les outils soit visibles, clickables mais qu'ils ne prennent pas de place....

                      Là je ne sais plus faire. Encore heureux qu'il n'y ai pas en plus un bandeau de pub.

                      Cela étant, sur mon samsung 4.2 ça passe, clavier + tools + code snippets

                      Après, il faudra attendre les capteurs neuronaux.... je ne voie plus que ça.... lol.

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Découvrez Algoid le langage pour apprendre à programmer.
                        18 juin 2013 à 15:46:08

                        C'est sûr que pour des écrans de 3 pouces, il n'y a pas grand-chose à faire !
                        D'ailleurs, sous mon FroYo, il y a aussi un problème de défilement sur les fichiers longs : Quand on veut déplacer le curseur de plusieurs écrans en appuyant à l'endroit où on veut le mettre, zip ! L'éditeur nous renvoie à l'endroit d'origine. Je sais pas si tu l'a déjà corrigé, le mieux serait que tu testes pour comprendre (à expliquer comme ça c'est un peu dur).
                        J'espère que ça sera mieux... sinon je dégage ton éditeur et je continue à utiliser Jota :D

                        • Partager sur Facebook
                        • Partager sur Twitter
                        Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                        Anonyme
                          18 juin 2013 à 18:36:43

                          CyaNn a écrit:

                          Après, il faudra attendre les capteurs neuronaux.... je ne voie plus que ça.... lol.


                          Proposer ton propre clavier ? (Avec des touches CTRL / ALT).
                          • Partager sur Facebook
                          • Partager sur Twitter
                            18 juin 2013 à 19:31:58

                            Mmmmh à mon avis c'est une mauvaise idée : pleins de gens utilisent un clavier personnalisé, ça serait long à développer et maintenir pour tous les formats d'écrans, et puis il y en a aussi qui ont un clavier en dur...

                            • Partager sur Facebook
                            • Partager sur Twitter
                            Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                              19 juin 2013 à 8:19:59

                              Hors-Sujet a écrit:

                              CyaNn a écrit:

                              Après, il faudra attendre les capteurs neuronaux.... je ne voie plus que ça.... lol.


                              Proposer ton propre clavier ? (Avec des touches CTRL / ALT).


                              Lol.... je peu aussi réécrire Android.... lol....

                              Non le clavier, j'y avais pensé mais il faut gérer le layout (on est pas tout en AZERY, moi même je suis en QWERTZ (oui oui Z))

                              Antoine : si tu désinstall, il y a un malware qui détruira ton téléphone.... (en même temps froyo ce ne sera pas une grosse perte).... :p:pirate::p:lol:

                              • Partager sur Facebook
                              • Partager sur Twitter
                              Découvrez Algoid le langage pour apprendre à programmer.
                                19 juin 2013 à 17:39:19

                                si tu désinstall, il y a un malware qui détruira ton téléphone...

                                Non, je voulais juste continuer de faire ce que j'ai toujours fait avec Algoid : utiliser Jota comme éditeur de texte au lieu du tiens. Je ne vais quand-même pas désintaller :-)
                                Ce qui est bien avec Jota, c'est qu'il est léger, très personnalisable, y compris sa coloration syntaxique. J'ai écrit vite fait un truc pour la syntaxe d'AL. Le problème, c'est qu'il n'y a pas d'auto-complétion. On ne peut pas tout avoir à la fois...
                                Tiens, d'ailleurs il est open-source : http://code.google.com/p/jota-text-editor/source/browse/

                                -
                                Edité par antoine1023 19 juin 2013 à 17:39:34

                                • Partager sur Facebook
                                • Partager sur Twitter
                                Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                                  19 juin 2013 à 20:46:54

                                  J'ai encore quelques petites choses à régler sur la version Android.....

                                  Notamment le run dans le bandeau bleu.

                                  Sinon j'ai corrigé le bug de saisie dans l'applet : c'est ici www.algoid.net/applet.php

                                  Tu peu même essayer en prime time le jeu space battle, entièrement développer dans le tramway de Genève. ^_^

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  Découvrez Algoid le langage pour apprendre à programmer.
                                    20 juin 2013 à 16:28:50

                                    Alors comme ça, on n'utilise pas son lexer pour sa coloration syntaxique ? Non mais !

                                    Avec mon petit smallFrench, ça marche parce que j'utilise le même pour l'interpréteur et pour l'éditeur :-p

                                    -
                                    Edité par antoine1023 20 juin 2013 à 16:29:31

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                                      20 juin 2013 à 16:54:05

                                      Ben si bien sûr !!!!

                                      Mais que dans Algoid, pas dans AlgoIDE (l'applet).

                                      Dans l'applet, j'utilise un composant tout fait qui ne fonctionne pas très bien apparemment. D’autant qu'il est très lent sur RaspberryPI.... je croie que je vais le satelliser.

                                      Finalement, on est jamais mieux servis que par sois même. L'open source c'est pas si bien que ça !!!!

                                      -
                                      Edité par CyaNn 20 juin 2013 à 16:58:05

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                      Découvrez Algoid le langage pour apprendre à programmer.
                                        27 juin 2013 à 12:01:17

                                        Rhaaa j'étais en train de poster quand une coupure de jus m'a interrompu...
                                        Donc j'ai trouvé un bug sous Android, en écrivant une bannière :

                                        /
                                        5x7 font
                                        /
                                        

                                        set chars = array {

                                        "A" : {
                                        	{0,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,1,1,1,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        },
                                        "B" : {
                                        	{1,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,1,1,1,0},
                                        },
                                        "C" : {
                                        	{0,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,1},
                                        	{0,1,1,1,0},
                                        },
                                        "D" : {
                                        	{1,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,1,1,1,0},
                                        },
                                        "E" : {
                                        	{1,1,1,1,1},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,1,1,1,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,1,1,1,1},
                                        },
                                        "F" : {
                                        	{1,1,1,1,1},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,1,1,1,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        },
                                        "G" : {
                                        	{0,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,0},
                                        	{1,0,1,1,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{0,1,1,1,1},
                                        },
                                        "H" : {
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,1,1,1,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        },
                                        "I" : {
                                        	{0,1,1,1,0},
                                        	{0,0,1,0,0},
                                        	{0,0,1,0,0},
                                        	{0,0,1,0,0},
                                        	{0,0,1,0,0},
                                        	{0,0,1,0,0},
                                        	{0,1,1,1,0},
                                        },
                                        "J" : {
                                        	{0,1,1,1,0},
                                        	{0,0,0,1,0},
                                        	{0,0,0,1,0},
                                        	{0,0,0,1,0},
                                        	{0,0,0,1,0},
                                        	{1,0,0,1,0},
                                        	{0,1,1,0,0},
                                        },
                                        "K" : {
                                        	{1,0,0,0,1},
                                        	{1,0,0,1,0},
                                        	{1,0,1,0,0},
                                        	{1,1,0,0,0},
                                        	{1,0,1,0,0},
                                        	{1,0,0,1,0},
                                        	{1,0,0,0,1},
                                        },
                                        "L" : {
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,0,0,0,0},
                                        	{1,1,1,1,1},
                                        },
                                        "M" : {
                                        	{1,0,0,0,1},
                                        	{1,1,0,1,1},
                                        	{1,0,1,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        },
                                        "N" : {
                                        	{1,0,0,0,1},
                                        	{1,1,0,0,1},
                                        	{1,0,1,0,1},
                                        	{1,0,0,1,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        },
                                        "O" : {
                                        	{0,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{1,0,0,0,1},
                                        	{0,1,1,1,0},
                                        },
                                        "?" : {
                                        	{0,1,1,1,0},
                                        	{1,0,0,0,1},
                                        	{0,0,0,0,1},
                                        	{0,0,0,1,0},
                                        	{0,0,1,0,0},
                                        	{0,0,0,0,0},
                                        	{0,0,1,0,0},
                                        }
                                        

                                        }

                                        set ptSize = 3 set background = 0 set schars = array { "?":0 } text.clear() algo.hide() chars.each(function (e, i, key) {

                                        set sc = algo.stamp.clone(e, ptSize)
                                        schars[key] = sc.clone(e, ptSize)
                                        // Ca marche tout le temps :
                                        schars[key].draw()
                                        util.wait(100)
                                        

                                        })

                                        // Ca ne marche pas avec d'autres lettres schars["?"].draw()

                                        /* set banner = function (s) {

                                        for (set i=0 ; i < s.length() ; i++) {
                                        	set c = s.getChar(i)
                                        	set sc = schars[c]
                                        	algo.goTo(i * 6 * ptSize, 0)
                                        	text.output(sc)
                                        }
                                        

                                        }

                                        banner("ALGOID") */

                                        </pre> On dirait que les sprites (à part le "?") sont perdus à la sortie de la boucle...

                                        -
                                        Edité par antoine1023 27 juin 2013 à 12:03:40

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                        Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                                          27 juin 2013 à 13:56:19

                                          Ok c'était un tout petit bug au niveau de l'attribution de la clé (il gardait la référence plutôt que la valeur) du coup toutes les clés prenaient la valeur de la dernière....

                                          Ce sera corrigé pour la prochaine version (dernière avant les vacance).... merci à toi pour ce teste.

                                          Au fait, la vilaine boucle sur la chaîne peu s'écrire ainsi :

                                          set banner = function (s) {
                                          	s.each (function (c, i) {
                                          		set sc = schars[c]
                                          		algo.goTo(i * 6 * ptSize, 0)
                                          		schars[c].draw();
                                          	});
                                          }

                                          LOL, j'aime pas la boucle for....

                                          a plouch

                                          -
                                          Edité par CyaNn 27 juin 2013 à 13:57:34

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                          Découvrez Algoid le langage pour apprendre à programmer.
                                            27 juin 2013 à 14:27:37

                                            OK super !
                                            Je pourrais continuer cette bannière ^^

                                            EDIT : Ah oui, au départ j'ai utilisé le each, j'avais mis un for en espérant que ça réglerait le problème... mais non.

                                            -
                                            Edité par antoine1023 27 juin 2013 à 14:29:15

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                            Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                                              27 juin 2013 à 18:57:03

                                              Non j'ai très souvent ce genre de bug... le modèle de donnée n'est pas simple...

                                              Je me demande si je n'aurait pas du faire comme toi avec des cast partout et puis tant pis.

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                              Découvrez Algoid le langage pour apprendre à programmer.
                                                27 juin 2013 à 20:32:18

                                                A mon avis, il n'y a pas de solution meilleure qu'une autre : elles ont leurs avantages et leurs inconvénients.
                                                Là d'ailleurs je suis en train de regarder les templates, parce que c'est un peu moche... Too many casts

                                                -
                                                Edité par antoine1023 27 juin 2013 à 20:32:36

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                                                  27 juin 2013 à 21:40:05

                                                  lol.... les generics.... les templates c'est pour ce vilain c++ ^_^ lol....

                                                  J'en bave avec c++ en ce moment, ça doit être pour ça.

                                                  Je n'ai pas utilisé de generics, les generics ne font que cacher les cast. Et dans certains cas, sont inévitables.

                                                  J'ai crée une classe, que j'ai appeller le MutableVariant, qui contient tous les types possibles.

                                                  Il est en charge de faire les conversions nécéssaires (très rare grâce à mes opérateurs).

                                                  MutableVariant est également composite sur lui même, de ce fait il permet de gérer des structures très complexes.

                                                  Il donne accès à des noeuds de l'AST comme fonction et objet.

                                                  L'inconvénient c'est que cela cré un objet (très relativement) lourd.

                                                  L'avantage : c'est très rapide et très pratique....

                                                  On ne peu pas tout avoir ma bonne dame....

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                  Découvrez Algoid le langage pour apprendre à programmer.
                                                    29 juin 2013 à 9:21:27

                                                    Voici la nouvelle version de l'applet :

                                                    Toujours disponible ici

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                    Découvrez Algoid le langage pour apprendre à programmer.
                                                      29 juin 2013 à 9:39:05

                                                      Mouais j'ai pas trop compris ton MutableVariant, sinon je te rassure, il n'y a finalement aucun template dans mes sources (à part pour les listes de java.util). J'ai simplifié un peu, mais sans utiliser ces trucs, qui décidément me semblent utiles que dans des cas rares... Et si en plus ça bouffe les perfs comme tu le dis...
                                                      Je regarde l'applet quand je pourrais :-)

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                      Arius, vraiment le plus puissant de l'ancienne Ligue des Super Zéros !
                                                        29 juin 2013 à 12:27:44

                                                        Je trouve ça très bon. (Je poste pour me tenir à jour)

                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          29 juin 2013 à 18:27:50

                                                          antoine1023 a écrit:

                                                          Mouais j'ai pas trop compris ton MutableVariant, sinon je te rassure, il n'y a finalement aucun template dans mes sources (à part pour les listes de java.util). J'ai simplifié un peu, mais sans utiliser ces trucs, qui décidément me semblent utiles que dans des cas rares... Et si en plus ça bouffe les perfs comme tu le dis...


                                                          Non mais je te rassure, c'est plus élégant que de faire des cast.

                                                          TouzaxA a écrit:

                                                          Je trouve ça très bon. (Je poste pour me tenir à jour)


                                                          Merci....

                                                          sinon la version v1.2.0 est sortie.

                                                          Avec les a ajouts suivant :

                                                          ★ nouveau concept de navigation (menu coulissant en haut)

                                                          ★ version desktop et Applet disponnibles

                                                          ★ correction d'algo.getHeight bug lors de l'animation

                                                          ★ isReel renommé en isReal

                                                          ★ select / copy / past

                                                          ★ nouveau jeu Star battle

                                                          ★ exemple de décorateur fonctionnel

                                                          ★ changement de la font d'algo, ajout du paramètre taille

                                                          ★ nouvelles méthodes de thread : util.notice(), util.pullOn(), util.clearTasks()

                                                          ★ nouveaux paramètres optionnels à la méthode util.pulse

                                                          ★ array.getFirst() et array.getLast()

                                                          ★ amélioration des performances du log viewer

                                                          ★ suppression du click long dans l'ide

                                                          ★ nouveau code snippet "clone"

                                                          ★ les settings ne seront plus écrasés lors du prochain update

                                                          ★ sensors indépendents de l'orientation du device

                                                          Toujours ici :

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                          Découvrez Algoid le langage pour apprendre à programmer.
                                                            1 juillet 2013 à 12:46:55

                                                            Pratique le bouton pour exécuter son programme sans passer par un menu !

                                                            Bravo pour cette nouvelle version.

                                                            Je vais regarder maintenant ce que ça donne sur la version Desktop.

                                                            -
                                                            Edité par metalm 1 juillet 2013 à 12:50:37

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter
                                                              1 juillet 2013 à 13:14:07

                                                              Merci Metalm.....

                                                              C'est trop d'honneur ^_^ merci.

                                                              Je suis en train de réfléchir à un truc qui serait sympa : ajouter l'applet dans le forum afin que (sur desktop bien entendu) chaque fois qu'il y ai un code, il puisse être exécuté en aperçu dans le message. Ça renforcerai le coté interactif et la cohésion du tout ^_^

                                                              Enfin voilà, je pars en vacance dans même pas une semaine et j'ai plein d'idées plein la tête.... comme toujours, je vais finir sur la plage à rêver de code source et de fonctionnalités.... pfffff

                                                              PS : la version desktop vraiment un version alpha, ce n'est pas du tout abouti pour le moment. Je m'y attelle dés septembre.

                                                              • Partager sur Facebook
                                                              • Partager sur Twitter
                                                              Découvrez Algoid le langage pour apprendre à programmer.

                                                              [Langage de programmation] Algoid / AL

                                                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                              • Editeur
                                                              • Markdown