Standardised formatting.

This commit is contained in:
simon 2017-08-14 20:18:13 +01:00
parent 31176e1f39
commit d7886550a6
25 changed files with 1131 additions and 949 deletions

View file

@ -21,75 +21,93 @@
#include "lispops.h"
#include "repl.h"
void bind_function( char* name, struct cons_pointer (*executable)
(struct stack_frame*, struct cons_pointer)) {
deep_bind( intern( c_string_to_lisp_symbol( name), oblist ),
make_function( NIL, executable));
void bind_function(char *name, struct cons_pointer (*executable)
(struct stack_frame *, struct cons_pointer))
{
deep_bind(intern(c_string_to_lisp_symbol(name), oblist),
make_function(NIL, executable));
}
void bind_special( char* name, struct cons_pointer (*executable)
(struct cons_pointer s_expr, struct cons_pointer env,
struct stack_frame* frame)) {
deep_bind( intern( c_string_to_lisp_symbol( name), oblist ),
make_special( NIL, executable));
void bind_special(char *name, struct cons_pointer (*executable)
(struct cons_pointer s_expr, struct cons_pointer env,
struct stack_frame * frame))
{
deep_bind(intern(c_string_to_lisp_symbol(name), oblist),
make_special(NIL, executable));
}
int main (int argc, char *argv[]) {
/* attempt to set wide character acceptance on all streams */
int main(int argc, char *argv[])
{
/*
* attempt to set wide character acceptance on all streams
*/
fwide(stdin, 1);
fwide(stdout, 1);
fwide(stderr, 1);
int option;
bool dump_at_end = false;
bool show_prompt = false;
while ((option = getopt (argc, argv, "pd")) != -1)
{
switch (option)
{
while ((option = getopt(argc, argv, "pd")) != -1) {
switch (option) {
case 'd':
dump_at_end = true;
break;
dump_at_end = true;
break;
case 'p':
show_prompt = true;
break;
show_prompt = true;
break;
default:
fprintf( stderr, "Unexpected option %c\n", option);
break;
}
fprintf(stderr, "Unexpected option %c\n", option);
break;
}
}
if (show_prompt) {
fprintf( stdout, "Post scarcity software environment version %s\n\n", VERSION);
fprintf(stdout,
"Post scarcity software environment version %s\n\n", VERSION);
}
initialise_cons_pages();
/* privileged variables (keywords) */
deep_bind( intern( c_string_to_lisp_string( "nil"), oblist), NIL);
deep_bind( intern( c_string_to_lisp_string( "t"), oblist), TRUE);
/*
* privileged variables (keywords)
*/
deep_bind(intern(c_string_to_lisp_string("nil"), oblist), NIL);
deep_bind(intern(c_string_to_lisp_string("t"), oblist), TRUE);
/* primitive function operations */
bind_function( "assoc", &lisp_assoc);
bind_function( "car", &lisp_car);
bind_function( "cdr", &lisp_cdr);
bind_function( "cons", &lisp_cons);
bind_function( "eq", &lisp_eq);
bind_function( "equal", &lisp_equal);
bind_function( "read", &lisp_read);
bind_function( "print", &lisp_print);
/*
* primitive function operations
*/
bind_function("assoc", &lisp_assoc);
bind_function("car", &lisp_car);
bind_function("cdr", &lisp_cdr);
bind_function("cons", &lisp_cons);
bind_function("eq", &lisp_eq);
bind_function("equal", &lisp_equal);
bind_function("read", &lisp_read);
bind_function("print", &lisp_print);
/* primitive special forms */
bind_special( "apply", &lisp_apply);
bind_special( "eval", &lisp_eval);
bind_special( "quote", &lisp_quote);
/*
* primitive special forms
*/
bind_special("apply", &lisp_apply);
bind_special("eval", &lisp_eval);
bind_special("quote", &lisp_quote);
repl(stdin, stdout, stderr, show_prompt);
// print( stdout, lisp_eval( input, oblist, NULL));
if ( dump_at_end) {
if (dump_at_end) {
dump_pages(stderr);
}
return(0);
return (0);
}