>> split-string aliased as string-split >> downcase aliased as string-downcase >> upcase aliased as string-upcase >> format aliased as string-format >> concat aliased as string-concat >Don't do this. Just learn these 5 names, or use apropos, as > has been suggested. Just curious, if these were to be introduced today, would you also name them that way? What possible genericity is there about downcase/upcase? Okay they work on strings and on chars, but it's pretty clear their topic is "characters" (string) no? > Check out http://www.lispworks.com/documentation/HyperSpec/Body/f_stg_up.htm and http://www.lispworks.com/documentation/HyperSpec/Body/c_string.htm > Do you think this organization would be useful? What if it had a cool > font and some cool logos? :-) I ask because that put me off at first, it > looked mouldy.) Yes, that'd be very useful and it's more or less what we are asking to be able to do. Again curious, do you think they made a mistake when they named it `string-downcase` there and not `downcase`? >> s-truncate (len s) > truncate-string-to-width (I got there with apropos truncate.*string btw). Okay then let's alias that to string-truncate. >> s-left (len s) >subseq >> s-right (len s) > Add an "from-end" arg to subseq? Why is there substring if there is subseq then? >> s-repeat (num s) > (cl-loop repeat num concat s) What if I don't know cl (like I a significant number of package authors) ? >> s-capitalize (s) > capitalize, also works for chars. Alias it to string-capitalize :-) >> s-reverse (s) > reverse, also works for sequences Ah, this one I didn't think worked on strings. Thought you have to split, reverse then join. I agree this can be left as a generic algorithm. >> s-contains-p (needle s &optional ignore-case) > string-match-p That can work, tho the mental path of having to do a regexp match while regexp-quoting the string just to do a plain text search feels very inneficient. >> s-blank-p (s) > ugh. nil is a string? "is the string blank?" is a concept in many languages, but I understand it can be surprising at first. The idea is that very often when validating user input you filter for nil, empy string or trimmed string.