Add tag_find implementation in Nim lang
[experiments.git] / tag_find / README.md
1 # Tag Find
2
3 This badly-named experiment is to try out implementing a trivial program in multiple languages.
4
5 tag_find takes a tag and a directory path as arguments and searches the directory for all files tagged with that tag. Originally meant to be used to search emacs org files by tag and integrate into emacs with an elisp function.
6
7 Languages used:
8
9 * [Rust](https://rust-lang.org)
10 * [Go](https://golang.org)
11 * [Joker](https://joker-lang.org)
12 * [Racket](https://racket-lang.org)
13 * [Nim](https://nim-lang.org)
14
15 ## Binary size comparison
16
17 Among the compiled languages tested, Nim produces the smallest binaries and Go
18 the largest. Rust is in between.
19
20 | Language | Binary size |
21 | -------- | -------- |
22 | Go | 4100 KB |
23 | Rust | 447 KB |
24 | Nim | 123 KB |
25
26
27 ## Disclaimer
28 The implementations are written with hardly 3 hours of experience with each language and will perform poorly. Use at your own risk if you want to.