Bof, tu peux redéfinir les tiens. Et puis ça casse l'inférence de type. Je ne trouve pas cher payé d'utiliser +. ou +! pour éviter d'avoir à écrire les types tout en gardant un typage fort.
Seulement, pour peu qu'on aie à travailler avec des types différents (par exemple, de taille différente), se retrouver avec des +, +., +!, ++, +/, etc. n'est pas ce qu'il se fait de plus commode et de plus lisible.
Il y a pas mal de bindings C existants et ça semble relativement facile. Il y a également du travail fait pour faciliter l'intégration avec d'autres languages comme java ou javascript, mais j'aurai tendance à abonder dans ton sens (voir mon post original).
Pour en avoir fait un peu, c'est assez mal documenté et nécessite de repasser toutes les fonctions à la main en convertissant chaque argument avec les macros qui vont bien. C'est relativement pénible. Alors, pour une micro bibliothèque, ça passe, mais c'est pas demain la veille qu'il y aura un binding Qt ou OpenGL complet et à jour.
Ça c'est que tu es déformé par des années de syntaxe à la sauce C. Ocaml a une syntaxe minimale, la rendre plus verbeuse serait à mon sens affaiblir le language en temps que tel. Après, il est certain que ça rendrait l'apprentissage plus facile pour tous les programmeurs qui connaissent déjà java, C, C++, etc.
Après, on peut rester minimal sans forcément utiliser des tas de symboles. Par exemple, Python fait ça très bien, tout en étant différent du C.
[^] # Re: ocaml...
Posté par Kévin Guilloy . En réponse au journal Votre langage idéal ?. Évalué à 0.
Seulement, pour peu qu'on aie à travailler avec des types différents (par exemple, de taille différente), se retrouver avec des +, +., +!, ++, +/, etc. n'est pas ce qu'il se fait de plus commode et de plus lisible.
Pour en avoir fait un peu, c'est assez mal documenté et nécessite de repasser toutes les fonctions à la main en convertissant chaque argument avec les macros qui vont bien. C'est relativement pénible. Alors, pour une micro bibliothèque, ça passe, mais c'est pas demain la veille qu'il y aura un binding Qt ou OpenGL complet et à jour.
Après, on peut rester minimal sans forcément utiliser des tas de symboles. Par exemple, Python fait ça très bien, tout en étant différent du C.