From 7cae954640df32340d95ee6c842ed28be723c02e Mon Sep 17 00:00:00 2001 From: Simon Brooke Date: Wed, 23 Jan 2019 19:13:31 +0000 Subject: [PATCH] Created path (markdown) --- path.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 path.md diff --git a/path.md b/path.md new file mode 100644 index 0000000..e3f6907 --- /dev/null +++ b/path.md @@ -0,0 +1,5 @@ +A path is essentially a list of keywords. + +However, the path `(:aardvark :beluga :coeleocanth :dodo)` may be denoted `:aardvark:beluga:coeleocanth:dodo` and will be expanded into a list by the reader. If the value of `:ardvark` in the current environment is a map, and the value of `:beluga` in that map is a map, and the value of `:coeleocanth` in that map is a map, then the value of the path `:aardvark:beluga:coeleocanth:dodo` is whatever the value of `:dodo` is in the map indicated by `:aardvark:beluga:coeleocanth`; however if the path cannot be fully satisfied the value is `nil`. + +The notation `::aardvark:beluga:coeleocanth:dodo` is expanded by the reader into `((oblist) :aardvark :beluga :coeleocanth :dodo)`, or, in other words, is a path from the root namespace. \ No newline at end of file