F# – Define empty class, struct or interface types

In C#, you define an empty class, struct, or interface like this:

image

So how do you define an empty type in F#?

Well, whenever you define a new class in F#, the compiler infers the class and end tokens at the beginning and end of the class’s definition, as you can see from below:

image

So the easiest way to define an empty type is to specify the class and end tokens explicitly:

image

Running these few lines of code into the F# interactive outputs the following:

image

For class types, you also have other alternative techniques, such as:

image