Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/terrajobst/minsk

This repo contains Minsk, a handwritten compiler in C#. It illustrates basic concepts of compiler construction and how one can tool the language inside of an IDE by exposing APIs for parsing and type checking.
https://github.com/terrajobst/minsk

Last synced: 4 days ago
JSON representation

This repo contains Minsk, a handwritten compiler in C#. It illustrates basic concepts of compiler construction and how one can tool the language inside of an IDE by exposing APIs for parsing and type checking.

Awesome Lists containing this project

README

        

# Minsk

[![Build Status](https://terrajobst.visualstudio.com/Minsk/_apis/build/status/terrajobst.minsk?branchName=master)](https://terrajobst.visualstudio.com/Minsk/_build/latest?definitionId=13)

> Have you considered Minsk? -- Worf, [naming things][ds9-minsk].

This repo contains **Minsk**, a handwritten compiler in C#. It illustrates basic
concepts of compiler construction and how one can tool the language inside of an
IDE by exposing APIs for parsing and type checking.

This compiler uses many of the concepts that you can find in the Microsoft
C# and Visual Basic compilers, code named [Roslyn].

[ds9-minsk]: https://www.youtube.com/watch?v=138gX3wolOo
[Roslyn]: https://github.com/dotnet/roslyn

## Live coding

This code base was written live during streaming. You can watch the recordings
on [YouTube] or browse the [episode PRs][episodes].

[YouTube]: https://www.youtube.com/playlist?list=PLRAdsfhKI4OWNOSfS7EUu5GRAVmze1t2y
[episodes]: https://github.com/terrajobst/minsk/pulls?q=is%3Apr+is%3Aclosed+label%3Aepisode+sort%3Acreated-asc

## Browsing the code

If you want to browse the code, check out the symbolic [source browser].

[source browser]: http://source.minsk-compiler.net

## Donations

Some people kindly asked me whether I accept donations. I have the luxury of
working for a great employer and I make a good salary. That means I have got the
time and means to produce these videos and share my passion for open source and
.NET.

But not everyone has that luxury. If you find these videos helpful and you want
to give back, consider donating to organizations that help the less fortunate to
get into the tech industry, such as [Black Girls Code].

Thank you ❤

[Black Girls Code]: http://www.blackgirlscode.com/donations.html