KIFF sur le raspberry
Konnaître l'InFormatique en Français
 Faites Kiffer le Codeur en Vous
PROTO-GEEK
Qui suis-je?
GEEK FRAMBOISE
1981... L'année où j'ai découvert l'informatique...

A l'époque les machines offraient un environnement tout en un. Pas besoin de bibliothèques externes, pas d'installation compliquée. On lançait la machine et on entrait dans le vif du sujet.

Avec KIFF, j'ai voulu redonner cette même simplicité à l'apprentissage des concepts de base de la programmation moderne.

Réinventer le BASIC, mais selon les usages d'aujourd'hui et en français.

Et sur une machine à la portée de toutes les bourses: le raspberry...

Le choix du français
Le choix d'une syntaxe en français peut sembler surprenant au premier abord. Les codeurs expérimentés fronceront les sourcils en objectant de l'importance de connaitre l'anglais, ce que j’admets tout à fait. 

Cependant, les expériences menées par des organisations comme Coding Goûter, ont montré que les enfants comprenaient mieux les concepts de l’informatique lorsqu’il n’y avait pas la barrière de la langue. Et d'après mon expérience personnelle, il en va de même pour les gens qui n'ont aucune connaissance dans le domaine.

J’ai aussi le souvenir douloureux d’un moi beaucoup plus jeune s’arrachant les yeux sur une documentation uniquement en anglais.  ◔̯◔


KIFF pour les utilisateurs avertis...
KIFF est un langage de programmation avancé dont les concepts sont ceux des langages les plus récents.

Il permet de mélanger une syntaxe impérative (boucles et fonctions) avec une syntaxe plus fonctionnelle inspirée de Haskel. Le langage comprend aussi un interpréteur Prolog dont les instructions peuvent librement s'insérer dans votre code.

KIFF offre aussi une palette très riche et variée de types prédéfinis (chaine, nombre, décimal) ainsi que des conteneurs de toute forme (table, dictionnaire, liste). On peut encore déclarer des classes ou surcharger des types existants.

Enfin, nous avons rajouté au langage la plupart des composants sans lesquels un langage informatique ne saurait fonctionner:
  • Bases de données (SQLite)
  • Sockets (HTML, vous pourrez implanter votre propre serveur REST)
  • Graphisme (basé FLTK, vous pourrez construire des interfaces graphiques en quelques instructions ou même développer vos propres animations)
  • Sons (basé sur liboa, vous pourrez lire la plupart des formats audios: MP3, OGG, FLAC etc.)
  • Multi-tâches (vous pourrez créer des threads à volonté, de façon simple et transparente)
  • Gestion internet (basé sur Curl, permet de télécharger des pages HTML ou de lancer des requêtes)
  • Gestion des fichiers XML (basé sur libxml2)


Et pour les utilisateurs les plus avancés, vous pourrez enrichir le langage en créant vos propres bibliothèques dynamiques en C++.


Une seule installation pour une expérience complète de programmation