Open fare opened 9 years ago
Thank you for your thoughts.
First, I want to make clear: my library recommendations are mine, they are libraries I've used and found fit for use. They do not implicitly condemn other libraries.
My own uiop:run-program is IMNSHO much easier to use and much more powerful than external-program. Or inferior-shell, for a higher-level interface to the same functionality, with an alternative to string interpolation, etc.
I'll have to look at it next time I am working with running external programs.
I've never used cl-csv, but I admit I'm slightly jealous it was chosen instead of my fare-csv. Not jealous enough to dig in and work towards library unification, though.
I'll have to explore fare-csv. One requirement I have of csv parsers is that they support a streaming interface.
For cl-ppcre, I find that optima-ppcre is often a much better interface to the same underlying library.
Interesting. I'll have to explore it.
Instead of metabang-bind and the endless variations on the idea, necessarily incomplete, I prefer uiop:nest which allows to reuse existing binding forms and is thus complete by construction.
I think you have a preference for fareware. :-) I'll take a look at it when I next have an occasion to use metabang-bind.
I don't condone anaphora. It is generally considered bad style, as opposed to explicit binding forms, e.g. if-let vs aif.
I do. I explictly choose power over limitation in my software system choices when given the option.
I'm glad you didn't include cl-fad in your list of systems; I consider my uiop to be a higher-quality replacement for the same functionality.
I've had good success with cl-fad when I have used it.
One note: uiop
is a single library (http://quickdocs.org/uiop/). It might be regarded as a "Utilities for Implementation- and OS- Portability" framework even, with the commensurate pros and cons of frameworks. I can append uiop to the suggested system list, with notes about its different libraries, but I'd also like to preserve standalone libraries for those pieces of functionality.
My own uiop:run-program is IMNSHO much easier to use and much more powerful than external-program. Or inferior-shell, for a higher-level interface to the same functionality, with an alternative to string interpolation, etc.
I've never used cl-csv, but I admit I'm slightly jealous it was chosen instead of my fare-csv. Not jealous enough to dig in and work towards library unification, though.
For cl-ppcre, I find that optima-ppcre is often a much better interface to the same underlying library.
Instead of metabang-bind and the endless variations on the idea, necessarily incomplete, I prefer uiop:nest which allows to reuse existing binding forms and is thus complete by construction.
I don't condone anaphora. It is generally considered bad style, as opposed to explicit binding forms, e.g. if-let vs aif.
I'm glad you didn't include cl-fad in your list of systems; I consider my uiop to be a higher-quality replacement for the same functionality.