Add tag_find implementation in Nim lang
[experiments.git] / tag_find / README.md
CommitLineData
9d10f611
JN
1# Tag Find
2
3This badly-named experiment is to try out implementing a trivial program in multiple languages.
4
5tag_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
7Languages used:
8
9* [Rust](https://rust-lang.org)
10* [Go](https://golang.org)
11* [Joker](https://joker-lang.org)
d909520e 12* [Racket](https://racket-lang.org)
fa67fead
JN
13* [Nim](https://nim-lang.org)
14
15## Binary size comparison
16
17Among the compiled languages tested, Nim produces the smallest binaries and Go
18the largest. Rust is in between.
19
20| Language | Binary size |
21| -------- | -------- |
22| Go | 4100 KB |
23| Rust | 447 KB |
24| Nim | 123 KB |
25
9d10f611
JN
26
27## Disclaimer
28The 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.