java - utilisés - Langages de programmation gérés open source




liste langage de programmation (8)

Y a-t-il de bonnes / portables, open source, de haut niveau, statiques, impératifs, orientés objet, garbage collection, des langues / runtimes sûrs avec une performance raisonnable en plus de Mono et Java? Mono est sympa, mais c'est une technologie Microsoft, et j'ai un peu peur de l'utiliser (je ne sais pas si cette peur est rationnelle). Le problème avec Java est qu'il est simplement trop simple (pas de types de données non signés, pas de structures, etc.).


C ++ avec un garbage collector ? Bien que vous n'ayez pas beaucoup de problèmes avec Java (à moins de pouvoir expliquer pourquoi vous avez besoin de ces choses, ces arguments ne sont généralement pas très solides, mais parfois ils le sont).


Comment pouvez-vous dire que Java est trop simple?

Ok, une des raisons pour développer Java est de le rendre moins compliqué que C ++ qui a une page de spécification de plus de 900 pages. Cependant, c'est beaucoup plus compliqué que C.

Il y a environ 10 ans, j'ai assisté à un cours de Les Hatton et il a fait des recherches pour rendre votre programme C plus sûr à utiliser. Il a fait valoir que presque personne ne pouvait se rappeler les 140 pages de la norme C, donc il serait exceptionnellement difficile de comprendre quelque chose comme C ++.

Bien sûr, votre cible peut ne pas exiger de sécurité, mais si vous le faites, c'est quelque chose à retenir.


Je voudrais souligner Vala , qui est un langage basé sur la syntaxe de C #, mais qui cible un compilateur C (semblable à Eiffel) et un runtime léger et auto-hébergé. Il manque la collection de garbace, cependant.


Mono n'est pas une technologie Microsoft. .NET est, mais Mono n'est pas - Mono est une implémentation open-source des normes internationales ECMA-334 et ECMA-335. Oui, ils proviennent de Microsoft, mais Mono lui-même n'est pas la technologie Microsoft.

Ce n'est pas que le Mono est une langue, bien sûr - C # est la langue. Mais alors les langages ne sont pas vraiment open-source ou pas - les implémentations le sont.

On dirait que vous avez probablement une peur irrationnelle de C # - et de Java. Il y a certainement des choses que j'aimerais voir en Java (et je préfère nettement C #), mais il est tout à fait possible d'y écrire des applications très significatives.


Sur le CLR, il y a Boo .

Boo est un nouveau langage de programmation statiquement typé orienté objet pour Common Language Infrastructure avec une syntaxe inspirée de Python et un accent particulier sur l'extensibilité du langage et du compilateur

Le Manifeste Boo est un bon point de départ.


Tout d'abord, Mono n'est pas la technologie Microsoft. À la seconde, il n'y a que deux machines virtuelles sérieuses (VM) avec les caractéristiques mentionnées - .Net / Mono et Java. Mais, en mettant de côté l'exigence de langage statiquement typé, vous pouvez attirer l'attention sur la prochaine machine virtuelle Parrot ( article Wikipedia sur Parrot ).

Et, bien sûr, Ruby, Python Erlang, etc. sont également des machines virtuelles crossplatform (pour un langage dynamique unique)


Eiffel répond à toutes vos exigences


scala est moins verbeux que java et il s'exécute partout où java s'exécute, car il se compile en java bytecode. Twitter a réimplanté une partie de son infrastructure de base à Scala.





mono