Posts
-
Implementing APIs with the visitor pattern
I want to leverage my visitor pattern source generator to implement a simple minimal api.... -
TreeSitter C# bindings
I am a big fan of the visitor pattern, I think it is a very good approach for adding behaviors to a group of classes without modifying all of them.... -
Visitor pattern source generator
I am a big fan of the visitor pattern, I think it is a very good approach for adding behaviors to a group of classes without modifying all of them.... -
Creating a new Racket language
If you're interested in creating new programming languages or domain specific languages and also in scheme or LISP... -
Using EF6 with SQLite on dotnet core
In this post we will see how to use EF6 (not EF Core) in a .NET Core application with SQLite... -
Railway oriented programming in ASP.NET Core
In a previous post I talked about ROP in C#, now I want to explore how to use it in a ASP.NET Core web api project.... -
Downsides of Dependency Injection
What problems does DI solve? I really like what wikipedia says "The intent behind dependency injection is to achieve separation of concerns of construction and use of objects."... -
LLVM Kaleidoscope .NET
If you're reading and learning about compilers in these days you will at some point find something about LLVM. I did and I tried to implement the Kaleidoscope tutorial from the official documentation using C#.... -
Workflows with the visitor pattern
As a software developer I develop, most of the times, LOB applications that support some kind of process or workflow for a specific company.... -
Parsing polynomials with F# and FParsec
Parsing a polynomial expression is a simple but interesting example of parsing. We need to handle operator precedence and associativity, for example*
has a higher precedence than+
and the exponentiation is right associativex^y^z=x^(y^z)
.... -
Parsing polynomials with the Pratt algorithm
Using a Pratt parser I aim to parse expressions like thisx^2+y^2-1, x=1, y=1
andxy, x=2, y=3
. Parsing mathematical expressions it's not hard but it already contains some interesting behaviour such as associativity between operatorsx+y*z
is equal tox+(y*z)
and not(x+y)*z
.... -
Antlr4 polynomial grammar - 2020 update
A few years back I was playing with Antlr to build a polynomial evaluator. The result was working but not very sofisticated o particularly good, just a minimal working example. In these days of quarantine in Italy, I decided to get back a that project and try to make something better.... -
Railway oriented programming with C#
A few days back I was reading about Railway oriented programming... -
A tagged union example
We will talk about tagged union types, how to implement them in C# and how to use them effectively in modeling our domain... -
AutoToString Visual Studio Extension
More than a year ago I built my very first Visual Studio extension... -
Attesa Bus Android App
Today I tried flux and the dart language from Google, it was easy and fast, I was able to develop a simple app with material UI in a couple of hours... -
ASPNET Core on CentOS
Today I experimented with the DigitalOcean Cloud and the aspnet core deploy on a linux server. Specifically I wanted to deploy a sample .net core web app on a CentOS 7 server using nginx as a web server.... -
Sample log4net config nuget packages
Everytime I install the log4net nuget package I have to looku,p on the internet or on my other project, how to modify the app.config... -
Antlr4 polynomial grammar
In the last couple of months I've been reading and studying about compilers and languages and for everyone doing something like that it's very easy to meet Antlr at a certain point... -
Xamarin Bottom Navigation
The bottom navigation is a very simple and easy template from Android Studio... -
Xamarin Navigation Drawer
Last week I was trying for the first time to write a simple app using Xamarin. I wanted a "material design" menu which after some research I understood to be a navigation drawer... -
Welcome to my Blog!
Welcome! Here I'll be posting about my work on C# and .NET in general. If you find anything interesting or wrong please drop me a few lines, any feedback is appreciated...
subscribe via RSS