    #import <Fondation/Fondation.h>

    // Simple class
    @interface MyClass : Object {
        // instance variables
        int myVariable
    }
    // Class methods
    + myClassMethod;
    + (int)myClassMethod2;
    + (int)myClassMethod3:(NSString *)parameter;

    // Instance methods
    - (int)myInstanceMethod:(NSString *)text;
    - (NSString *)myInstanceMethod2:(int)parameter
                                  withText:(NSString *)text;
    @end

    @implementation MyClass
    + (int)classMethod {
      return [self myVariable];
    }
    - (NSString *)instanceMethod {
        NSString *string = [[NSString alloc]initWithUTF8String:"Good string ©"];
        NSLog(@"String:%@",string);
        return string;
    }
    @end

    // Protocol
    @protocol MyKeyProtocol
    - (void)lock;
    - (void)unlock;
    @end

    // Class that implements a protocol
    @interface MyClass2 : Object <MyKeyProtocol> {

    }
    // Protocol methods
    - (void)lock;
    - (void)unlock;
    @end