/******************************************************************
 * Generic SCHEME defines for ATOMS, etc:
 ******************************************************************/
#ifndef __DEFINE
#define __DEFINE

#include <uC++.h>
#include <uIOStream.h>
#include <uIOManip.h>
#include <stdio.h>
#include "ugeneric.h"


/******************************************************************
 * DEFINES:
 ******************************************************************/
#define VERSION "0.65"

// Compiler flags:
// ATOM_DEBUG: Atoms track ownership and assert deletors match.
//#define ATOM_DEBUG
 
#ifndef TRUE
#define TRUE 1
#endif
#ifndef FALSE
#define FALSE 0
#endif

// Normal atom types:
#define INVALID -1
#define SYMBOL 2
#define NUMBER 3
#define STRING 4
#define LIST 5
#define FLIST 6     // Generate a future!
#define AFUTURE 7   // This is a future!

// Symbol table stuff:
#define ALIAS 1
#define FUNC 2
#define INTERNAL 3      // Has a fnc ptr!

#endif

