What is the "official" guide for the standard library function names?


#1

There are many nice implementations of functiononal programming ideas in modern languages. Although underlying ideas are rather similar, function names may be quite different.

For example, currently in Kotlin and Scala (let’s ignore some syntax details for a monent) one can write typical filtering and transformation operations as:

collection.filter( it.something > 0 ).map( it.something )
To perform the same thing in Jetbrains MPS SModel language, naming should be a little bit different:

collection.where( it.something > 0 ).select( it.something )

I guess, it comes from C# where functions are called this way, but starting with capital letters: Where ans Select (apparently, follwing SQL language) In C++11 the two functions are called copy_if and transform

My quiestion is, what sevres as a guideline for Kotlin naming of such functions and their type-signatures?
Scala? Google Guava? Haskell?


#2

My personal vote goes for Scala, since their framework evolved for some time and then has been thoughtfully re-designed. We can benefit from that huge amount of work by simply following their best practices.

Another side-effect is the simplicity of adoptation of Kotlin by Scala programmers.


#3

There very many things to be re-thought and renamed in the library.

It sounds reasonable to look at JDK, Scala, Groovy and Guava.