bar

FaCiLe (Functional Constraint Library)

Une librairie fonctionnelle de Programmation par Contraintes

bar

The FaCiLe Home Page is also available in english.

Description

FaCiLe est une librairie de Programmation par Contraintes sur les domaines finis (entiers et ensembles d'entiers) entièrement écrite avec OCaml. FaCiLe intègre toutes les fonctionnalités standards de création et manipulation de variables (logiques) à domaine fini, d'expressions et de contraintes arithmétiques (éventuellement non-linéaires), de contraintes globales (différence, cardinalité, tri etc.) et de buts de recherche et d'optimisation. FaCiLe permet aussi de construire facilement de nouvelles contraintes et de nouveaux buts (éventuellement récursifs) définis par l'utilisateur, à l'aide d'interfaces simples et puissantes qui utilisent intensivement des fonctions d'ordre supérieur. Comme FaCiLe est une librairie OCaml et pas "encore un nouveau langage", l'utilisateur bénéficie de l'inférence de type et du typage statique strict, d'un haut niveau d'abstraction, des systèmes de modules et d'objets, ainsi que de l'efficacité du compilateur qui produit du code natif optimisé (pour toutes les plates-formes courantes), de la gestion automatique de la mémoire et du débogueur avec retour arrière, autant de caractéristiques d'OCaml qui permettent de prototyper et expérimenter très rapidement: la modélisation, le traitement des données et les interfaces sont implémentés à l'aide du même langage puissant et efficace.

Pour une description plus complète, vous pouvez consulter la préface et l'avant-propos de la documentation en ligne.

Disponibilité

FaCiLe est distribuée sous licence GNU Lesser General Public License (LGPL):