Functional programming in SH and Bash?!
I made a few functional oriented and list processing functions for bash. Nothing serious, and it's very slow for practical use. Profiling tells that the head and tail operators are the bottleneck, so forking them off to a different process would help. Though I don't feel an urge to update it that way, as this was made just for the fun of it! Another upgrade would involve updating the free form recursive data structure to something faster, or doing less and/or faster conversion. A last resort would be writing hard-coded implementation for the core functions like map, foldl and filter. I also have the choice of moving to the very powerful (and speedy) Bash syntax.
These are all viable, but would degrade the elegance of the library as a whole, so I'm hesitant to apply them. And don't forget, that it's a much more sane solution to embed O/S functions, or even a full-blown bash into a fully capable language, instead of the other way around. I've been thinking along the lines of providing ls, mkdir, kill, sed and the like in Erlang (the runtime has a some of these already, by the way). I feel that many of those would be possible with only a few lines of code.
Code upload expected later on.
These are all viable, but would degrade the elegance of the library as a whole, so I'm hesitant to apply them. And don't forget, that it's a much more sane solution to embed O/S functions, or even a full-blown bash into a fully capable language, instead of the other way around. I've been thinking along the lines of providing ls, mkdir, kill, sed and the like in Erlang (the runtime has a some of these already, by the way). I feel that many of those would be possible with only a few lines of code.
Code upload expected later on.
Comments
Post a Comment