40 votes

Le REPL C# 4.0 d'Anders Hejlsberg

Pendant les 10 dernières minutes du discours d'Ander. L'avenir du C# il fait la démonstration d'une boucle C# Read-Eval-Print vraiment cool qui serait d'une aide précieuse pour apprendre le langage.

Plusieurs téléchargements liés à .NET4 sont déjà disponibles : Visual Studio 2010 et .NET Framework 4.0 CTP , Kit de formation Visual Studio 2010 et .NET Framework 4 . Savez-vous ce qu'il est advenu de ce REPL ? Est-il caché quelque part parmi les exemples ?

Je suis au courant du mono repl. S'il vous plaît, pas de solutions alternatives.

11 votes

Je sais que c'est très ancien, mais pour la prochaine personne qui tombera sur ce site comme je l'ai fait en cherchant un REPL Roslyn C# (en gros celui qu'utilise Anders), allez sur le site : http://www.microsoft.com/download/en/details.aspx?id=27746 , installer, redémarrer visual studio... du lien : "Une nouvelle fenêtre d'outils appelée C# Interactive est disponible dans Visual Studio en invoquant View -> Other Windows -> C# Interactive dans le menu."

5 votes

Le lien est mort. On dirait que MS a tué la version 2010. Si vous avez la version 2012, vous pouvez essayer ceci : microsoft.com/fr/download/details.aspx?id=34685

0 votes

ScriptCS semble être le meilleur REPL autonome, construit sur les API de Roslyn et utilisant NuGet comme gestionnaire de paquets : github.com/scriptcs/scriptcs

25voto

Marc Gravell Points 482669

La démo de REPL faisait partie de "ce qui pourrait arriver ensuite", c'est-à-dire après 4.0 ; en .NET 5.0 ou quelque chose de similaire.

C'est no La fonctionnalité 4.0, et ne l'a jamais été.

0 votes

J'ai supposé que sa démonstration était en réponse à ce post pour une technologie similaire dans Mono : tirania.org/blog/archive/2008/Sep-10.html

1 votes

Oui, le repl de Mono est assez bon (pour ceux qui ne le connaissent pas, installez mono, puis monodir/bin/gsharp ou /bin/gsharp). Mais la possibilité d'ajouter des fonctions de la même manière qu'Anders me manque.

0 votes

Comme alternative, j'utilise sliver.com/dotnet/SnippetCompiler et le REPL de Mono actuellement, mais ce serait vraiment bien d'avoir un Repl C# décent.

9voto

Stimul8d Points 4730

Il est probablement utile de mentionner que le projet Mono a déjà hace J'ai un REPL C# que j'ai tendance à utiliser pour ces petites vérifications que vous faites de temps en temps. Jetez un coup d'œil. De même, si je teste une idée dont je ne suis pas sûr que Mono la gère bien et que cela ne vaut pas la peine de lancer un nouveau projet de test, alors Compilateur de snippets est toujours utile.

4voto

Kevin Driedger Points 6184

La fenêtre Immédiate (Debug>Windows>Immédiate Ctrl+D, I ) est un remplacement assez bon qui est intégré. Elle nécessite de lancer l'IDE et de placer un point d'arrêt sur quelque chose.

Cela vous donne le contexte dans lequel vous souhaitez faire des expériences.

1 votes

Le mode immédiat ne permet pas de traiter les lambdas c# :(

1 votes

C'est une pilule difficile à avaler : les lambdas sont bien sûr agréables et les utiliser dans la fenêtre immédiate ainsi que dans l'édition et la continuation rendrait l'expérience de Visual Studio bien meilleure.

0 votes

La fenêtre immédiate est une blague par rapport à un REPL - elle est conçue pour vous aider à déboguer, rien de plus. Un vrai REPL est toujours disponible et une fois que vous avez chargé toutes les dépendances, il n'y a aucune restriction sur ce que vous pouvez faire. Dans la fenêtre immédiate, vous ne pouvez pas créer de classes. Vous ne pouvez pas créer de méthodes. Vous ne pouvez pas redéfinir le code. Lambdas. Etc. Vous pouvez invoquer des méthodes, changer la valeur d'une propriété et créer des variables. Et c'est tout. Si vous avez déjà vraiment utilisé un REPL, vous devez savoir que la fenêtre immédiate est très loin d'être un remplacement - on ne peut tout simplement pas remplacer une moto par un tricycle.

3voto

ShuggyCoUk Points 24204

La réponse de Marc est tout à fait correcte, le possibilité d'un repl ou script comme c# a été discuté par Eric Lippert dans deux billets de blog :

J'ajouterais que, la CTP 2010 contient un f# repl (pas beaucoup d'utilité pour le c# mais si vous étiez intéressé par un aspect de la BCL ou CLR alors cela pourrait être suffisant pour vos besoins)

Je trouve que LINQPad compense l'absence de REPL dans de nombreux cas. Ce serait bien qu'il soit intégré à Visual Studio pour que vous puissiez interagir plus facilement avec votre base de code existante.

1 votes

L'astuce concernant F# Interactive est très utile. Je l'utilise souvent pour tester rapidement des éléments comme les classes Regex, les classes de réseau, etc.

2 votes

J'ai tendance à utiliser PowerShell lorsque je veux tester quelque chose dans le framework. C'est encore plus facile maintenant que nous avons la console du gestionnaire de paquets. Évidemment, cela ne vous aidera pas à tester quelque chose dans le langage C#.

2voto

Dinis Cruz Points 1042

Jetez un coup d'œil à ceci C# REPL script Environnement qui est un excellent moyen d'exécuter rapidement le script C# (et d'apprendre à coder).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X