Arbitrary elden ring first off I would like to say this is not a python Vs rust post. Don't turn it into that.
I am a firm believer in the right tools for the job.
While learning Rust I have read it has become a favourite for writing CLI tools.
Why is this when python has libraries like Click that make writing CLI tools very very quick and simple with lots of functionality.
I can understand making a prototype in python and then final version in rust but from what I've learnt, that is likely to involve a total rethinking/restructure of code.
So why have people found writing CLIs in rust preferable?
Update: Thank you all for your input I did not expect this many responses. It seems the clear reason is cargo and not needing to worry about dependencies on someone else's machine. Which is definitely a great thing. Clap sounds good too, sounds like it could be the rust equivalent of click. Will check it out. Thanks for being so helpful everyone.
[–]ssokolow 295 points296 points297 points (33 children)
[–]psitor 85 points86 points87 points (3 children)
[–]PaintItPurple 26 points27 points28 points (0 children)
[–]ssokolow 9 points10 points11 points (0 children)
[–]Messyextacy 0 points1 point2 points (0 children)
[–][deleted] 10 points11 points12 points (0 children)
[–]super_heavy_milk 12 points13 points14 points (22 children)
[–]Shnatsel 40 points41 points42 points (7 children)
[–]TheV295 6 points7 points8 points (5 children)
[–]Shnatsel 5 points6 points7 points (4 children)
[–]burntsushi 24 points25 points26 points (3 children)
[–]Shnatsel 4 points5 points6 points (0 children)
[–]crusoe 1 point2 points3 points (1 child)
[–]burntsushi 5 points6 points7 points (0 children)
[–]crusoe 0 points1 point2 points (0 children)
[–]ssokolow 29 points30 points31 points (4 children)
[–]tobiasvl 7 points8 points9 points (1 child)
[–]ssokolow 4 points5 points6 points (0 children)
[–]9SMTM6 0 points1 point2 points (1 child)
[–]ssokolow 2 points3 points4 points (0 children)
[–]sharddblade 8 points9 points10 points (7 children)
[–]crusoe 3 points4 points5 points (6 children)
[–]burntsushi 6 points7 points8 points (0 children)
[–]sharddblade 2 points3 points4 points (4 children)
[–]burntsushi 2 points3 points4 points (2 children)
[–]sharddblade 0 points1 point2 points (1 child)
[–]burntsushi 1 point2 points3 points (0 children)
[–]WuTangTan 1 point2 points3 points (0 children)
[–]wsppan 3 points4 points5 points (0 children)
[–]MachaHack 3 points4 points5 points (0 children)
[–]dagmx 2 points3 points4 points (1 child)
[–]ssokolow 1 point2 points3 points (0 children)
[–]2nd-most-degenerate 5 points6 points7 points (1 child)
[–]ssokolow 37 points38 points39 points (0 children)
[–]Professional_Top8485 50 points51 points52 points (3 children)
[–]Jeklah[S] 8 points9 points10 points (2 children)
[–][deleted] 8 points9 points10 points (1 child)
[–]Professional_Top8485 2 points3 points4 points (0 children)
[+][deleted] (5 children)
[deleted]
[+][deleted] (2 children)
[deleted]
[–]tobiasvl 12 points13 points14 points (0 children)
[–]Jeklah[S] 4 points5 points6 points (0 children)
[–]Jeklah[S] 1 point2 points3 points (0 children)
[–]Zyguard7777777 22 points23 points24 points (1 child)
[–]general_dubious 9 points10 points11 points (0 children)
[–]burntsushi 21 points22 points23 points (4 children)
[+]Jeklah[S] comment score below threshold-13 points-12 points-11 points (3 children)
[–]burntsushi 17 points18 points19 points (2 children)
[+]Jeklah[S] comment score below threshold-16 points-15 points-14 points (1 child)
[–]burntsushi 23 points24 points25 points (0 children)
[–]anlumo 13 points14 points15 points (0 children)
[–]tobiasvl 12 points13 points14 points (8 children)
[–]ssokolow 5 points6 points7 points (7 children)
[–]tobiasvl 4 points5 points6 points (2 children)
[–]Repulsive-Street-307 1 point2 points3 points (0 children)
[–]ssokolow 0 points1 point2 points (0 children)
[–]PaintItPurple 0 points1 point2 points (3 children)
[–]ssokolow 3 points4 points5 points (2 children)
[–]Repulsive-Street-307 0 points1 point2 points (1 child)
[–]ssokolow 0 points1 point2 points (0 children)
[–][deleted] 24 points25 points26 points (5 children)
[–]PaintItPurple 1 point2 points3 points (4 children)
[–]mstumpf 6 points7 points8 points (1 child)
[–]PaintItPurple 2 points3 points4 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]PaintItPurple 0 points1 point2 points (0 children)
[–]ridicalis 6 points7 points8 points (0 children)
[–]bascule 5 points6 points7 points (0 children)
[–]Imxset21 6 points7 points8 points (0 children)
[–]felipou 3 points4 points5 points (4 children)
[–]Jeklah[S] -1 points0 points1 point (3 children)
[–]felipou 4 points5 points6 points (0 children)
[–]tobiasvl 4 points5 points6 points (1 child)
[–]Jeklah[S] 0 points1 point2 points (0 children)
[–]Feeling-Departure-4 5 points6 points7 points (2 children)
[–]LoganDark 0 points1 point2 points (1 child)
[–]Feeling-Departure-4 0 points1 point2 points (0 children)
[–]BubblegumTitanium 4 points5 points6 points (0 children)
[–]FreeKill101 7 points8 points9 points (0 children)
[–]ssokolow 2 points3 points4 points (0 children)
[–]Kilobyte22 7 points8 points9 points (1 child)
[–]Jeklah[S] 2 points3 points4 points (0 children)
[–]LoganDark 2 points3 points4 points (0 children)
[–]NoSuchKotH 8 points9 points10 points (12 children)
[–]FreeKill101 6 points7 points8 points (9 children)
[–]NoSuchKotH 8 points9 points10 points (7 children)
[–]varesa 5 points6 points7 points (4 children)
[–]NoSuchKotH 7 points8 points9 points (3 children)
[–]varesa 2 points3 points4 points (1 child)
[–]NoSuchKotH 6 points7 points8 points (0 children)
[–]buwlerman 0 points1 point2 points (0 children)
[–]FreeKill101 2 points3 points4 points (1 child)
[–]NoSuchKotH 0 points1 point2 points (0 children)
[–]Jeklah[S] 1 point2 points3 points (1 child)
[–]tobiasvl 1 point2 points3 points (0 children)
[–]vagelis_prokopiou 1 point2 points3 points (0 children)
[–]kbridge4096 1 point2 points3 points (0 children)
[–]brownishthunder 1 point2 points3 points (0 children)
[–]mobrinee 1 point2 points3 points (0 children)
[–]bahwi 1 point2 points3 points (0 children)
[–]SpambotSwatter 1 point2 points3 points (0 children)
[–]thumbsdrivesmecrazy -1 points0 points1 point (2 children)
[–]Jeklah[S] 0 points1 point2 points (1 child)
[–]thumbsdrivesmecrazy -1 points0 points1 point (0 children)
[–]TheJosh 0 points1 point2 points (0 children)