Відповіді:
Коротка відповідь полягає в тому, що Go є спадкоємцем C, а стандартна математична бібліотека C також визначається майже виключно з точки зору значень з плаваючою точкою з одно- та подвійною точністю.
Більш довга відповідь полягає в тому, що в мові статичного типу без поліморфізму або перевантаження функцій, як-от Go (або C), вам потрібно визначитися з типом, щоб функція взяла та повернула заздалегідь, і як тільки ви збираєтеся мати справу з конкретних типів у вашій математичній бібліотеці, є набагато цікавіші операції з числами з плаваючою комою, ніж цілі числа. Щоб вибрати кілька прикладів
квадратний чи n-й корінь цілого чи числа з плаваючою точкою зазвичай не представляють як ціле число
дуже мало цікавих значень трансцендентальних функцій представлені у вигляді цілих чисел
ділення значень з плаваючою комою вимагає меншого округлення, ніж ділення цілих чисел
Зауважте, що це не так обтяжливо, як може здатися, якщо ваші вхідні значення є цілими числами - інтегральне значення може бути перетворене у значення з плаваючою комою простим набором тексту, і в основному точно.
Тож це історія для таких мов, як Go або C. Інші мови мають інші варіанти:
Динамічно типізована мова може надавати математичні функції бібліотеки, які приймають або повертають кілька типів залежно від того, з чим вони викликаються, чи є значення, що повертається, представлене як ціле число.
Мова з перевантаженням функцій може надавати кілька версій однієї і тієї ж функції, залежно від типів, які ви передаєте (строго, це кілька функцій з тим самим іменем, що відрізняються від динамічно набраного випадку вище)
Мова з поліморфізмом типу (наприклад, об'єктно-орієнтована мова з успадкуванням) може визначити надклас "Число" з підкласами як для цілих чисел, так і для значень з плаваючою комою, а потім визначити математичні функції в термінах цього класу Чисел. Цей підхід має велику гнучкість динамічного підходу до мови, при цьому зберігається значна суворість статичного підходу або функції перевантаження функцій.
Однак Go не має жодної з цих особливостей.