Pour être honnête, je ne pense pas qu'il y ait quelque chose de comparable à Node.js pour le moment.
Pourquoi? Eh bien, parce que JavaScript était un thread unique depuis le début, cela a fait évoluer le langage dans ce qu'il est aujourd'hui, un langage parfaitement adapté à la programmation asynchrone, comme vous le faites dans Node.js.
Les fonctions étant des objets de première classe, ainsi que d'avoir des fermetures est doit si vous voulez une expérience de type nœud. Par exemple, vous pouvez tout aussi bien entourer le langage C autour de l'événement lib et l'utiliser. Mais à quel point cela serait-il amusant? Même avec twisted, vous n'approchez même pas de l'expérience Node.js. Le deuxième point est que Node.js a - à l'exception des fonctions de synchronisation des modules fs
- aucune fonction de blocage, alors même si vous pouvez certainement faire ce style de programmation en Python, vous ne savez jamais avec certitude si cet appel de bibliothèque est .nn Je ne vais pas bloquer tout votre programme. Et tuez le débit de votre serveur.
Aussi Node est rapide, comme en VRAIMENT rapide. V8 est définitivement en avance sur Python et Ruby, oui vous pouvez écrire des C-Extensions pour les deux, mais vous pouvez tout aussi bien le faire pour Node.js. Un autre avantage de l'utilisation de V8, Google investit une tonne de temps/argent dans ce moteur, une autre amélioration jusqu'à 2x est déjà sur le chemin avec Crankshaft. Node.js a plus de points positifs, c'est un framework complet (alors que Twisted est principalement en réseau asynchrone) et c'est du JavaScript. Ce dernier peut sembler stupide, mais la possibilité de réutiliser le code et de ne pas avoir à changer de contexte, tout en étant capable d'utiliser des frameworks matures pour la manipulation DOM (bien, c'est-à-dire dès que jsom entre dans un état plus stable) est une autre caractéristique de tueur.
Si vous ne l'avez pas encore fait, je vous recommande de regarder quelques-unes des conférences énumérées sur notre Tag Wiki.
Surtout le YUI montre quelles possibilités nous attendent dans un proche avenir.
Donc, pour résumer:
Bien qu'il ya pas mal de cadres là-bas qui ont une boucle d'événement, juste avoir la boucle elle-même ne vous donnera pas la même expérience que Node.js, vous devriez donc Ne vous attendez pas à une expérience comparable lorsque vous faites des choses en C ou Java par exemple.
Downvoter, prendre soin d'élaborer? –
Bien sûr. Votre réponse sentait l'évangélisation gratuite de node.js et n'a pas répondu à la question. Vous auriez pu arrêter avec votre commentaire "Je ne pense pas qu'il y ait quelque chose de comparable" et en faire un simple commentaire à la question. En tout cas, c'était une question rhétorique de ma part: je savais que Tcl était une réponse valable tout le long. Je n'accepterai pas ma propre réponse tant que les autres n'auront pas eu le temps de fournir d'autres réponses éventuellement plus complètes à la question (autres langues que Tcl?) –
Puis changez le titre de votre question "..exposé comme langue construction?" me dit qu'il devrait se sentir * 100% * naturel lorsque vous écrivez du code asynchrone, et vous ne devriez pas avoir à vous inquiéter que tous les autres appels pourraient être potentiellement bloquants. –