int init_program() { init_global_variable(); // read setting file to get id and ip mapping list. int numberofnode; ID_IP = read_setting_file(setting_file,&numberofnode); if(ID_IP == NULL) { printf("\nCannot read setting file"); exit(1); } // init server server_id = get_id_server(); char *ip_server = look_up_ip(ID_IP,server_id); printf("\nInit server :%s",ip_server); server_sd = init_server(ip_server,SERVER_PORT); //connect to neighbor // client_sd = reconnect_to_neighbor(server_id,ID_IP); ST = init_list_of_file(directory); return 1; }
int main(int argc, char *argv[]) { char *inputs[] = { "(lambda (x) (return x))", }; init_global_variable(); init_prims(); init_primitive_opcode(); init_macros(); load_init_file(); for (int i = 0; i < sizeof(inputs) / sizeof(char *); i++) { write_raw_string(">> ", standard_out); write_raw_string(inputs[i], standard_out); write_raw_char('\n', standard_out); lisp_object_t *expr = read_object_from_string(strdup(inputs[i])); expr = compile_to_bytecode(expr); if (is_signaled(expr)) writef(standard_out, "%?\n", expr); else writef(standard_out, "=> %?\n", expr); } return 0; }