Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I wouldn't say it's bullshit, just a difference of opinion.

38 kilobytes of executable isn't small, it's tiny; there's no way exa could get to that level without compromising its featureset or development, and even if you did, you'd just have another ls, and we already have ls.

If it's not small, what would you call it? Medium-sized? Something of that size means "download tens of megabytes of runtime and scatter files all over your computer" to me, and exa's smaller than that.



If it's not small, what would you call it?

Self-contained, portable, featureful, etc. There are plenty of other adjectives to say it's not huge or "download tens of megabytes of runtime and scatter files all over your computer".

For me, <64KB is small and <4KB is tiny. But then again, being aware of the demoscene, I've seen what can be done in those size categories... ;-)


> 38 kilobytes of executable isn't small, it's tiny; there's no way exa could get to that level without compromising its featureset or development

I'd be willing to bet dynamic linking would get it much closer to that ballpark and wouldn't compromise the feature set or development.


Dynamic linking to what, though? The features you're looking for have to available in a library for you to be able to link to it.


The standard library for one; many C programs have libc dynamically linked. Rust's stdlib isn't.


Dynamic linking to the standard library + the projects dependencies, from the cargo file:

ansi_term = "0.8.0"

datetime = "0.4.3"

getopts = "0.2.14"

glob = "0.2"

lazy_static = "0.2"

libc = "0.2.9"

locale = "0.2.1"

natord = "1.0.7"

num_cpus = "1.3.0"

number_prefix = "0.2.3"

scoped_threadpool = "0.1.*"

term_grid = "0.1.2"

unicode-width = "0.1.4"

users = "0.5.2"




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: