web-dev-qa-db-fra.com

Mesure du pouvoir autre que la totalité de la complétude

J'ai à l'origine essayé de demander à cela sur Stackoverflow, mais c'était trop subjectif :-(. Je m'intéresse aux méthodes de définition du pouvoir des langages de programmation. Turcez l'exhaustivité en est un, mais c'est presque universellement satisfait. Qu'est-ce qui serait bien, c'est de définir un mesure du pouvoir qui discrimine les langages de programmation réellement utilisés. Par exemple, quelqu'un peut-il proposer une méthode non subjective qui distinguerait entre l'assemblage et Java?

Turning Complézess signifie qu'une langue est maximale puissante dans ce qu'elle peut produire (ce qui signifie à peu près, il peut faire n'importe quoi sans temps dans le monde réel). Donc, si nous voulons définir une mesure de pouvoir plus forte, nous devons adopter une autre approche. L'essoufflement a été suggéré dans la question initiale, mais ce n'est pas facile de définir du tout. Quelqu'un a-t-il d'autres suggestions?

18
Casebash

Si je comprends votre question correctement, vous recherchez néanmoins quelque chose qui est relativement mesurable et pas seulement un appel de jugement subjectif. Si c'est le cas, je ferais personnellement une faveur la quantité de temps prise pour résoudre tout problème particulier (moyenne sur tous les problèmes et tous les programmeurs). Dans cette mesure, vous devrez peut-être envisager non seulement la langue elle-même, mais également le cadre/API utilisé avec celui-ci. Succompte Syntaxe est un facteur très faible: une plus grande plus importante est que la fonctionnalité la plus couramment requise est facilement accessible.

Si vous cherchez quelque chose de plus subjectif, je dirais comment c'est amusant. Les programmeurs ont tendance à être des gens qui veulent des problèmes résolus, un langage de programmation amusant pour les programmeurs à utiliser est inévitablement être celui qui résoudra le plus de problèmes. Cette mesure prend en compte que différentes personnes ont des préférences différentes sur la manière d'utiliser des choses, de sorte que le "meilleur" langage de programmation sera celui qui attire le plus attrait à la gamme la plus large des programmeurs. Cependant, vous devrez peut-être envisager non seulement le langage de programmation et l'API ici, mais également l'environnement (IDE), qui est bien sûr ce que le programmeur interagit réellement.

6
Timwi

Je définirais à quel point une langue est produite par la manière dont vous pouvez être productif. Beaucoup de gens ont tendance à parler de la productivité en termes de code d'écriture rapidement, mais étant donné que la majorité du cycle de vie d'un programme est la maintenance, pas le développement, une meilleure mesure est la facilité avec laquelle vous pouvez lire et déboguer le code, surtout quand il est écrit par quelqu'un autre. Les langues les plus puissantes sont celles qui sont les plus faciles à lire et à entretenir.

1
Mason Wheeler