A Gamified .NET Interactive Framework for Teaching and Learning Multi-Language Programming for High School and Undergraduate Students
Polyglot works well with C# and SysML V2, but we're extending the support for the other .NET Interactive languages (F#, Javascript, ...)
See it in action in the videos below!
video-CSharp.mp4
video.SysML.mp4
You can clone the repo and open the solution with Visual Studio.
The solution is composed of three projects (plus the test project):
- Polyglot.Gamification: Handles the communication with Polyglot backend and the integration with Journey
- Polyglot.Interactive: handles the integration with VSCode notebooks
- Polyglot.Interactive.SysML: Provides the SysML kernel abstraction for .NET Interactive
- Polyglot.Metrics.CSharp: has language specific metrics
- Polyglot.Metrics.SysML: has language specific metrics
Go to https://dotnet.microsoft.com/en-us/download/dotnet/7.0, download and install the latest .NET 7 version available for your machine.
Go to https://code.visualstudio.com/download, download and install the latest VSCode version available for your machine.
Open VSCode, go to the extensions marketplace and install the "Polyglot Notebooks" extension, version 1.0.3611020 (you can also find it at the following link https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.dotnet-interactive-vscode)
Go to https://graphviz.org/download/, download and install GraphViz 7.* for your machine.
During the installation process make sure to add GraphViz to PATH (at least for the current user)
Install the JRE (Java Runtime Environment) for your machine (Java 17 or above). Make sure to add the JRE to PATH (at least for the current user) so that you can run "java --version" from the command line.
Open the notebook on VSCode and run: first cell:
#r "nuget: Polyglot.Interactive, 0.0.2-*"
second cell:
#!polyglot-setup --flowid PUT_HERE_THE_FLOW_ID_YOU_WANT_TO_RUN --serverurl https://api.polyglot-edu.com/
-
Antonio Bucchiarone - Fondazione Bruno Kessler (FBK), Trento, Italy
-
Diego Colombo - Microsoft Research, Cambridge, United Kingdom
-
Tommaso Martorella - École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland - Microsoft Learn Student Ambassador
-
Davide Frageri - Università di Trento, Trento, Italy
For any information, you can contact us by writing an email to [email protected]