Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Rohansi/Mond
A scripting language for .NET Core
https://github.com/Rohansi/Mond
aot-compatible bytecode c-sharp compiler debugger dotnet dotnet-core embedded-scripting-language interpreter language mond nuget programming-language repl script-engine scripting scripting-language scripting-languages webassembly
Last synced: about 1 month ago
JSON representation
A scripting language for .NET Core
- Host: GitHub
- URL: https://github.com/Rohansi/Mond
- Owner: Rohansi
- License: mit
- Created: 2014-07-13T17:53:10.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2024-02-18T03:16:17.000Z (4 months ago)
- Last Synced: 2024-04-27T04:35:36.110Z (about 1 month ago)
- Topics: aot-compatible, bytecode, c-sharp, compiler, debugger, dotnet, dotnet-core, embedded-scripting-language, interpreter, language, mond, nuget, programming-language, repl, script-engine, scripting, scripting-language, scripting-languages, webassembly
- Language: C#
- Homepage: https://mond.rohan.dev/
- Size: 2.67 MB
- Stars: 344
- Watchers: 17
- Forks: 24
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-dotnet - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awsome-dotnet - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-dotnet - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-csharp - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- my-awesome-stars - Rohansi/Mond - A scripting language for .NET Core (C# #)
- awesome-dot-dev - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-dotnet-core-master - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - 用C#编写的动态类型脚本语言,带有REPL,调试器和简单的嵌入API。 (框架, 库和工具 / 编译器)
- system-architecture-awesome - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-programming-languages - Mond - A scripting language for .NET Core. You can try it in a browser [here](https://rohbot.net/mond/). (Uncategorized / Uncategorized)
- awesome-dotnet - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet-core - Mond - A dynamically typed scripting language written in C# with a REPL, debugger, and simple embedding API. (Frameworks, Libraries and Tools / Compilers, Transpilers and Languages)
- awesome-dotnet-cn - Mond - C#写的有着REPL、调试器和简单嵌入式API的动态类型脚本语言。 (编译器、透明机和语言)
README
### Features
* [sequences](https://github.com/Rohansi/Mond/wiki/Sequences) that can also be used for [async/await](https://fpp.literallybrian.com/mond/#e24f0a629859b38e2c27efa8aebaf60cf2cc4aed)
* [prototype-based inheritance](https://github.com/Rohansi/Mond/wiki/Prototypes)
* [metamethods](https://github.com/Rohansi/Mond/wiki/Metamethods)
* [simple embedding](https://github.com/Rohansi/Mond/wiki/Basic-Usage) with a [great binding API](https://github.com/Rohansi/Mond/wiki/Binding-API)
* and a [useful debugger](https://github.com/Rohansi/Mond/wiki/Debugging) that integrates with [VS Code](https://marketplace.visualstudio.com/items?itemName=Rohansi.mond-vscode)### Trying it
[You can try it in your browser!](https://rohbot.net/mond/) If you're interested, the backend code for that website is [available here](https://github.com/Rohansi/Mondbot).![The Mond REPL in action](https://files.facepunch.com/Rohan/2019/January/21_11-14-04.gif)
Alternatively, the Mond REPL is available as a `dotnet` tool:
```
dotnet tool install -g Mond.Repl
```### Example
```kotlin
const Seq = require("Seq.mnd");const randomApi =
"https://www.random.org/decimal-fractions/?num=1&dec=9&col=1&format=plain";Async.start(seq() {
// concurrently request for 10 random numbers
var numberTasks = Seq.range(0, 10)
|> Seq.select(() -> Http.getAsync(randomApi))
|> Seq.toArray();// wait for all the requests to finish
var numbers = yield Task.whenAll(numberTasks);// parse and sum the numbers
var total = numbers
|> Seq.select(s -> Json.deserialize(s))
|> Seq.aggregate(0, (acc, n) -> acc + n);
printLn("average = {0}".format(total / 10));
});Async.runToCompletion();
```### Install
Mond is [available on NuGet](https://www.nuget.org/packages/Mond/). To install it, use the following command in the Package Manager Console.
```
PM> Install-Package Mond
```The remote debugger is [also available on NuGet](https://www.nuget.org/packages/Mond.RemoteDebugger/).
```
PM> Install-Package Mond.RemoteDebugger
```Syntax highlighting and debugging functionality is provided in Visual Studio Code with [the Mond VSCode extension](https://marketplace.visualstudio.com/items?itemName=Rohansi.mond-vscode).
### Documentation
Please check the [wiki](https://github.com/Rohansi/Mond/wiki) for documentation.### Build Status
[![Build status](https://ci.appveyor.com/api/projects/status/di5tqqt73bu6aire)](https://ci.appveyor.com/project/Rohansi/mond)