Basics

#define null (void*)0

typedef uint8_t ubyte;
typedef uint16_t ushort;
typedef uint32_t ulong;
typedef uint64_t ullong;

typedef int8_t sbyte;
typedef int16_t sshort;
typedef int32_t slong;
typedef int64_t sllong;

typedef unsigned int uint;
typedef signed int sint;

typedef long double extended;

typedef float _Complex fcomplex;
typedef double _Complex dcomplex;
typedef long double _Complex ecomplex;

#ifdef k32Bits
typedef uint32_t natural;
typedef int32_t integer;
typedef float real;
typedef fcomplex complex;
#endif

#ifdef k64Bits
typedef uint64_t natural;
typedef int64_t integer;
typedef double real;
typedef dcomplex complex;
#endif

typedef char* string;
typedef const char* const_string;
typedef va_list kArgs;

typedef id kObj;
typedef Class kClass;
typedef Protocol kProtocol;
typedef SEL kSel;
typedef IMP kMethod;