Ceci dit, le concept de prototype est extrêmement séduisant. Ai-je raison de penser que ça en fait un langage naturellement void safe ? Cette propriété est implémentée par défaut dans la dernière version du compilateur Eiffel de Eiffel Software, EiffelStudio 6.6, mais au prix de, hum, une certaine complexité.
Il y a une thèse qui démarre cette année sur le sujet.
Le but est de prouver à la compilation certains contrats (préconditions et postconditions). Donc en particulier les endroits où les variables peuvent être nulles.
D'ailleurs, dernièrement, j'ai ajouté au compilateur un flag sur la ligne de commande -w_null (qui n'est d'ailleurs pas inclus dans -all_warning :) qui va indiquer à la compilation tous les endroits dans le code où l'exécutable peut péter à cause d'un appel sur NULL.
Il peux y avoir des faux positifs et l'absence de trace de la pile rend difficile le débuggage, mais sinon, c'est déjà possible. Le travail pour ajouter ce flag était minime (toute la logique est déjà dans le compilateur).
Enfin : Lisaac est-il toujours activement développé ?
Plus ou moins, je suis la personne qui contribue le plus à la branche Git, avec Benoît.
J'ai ajouté une fonctionnalité de couverture de code en Lisaac et des tests avec cucumber pour essayer de pouvoir reprendre le code.
Si ça t'intéresse, tu peux toujours essayer de regarder et nous contacter. Le langage en lui même est simple (même si le code du compilateur est plus complexe)
[^] # Re: Conclusion
Posté par Mildred (site web personnel) . En réponse au journal Problème inédit de sécurité. Évalué à 4.
Il y a une thèse qui démarre cette année sur le sujet.
Le but est de prouver à la compilation certains contrats (préconditions et postconditions). Donc en particulier les endroits où les variables peuvent être nulles.
D'ailleurs, dernièrement, j'ai ajouté au compilateur un flag sur la ligne de commande -w_null (qui n'est d'ailleurs pas inclus dans -all_warning :) qui va indiquer à la compilation tous les endroits dans le code où l'exécutable peut péter à cause d'un appel sur NULL.
Il peux y avoir des faux positifs et l'absence de trace de la pile rend difficile le débuggage, mais sinon, c'est déjà possible. Le travail pour ajouter ce flag était minime (toute la logique est déjà dans le compilateur).
Enfin : Lisaac est-il toujours activement développé ?
Plus ou moins, je suis la personne qui contribue le plus à la branche Git, avec Benoît.
J'ai ajouté une fonctionnalité de couverture de code en Lisaac et des tests avec cucumber pour essayer de pouvoir reprendre le code.
Si ça t'intéresse, tu peux toujours essayer de regarder et nous contacter. Le langage en lui même est simple (même si le code du compilateur est plus complexe)