From 7b67ab3d6fbc74c95f35b992286cb98492c8b433 Mon Sep 17 00:00:00 2001 From: Nic Gaffney Date: Wed, 6 Sep 2023 14:05:17 -0500 Subject: [PATCH] restructured filetree --- build.sh | 6 +++--- examples/guessing.sloth | 2 +- out/arguments | Bin 0 -> 22704 bytes out/cgol | Bin 0 -> 22856 bytes out/chatbot | Bin 0 -> 22704 bytes out/guessing | Bin 0 -> 22704 bytes out/hello | Bin 0 -> 22704 bytes out/mandelbrot | Bin 0 -> 22704 bytes out/mutable | Bin 0 -> 22704 bytes out/read | Bin 0 -> 22704 bytes out/system | Bin 0 -> 22744 bytes sloth/src/codegen/mod.rs | 1 - std/stdsocket.c | 9 ++++++++- test.c | 19 ------------------- test.sh | 3 --- 15 files changed, 12 insertions(+), 28 deletions(-) create mode 100755 out/arguments create mode 100755 out/cgol create mode 100755 out/chatbot create mode 100755 out/guessing create mode 100755 out/hello create mode 100755 out/mandelbrot create mode 100755 out/mutable create mode 100755 out/read create mode 100755 out/system delete mode 100644 test.c delete mode 100755 test.sh diff --git a/build.sh b/build.sh index f6ad2e3..2bdd204 100755 --- a/build.sh +++ b/build.sh @@ -1,12 +1,12 @@ # Build Sloth cargo build -rm output.o FILENAME="$1" # Compile standard library ./target/debug/sloth std/extern.sloth std/stdmath.sloth std/stdio.sloth $FILENAME # Generate binary -clang --verbose -lm output.o std/stdio.c std/stdlib.c std/stdmath.c -o "${FILENAME%.sloth}" +clang -lm output.o std/stdio.c std/stdlib.c std/stdmath.c -o "${FILENAME%.sloth}" # Move file -mv "${FILENAME%.sloth}" . +mv "${FILENAME%.sloth}" out/ +rm output.o diff --git a/examples/guessing.sloth b/examples/guessing.sloth index ef680c9..cfb293d 100644 --- a/examples/guessing.sloth +++ b/examples/guessing.sloth @@ -1,5 +1,5 @@ fn main() Int { - var computer: Int = randGen(1, 10); + val computer: Int = randGen(1, 10); var tries: Int = 0; var correct: Bool = false; diff --git a/out/arguments b/out/arguments new file mode 100755 index 0000000000000000000000000000000000000000..a10a61d57c91d26f38cec017b2a878d0672a4fe5 GIT binary patch literal 22704 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 V`8E)z+wtrN)+>#UB7-7U{2$iILwNuI literal 0 HcmV?d00001 diff --git a/out/chatbot b/out/chatbot new file mode 100755 index 0000000000000000000000000000000000000000..5e91811605d1b31536508e0c38acb423ddf597d7 GIT binary patch literal 22704 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 B&KUpz literal 0 HcmV?d00001 diff --git a/out/guessing b/out/guessing new file mode 100755 index 0000000000000000000000000000000000000000..f568da891b05454843da4992fbc71106d82b6dc7 GIT binary patch literal 22704 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 HHqieB&eblN literal 0 HcmV?d00001 diff --git a/out/hello b/out/hello new file mode 100755 index 0000000000000000000000000000000000000000..77671c367e6557e316c99b8f90a37a56f952126a GIT binary patch literal 22704 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 literal 0 HcmV?d00001 diff --git a/out/mandelbrot b/out/mandelbrot new file mode 100755 index 0000000000000000000000000000000000000000..61e73a613b47e9739c87cbb3ad456ae8d079cb63 GIT binary patch literal 22704 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 SzI=nykUI$(Wl(e82KwK#mlgj2 literal 0 HcmV?d00001 diff --git a/out/mutable b/out/mutable new file mode 100755 index 0000000000000000000000000000000000000000..415e15ef7789c5fc0f600fafdb752a88e9279b62 GIT binary patch literal 22704 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 BjF12T literal 0 HcmV?d00001 diff --git a/out/read b/out/read new file mode 100755 index 0000000000000000000000000000000000000000..7acb399db58999bb5fe55c56187e6659b8836857 GIT binary patch literal 22704 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 literal 0 HcmV?d00001 diff --git a/out/system b/out/system new file mode 100755 index 0000000000000000000000000000000000000000..958ee1a02a0b4d5b9541e7b5036a85206bb81117 GIT binary patch literal 22744 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 b49f4|%t4o1W1Mbhvv1yNX!KePEUfr1OF^Jr literal 0 HcmV?d00001 diff --git a/sloth/src/codegen/mod.rs b/sloth/src/codegen/mod.rs index 7678856..ca7598c 100644 --- a/sloth/src/codegen/mod.rs +++ b/sloth/src/codegen/mod.rs @@ -71,7 +71,6 @@ impl<'ctx> Codegen<'ctx> { for stmt in stmts { self.codegen_stmt(stmt); - self.current_func.unwrap().print_to_stderr(); } } diff --git a/std/stdsocket.c b/std/stdsocket.c index 94d2ebe..0a47f97 100644 --- a/std/stdsocket.c +++ b/std/stdsocket.c @@ -1,4 +1,3 @@ -#include "stdlib.c" #include #include #include @@ -66,6 +65,14 @@ char *recvsock(int soc) { return buf; } +size_t +strlen(const char *str) +{ + const char *s; + for (s = str; *s; ++s); + return(s - str); +} + void sendsock(char *msg, int soc) { send(soc, msg, strlen(msg), 0); } void closesock(int soc, bool server) { diff --git a/test.c b/test.c deleted file mode 100644 index 1bf5e4f..0000000 --- a/test.c +++ /dev/null @@ -1,19 +0,0 @@ -#include - -void print(char* x) { - printf("%s", x); -} -void printfl(float x) { - printf("%f", x); -} -void printdeez(int x) { - printf("%d", x); -} - -int as_int(float x) { - return (int) x; -} - -void termpos(int x, int y) { - printf("\x1b[%d;%dH", x, y); -} diff --git a/test.sh b/test.sh deleted file mode 100755 index 59dae87..0000000 --- a/test.sh +++ /dev/null @@ -1,3 +0,0 @@ -cargo run examples/hello.sloth -clang output.o test.c -o output -./output