aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorChloe Kudryavtsev <code@toast.bunkerlabs.net>2023-03-19 18:29:22 -0400
committerChloe Kudryavtsev <code@toast.bunkerlabs.net>2023-03-19 18:29:22 -0400
commit81555c58dfccdb04d7ccf33f5d4caa296e79f1df (patch)
tree4ad778e79bb5c3a8684e9c921d634c9644f303d2 /README.md
initial commit
Diffstat (limited to 'README.md')
-rw-r--r--README.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..39cbdb1
--- /dev/null
+++ b/README.md
@@ -0,0 +1,17 @@
+# Jurl
+Janet Curl (secretly Jean Curl)
+
+A libcurl easy API wrapper for Janet.
+It's divided into two components: `jurl-native`, which holds the low level C interfacing, and the high level `jurl` janet wrapper.
+
+## Jurl-Native
+`jurl-native` attempts to implement as much of libcurl's easy API in as direct a manner as possible.
+
+In cases of bitmaps and enums (including magic numbers), they are translated as directly as possible from their C forms into keywords.
+For example, `CURLOPT_TCP_FASTOPEN` becomes `:tcp-fastopen`.
+
+Enums (and bitmap members) are translated using a prefix notation.
+For example, `CURLPROXY_HTTP` becomes `:proxytype/http`.
+
+Bitmaps are translates back and forth using indexables (arrays and tuples).
+For example, `CURLAUTH_BASIC | CURLAUTH_DIGEST` becomes `[:httpauth/basic :httpauth/digest]`.