init commit
This commit is contained in:
commit
6300e42bb2
28 files changed
+104005
No files matched your search
+51
@@ -0,0 +1,51 @@
|
||||
#include "enfilade.h"
|
||||
#include "enfilade_s7.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
static void repl(s7_scheme *sc)
|
||||
{
|
||||
char buffer[4096];
|
||||
|
||||
for (;;) {
|
||||
fputs("> ", stdout);
|
||||
fflush(stdout);
|
||||
|
||||
if (!fgets(buffer, sizeof(buffer), stdin)) {
|
||||
fputc('\n', stdout);
|
||||
return;
|
||||
}
|
||||
|
||||
if (buffer[0] == '\n' && buffer[1] == '\0')
|
||||
continue;
|
||||
|
||||
{
|
||||
s7_pointer value = s7_eval_c_string(sc, buffer);
|
||||
printf("%s\n", s7_object_to_c_string(sc, value));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
if (argc == 2 && (!strcmp(argv[1], "-V") || !strcmp(argv[1], "--version"))) {
|
||||
printf("ensifer version %s\n", ENSIFER_VERSION);
|
||||
return 0;
|
||||
}
|
||||
if (argc == 2 && (!strcmp(argv[1], "-h") || !strcmp(argv[1], "--help"))) {
|
||||
puts("Usage: logan [-h|--help] [-V|--version]");
|
||||
return 0;
|
||||
}
|
||||
if (argc != 1) {
|
||||
fprintf(stderr, "Usage: logan [-h|--help] [-V|--version]\n");
|
||||
return 2;
|
||||
}
|
||||
|
||||
s7_scheme *sc = s7_init();
|
||||
|
||||
init_enfilade_s7(sc);
|
||||
repl(sc);
|
||||
s7_free(sc);
|
||||
return 0;
|
||||
}
|
||||
Reference in new issue
Block a user