Why, for example, maps but array?
zxq9
zxq9@REDACTED
Sun Aug 15 06:57:42 CEST 2021
On 2021/08/15 7:42, Lloyd R. Prentice wrote:
> I just used sets today to write a search tag generator. Works. But it surprises me that obvious functions like file:move/2 and the a write companion to file:consult/1 are not in the library. No doubt someone has an explanation.
Indeed! https://zxq9.com/archives/1021
> Re if constructions, I turn first to pattern matching, next to case statements. But I suspect there’s a cogent discussion buried in the Erlang archives.
There is and I've written about it a bit but have no idea where it is in
the archives -- search engines are not finding it.
>> On Aug 14, 2021, at 6:27 PM, Michael P. <empro2@REDACTED> wrote:
>> I cannot imagine that anyone applies the
>> general concept of 'module deals with lists'
>> to writing a concrete line of source code.
>>
>> To me `+` is 'addition', not 'additions'.
There is something to this...
>> The decision seems to depend on author
>> and some tossing of coins.
...and this as well.
There are few different things going on.
One layer is the semantic choice of "does the name of this module
indicate that this modules 'deals with Xs' or does it represent *a*
single X when the user is typing it?"
Another layer is the tradition of functional languages having lots of
listy and collectiony data structures and writing functions and modules
to do things over them as collections instead of individual elements.
I like it when the naming semantic for the interface module to an X is
singular. It makes sense to me as a user of that module to say
`map:find(Key, Map)` rather than `maps:find(Key, Map)`, but also makes
sense to have a separate module called actually `maps` for things like
the "List of Maps" module that I wrote a while back that was recently
discussed as a possible candidate for inclusion in the stdlib (though
probably under a different name). https://gitlab.com/zxq9/lom
These semantic sort of things are quirks and no guideline for
formalizing them has been fleshed out. Argument order regularity is also
a bit of a crap shoot throughout the stdlib, but over time you sort of
learn it and stop caring.
Fixing this stuff up would be cool, but takes a huge amount of effort
that is a bit hard to muster for such a small community with zero funding.
-Craig
More information about the erlang-questions
mailing list