https://insights.stackoverflow.com/survey/2018/#development-environments-and-tools
Most Popular Development Environments
[…]
Vim 25.8%
[…]
Emacs 4.1%
PS: je prends un peu d'avance pour vendredi

https://insights.stackoverflow.com/survey/2018/#development-environments-and-tools
Most Popular Development Environments
[…]
Vim 25.8%
[…]
Emacs 4.1%
PS: je prends un peu d'avance pour vendredi

Bonjour Nal,
Voilà plus de 30 ans que je programme et plus de 20 ans que c'est mon métier. J'ai passé par pas mal de langages, au gré des demandes, des impératifs et des modes (Je ne mets pas de liste, de peur d'en oublier!).
Pour la première fois depuis près de 20 ans, je refais du C; j'ai pu convaincre que pour telle tâche, c'était le plus indiqué. Depuis j'en perds quelque cheveux mais globalement ça va bien. Le (…)

Bonjour tout le monde,
Je vais faire (éhontément) un peu de pub pour mon dernier projet, upt : the Universal Packaging Tool, ou encore "l'outil d'empaquetage universel", comme on dit en France, de Bretagne en Provence.
La communauté récemment formée autour de TapTempo a la possibilité d'utiliser diverses implémentations du logiciel, écrites dans de nombreux langages différents. Toutes ces versions de TapTempo seront sans doute bientôt disponibles sur des (…)

Alors en fait ça ne marche pas, quand on tape sur le clavier ça fait bouger l'extension de RAM (de 16 Ko !) et là, paf, faux contact et reset !
Je ne sais pas si l'internet s'en remettra.
Nostalgie … un taptempo en basic pour Amstrad CPC. Au départ j'avais voulu faire un portage en basic pour TO7 mais je n'ai pas trouvé les fonctions qui me convenaient donc je l'ai fait en basic pour Amstrad CPC.
Pas de gestion de l'internationalisation, il manque des options à paramétrer, mais cette version donne l'essentiel : le tempo (en bpms) par rapport à la dernière frappe, et la moyenne sur 10 échantillons.
J'ai codé/testé sur http://www.cpcbox.com/ et via l'émulateur xcpc (…)
La nouvelle vient de tomber: FlareRPG est sorti en version 1 (attention: la version https renvoie sur la page d'exemple d'apache 2.2 pour fedora…).
De quoi s'agit-il?
Pour être exact, FlareRPG est juste un moteur de jeu pour réaliser des «Hack 'n' slash» en vue isométrique.
Les Hack 'n' slash sont des RPG dont le principal si ce n'est l'unique objectif est de massacrer du monstre, avec une histoire typiquement linéaire.
Quant à la vue isométrique, pour (…)

TapTempo, c'est plus ce que c'était, on a vu a de tout, mais pas encore de PHP, redonnons lui sa gloire.
J'ai écrit plusieurs versions différentes de ce code, mais je vais seulement en donner une, que je trouve intéressante pour plusieurs raisons.
Déjà, le PHP en lui même donne un code plutôt lisible, et sans surprise, ensuite:

Le portage de TapTempo en emacs lisp est idéal pour se muscler les doigts !
Battez la mesure sous votre éditeur préféré à coup C-c C-s et vous aurez votre bpm dans le mini-buffer.
À rajouter d'urgence dans votre .emacs
(setq t0 0)
(setq array (list))
(defun sum(list)
(if (null list)
0
(+
(first list)
(sum (rest list))
)
)
)
(defun (…)
Cher Nal,
Connais-tu le langage APL ? Il s'agit d'un langage, ou plutôt d'une notation Unicode, inventée par Kenneth Iverson et permettant d'effectuer facilement des calculs globaux sur des tableaux (à une ou plusieurs dimensions).
L'idée d'effectuer des calculs globaux sur des tableaux n'est pas si différente de ce que l'on peut trouver dans R ou autres langages similaires plus connus des statisticiens, mais elle est poussée à son extrême dans APL. Là ou Scheme représente un effort pour (…)
Bonjour tout le monde,
Vu que nous somme en 2018, il est temps de passer à une version plus moderne de TapTempo. Toutes les versions étaient jusqu'à présent exécutées en local, alors que c'est tellement plus simple et plus pratique sous la forme d'un service sur internet exécuté sur un autre ordinateur, voir potentiellement dans le nuage (hype °o°).
Bien évidemment l'application reste destinée à être utilisée en ligne de commande:
telnet theglu.org 2999
Si vous avez l'envie de (…)
Salut à tous. Voici un portage de TapTempo en Forth.
5 set-precision
6 Constant steps
: now utime drop ;
: calc-tempo steps 60 1000 1000 * * * s>f drop now swap - s>f f/ ;
: print-tempo ." Tempo: " f. ." bpm" cr ;
: restart now steps ;
: main
." Appuyer sur la touche entrée en cadence (q pour quitter)." cr
restart
begin
key 113 <> while 1- dup 0 = if calc-tempo print-tempo restart (…)
Salut à tous.
Voici une version en Clojure. Rien de remarquable, juste qu'on affiche le tempo tous les 6 battements.
Il n'y a pas la prise en charge d'arguments ou d'internationalisation.
(ns taptempo.core
(:import jline.console.ConsoleReader)
(:gen-class))
(defn now []
(System/currentTimeMillis))
(defn read-char []
(->(ConsoleReader.) (.readCharacter) char))
(defn calc-tempo [start end taps]
(* (/ taps (- end start)) (…)
Salut Nal,
Il manquait une version C à la tradition Unix, c'est maintenant fait !
Du coup, pour préserver l'esprit, options courtes uniquement et pas de version, mais pour le reste, c'est assez complet avec contrôle des bornes pour les paramètres. Il ne manque que la page de manuel, ce sera pour une autre fois :)
#include <err.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/time.h>
#include <unistd.h>
#define NSAMPLES 5
#define MAX_NSAMPLES 20
#define RESET_TIME 5
#define PRECISION 0
extern char (…)

Salut à tous!
Voici un portage très simple et assez naif de TapTempo en Elixir. Elixir est un langage fonctionnel exécuté par la machine virtuelle d'Erlang. Il comprend des features intéressantes de flow programming, pattern matching etc. Les variables sont immuables de base et le langage ne comprend pas d'instructions pour boucler (le for est utilisé uniquement pour des compréhensions) et incite donc a utiliser la récursion, plus fonctionnelle.
Le port lui-même est assez naïf mais fonctionne bien. Notez (…)

Lutim, mon logiciel d'hébergement d'images est sorti en version 0.9 hier soir !
Huit mois après la version 0.8, cette nouvelle version n'apporte pas grand chose à l'utilisateur, si ce n'est une interface par défaut légèrement modifiée, moins chargée (j'espère) et une galerie (normalement) plus performante, par contre cette version améliore un certain nombre de choses sous le capot.
Voici la liste des modifications :