1. bash for everyday pipelines / one-liners / small looping tasks
2. fig for most things id put in a script
3. inline python for extending fig
4. python itself for heavy duty lifting (usually fig+python is enough)
5. js+browser for complex guis and yad for simple ones (i find js tedious for most other tasks.)
i learned basic over 30 years ago, and used it for over 20 years. i tried over 30 dialects, looking for the "basic of the 21st century" based on ease, fun, flexibility, and actual adoption. (spoiler: its python... specifically python 2.)
i also tried pascal, js, php and lua. over the years ive learned bash. fsr is better with it-- he has to be, i can just use something easier.
i use bash (or the command line) every day. ive written huge scripts, which i find extremely tedious to do in bash-- especially since i know python. for big projects, i use python:
* scope... * better array handling... * sometimes better string handling (i like pipelines.)... * fewer "tricks" needed to do simple things... k=$(($k+1)) is: k += 1 *
sometimes python is faster, too-- or im still doing bash wrong after > 10 years: very possible.
in fig, i talk to the shell a lot: x "find / | grep '\.png'" arrshell # put the output of the command line into an array named x
but whatever processing cant be done easily in a one-liner, i let fig do the rest. id have never gotten as far with mkfigos (its at least 50% bash) without help from fig. the part thats bash, would be at least twice as tedious in fig. the part thats in fig, would be at least twice as tedious in bash-- particularly making certain it works.
bash rarely gives me confidence that it will do exactly what i want unless i try it at virtually every possible step on the way. thats why pipelines are lovely-- you can look at the output after each step, and base the next step on it.
i rarely use python anymore. i rarely need it, and when i do i can just drop it inline into fig. why not just use python? because fig has a lot of shortcuts for the parts of python i find tedious.
python is certainly better for a number of things. after all, it can do literally thousands of things! if you want to create your own language, youll have way more fun using python than something less sophisticated. its incredibly flexible and expressive.
there is one thing i dont like python for at all-- guis. i hate making guis in most languages. the only languages that ive had fun making guis in:
1. tcl/tk (but id rather use js)
2. autoit (for basic stuff)
3. rapidq (its ok)
havent tried making guis in haxe yet. i have tried it in python, with tk and gtk.
oh, and yad! most of the things id want to bother making a gui for, id just use yad instead. and i can probably do that in python, fig or bash, but ive only used it from bash so far.