LINUX.ORG.RU

История изменений

Исправление EXL, (текущая версия) :

Какое-то 50-летнее говно дидов помноженное на костыли и Legacy.

  1. Ограничение до 16-bit signed из-за того, что int в те времена был 16-bit’ным: −32,768...32,767

  2. Диапазон 0...32,767 вместо −32,768...32,767 выбран потому что с отрицательными случайными числами работать неудобно, их нужно было бы abs’ировать чтобы получить случайные числа внутри нужного диапазона. И распределение бы нарушилось? Хотя наверное нет.

  3. Диапазон 0...32,767 вместо 65,535 т.е. int вместо unsigned выбран чтобы сохранить поддержку с дидовьем говнокодом, где int на int сидит и int’ом погоняет.

Вердикт:

  1. Все распределения случайных тут – шиза, никак не коррелирующая с современностью.
  2. Если бы Bash был нормальным скриптовым языком, а не говном, то там была бы версионность, где при использовании какого-нибудь #!/bin/bash3 шебанга этот $RANDOM перенаправлялся бы в rand() из libc, а не в их костыль.

Исправление EXL, :

Какое-то 50-летнее говно дидов помноженное на костыли и Legacy.

  1. Ограничение до 16-bit signed из-за того, что int в те времена был 16-bit’ным: −32,768...32,767

  2. Диапазон 0...32,767 вместо −32,768...32,767 выбран потому что с отрицательными случайными числами работать неудобно, их нужно было бы abs’ировать чтобы получить случайные числа внутри нужного диапазона. И распределение бы нарушилось? Хотя наверное нет.

  3. Диапазон 0...32,767 вместо 65,535 т.е. int вместо unsigned выбран чтобы сохранить поддержку с дидовьем говнокодом, где int на int сидит и int’ом погоняет.

Вердикт:

  1. Все распределения случайных тут – шиза, никак не коррелирующая с современностью.
  2. Если бы Bash был нормальным скриптовым языком, а не говном, то там была бы версионность, где при использовании какого-нибудь #!/bin/bash3 шебанга этот $RANDOM перенаправлялся бы в rand() а не в их костыль.

Исходная версия EXL, :

Какое-то 50-летнее говно дидов помноженное на костыли и Legacy.

  1. Ограничение до 16-bit signed из-за того, что int в те времена был 16-bit’ным: −32,768...32,767

  2. Диапазон 0...32,767 вместо −32,768...32,767 выбран потому что с отрицательными случайными числами работать неудобно, их нужно было бы abs’ировать чтобы получить случайные числа внутри нужного диапазона.

  3. Диапазон 0...32,767 вместо 65,535 т.е. int вместо unsigned выбран чтобы сохранить поддержку с дидовьем говнокодом, где int на int сидит и int’ом погоняет.

Вердикт:

  1. Все распределения случайных тут – шиза, никак не коррелирующая с современностью.
  2. Если бы Bash был нормальным скриптовым языком, а не говном, то там была бы версионность, где при использовании какого-нибудь #!/bin/bash3 шебанга этот $RANDOM перенаправлялся бы в rand() а не в их костыль.