From 8504f056c59e04bd76919bb6d69521810e25e02a Mon Sep 17 00:00:00 2001 From: "jaccarmac@gmail.com" Date: Tue, 17 Feb 2015 18:23:12 +0000 Subject: [PATCH] Add description and Nimble packaging information. FossilOrigin-Name: aba7a11ba522f7276f3787e20f12ede2da33c237 --- UNLICENSE | 21 ++++++++++++++ nimikanren.nimble | 9 ++++++ nimikanren.org | 72 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 102 insertions(+) create mode 100644 UNLICENSE create mode 100644 nimikanren.nimble create mode 100644 nimikanren.org diff --git a/UNLICENSE b/UNLICENSE new file mode 100644 index 0000000..2b4fc53 --- /dev/null +++ b/UNLICENSE @@ -0,0 +1,21 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this +software, either in source code form or as a compiled binary, for any purpose, +commercial or non-commercial, and by any means. + +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to diff --git a/nimikanren.nimble b/nimikanren.nimble new file mode 100644 index 0000000..5397742 --- /dev/null +++ b/nimikanren.nimble @@ -0,0 +1,9 @@ +[Package] +name = "nimikanren" +version = "0.1.0" +author = "Jacob MacDonald" +description = "Use miniKanren relational programming in Nim." +license = "Unlicense" + +[Deps] +Requires: "nim >= 0.10.3" diff --git a/nimikanren.org b/nimikanren.org new file mode 100644 index 0000000..ab974bc --- /dev/null +++ b/nimikanren.org @@ -0,0 +1,72 @@ +#+TITLE: nimiKanren +#+AUTHOR: Jacob MacDonald + +#+BEGIN_SRC text :tangle UNLICENSE :padline no + This is free and unencumbered software released into the public domain. + + Anyone is free to copy, modify, publish, use, compile, sell, or distribute this + software, either in source code form or as a compiled binary, for any purpose, + commercial or non-commercial, and by any means. + + In jurisdictions that recognize copyright laws, the author or authors of this + software dedicate any and all copyright interest in the software to the public + domain. We make this dedication for the benefit of the public at large and to + the detriment of our heirs and successors. We intend this dedication to be an + overt act of relinquishment in perpetuity of all present and future rights to + this software under copyright law. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + For more information, please refer to +#+END_SRC + +[[https://twitter.com/jaccarmac/status/567742061449707521][I'm pretty proud of the name.]] + +I stumbled across Dr. Will Byrd's work with relational logic programming this +morning (17 February 2015). Fueled by sleep deprivation, caffeine, and +dissatisfaction with my life, I have decided to learn miniKanren, DSLs, and Nim +all in one go. The result will (hopefully) be an implementation of miniKanren, +as described in Dr. Byrd's dissertation on the subject, in Nim. First I have to +finish reading (and understanding) said dissertation. Pieces of an +implementation will be added to this file and the associated repository. + +* Package for Nimble. + + The intent of the project is for it to be a library, so we have to construct + a .nimble file to specify said library. + + The only part of the ~[Package]~ section that changes is the version number. + + #+NAME: nimikanren.nimble-package + #+BEGIN_SRC text + [Package] + name = "nimikanren" + version = "0.1.0" + author = "Jacob MacDonald" + description = "Use miniKanren relational programming in Nim." + license = "Unlicense" + #+END_SRC + + The dependencies should not have to change that much. Just to be safe, + nimiKanren depends on the development version of Nim, which I use. + + #+NAME: nimikanren.nimble-deps + #+BEGIN_SRC text + [Deps] + Requires: "nim >= 0.10.3" + #+END_SRC + +* Tangle source code. + +** =nimikanren.nimble= + + #+BEGIN_SRC text :noweb no-export :tangle nimikanren.nimble :padline no + <> + + <> + #+END_SRC