powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Зачем писать программы сложно и долго, когда можно просто и легко?
25 сообщений из 324, страница 10 из 13
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719270
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kDnZP,

а ті че, с фп не знакм что-ли?
странно, я думал ті фпшник.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719272
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNkDnZPпропущено...

Т.е. если я щаз раздобуду Хаскель, то данная программа выполнится без ошибок?с ошибками. я на псевдокоде писал. выше я писал что хаскель(во первых ленивый, потому там не принято хвостовую рекурсию юзать, но можно заюзав энергичные вычислений)

в хаскел любой вызво ф-ию - джамп, дак что там да.

вот те прога на хаскеле

f x = f x


можешь запустить в репле. память жраться не будет.вот уже 4 минуті работает, ни на один килобайт расход памяти не увеличился. можно для надежности передать список из миллиона єлементов. сейчас сделаю.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719273
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNопиши задачу. напишу ф-ю.
Как я и предполагал.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719274
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNkDnZPпропущено...

Т.е. если я щаз раздобуду Хаскель, то данная программа выполнится без ошибок?с ошибками. я на псевдокоде писал. выше я писал что хаскель(во первых ленивый, потому там не принято хвостовую рекурсию юзать, но можно заюзав энергичные вычислений)

в хаскел любой вызво ф-ию - джамп, дак что там да.

вот те прога на хаскеле

f x = f x


можешь запустить в репле. память жраться не будет.если хочется именно скомпилить в приложение, то на такой код:

Код: sql
1.
2.
3.
4.
5.
main = do
    putStr $ show (f 0)

f :: Int -> Int    
f x = f x
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719275
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNвот уже 4 минуті работает, ни на один килобайт расход памяти не увеличился. можно для надежности передать список из миллиона єлементов. сейчас сделаю.
за 20 мин, объем занимаемой памяти не увеличился ни на килобайт.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719278
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Категоричным сторонникам чистого ФП предлашаю решить следующую задачу.
Вывести (или вычислить) значения UNIX Timestamp (число секунд с 00:00:00 UTC 01.01.1970) для диапазона дат от 01.01.2000 до 01.01.9999 с шагом 100 секунд для часового пояса MSK. Поясняю: интервалы в 100 секунд начиная с 01.01.2000 определяются по MSK (московское время), но сам timestamp базируется на UTC, т.е. нужно учитывать коррекцию часового пояса.
Также нужно учитывать следующее:
1. Год, кратный 4 — високосный.
2. Год, кратный 100 — невисокосный.
3. Год, кратный 400 — високосный.
4. В 3328 году в феврале будет дополнительный день, 30 февраля.
5. 30 июня или 31 декабря производится коррекция, на +1 или -1 секунду.
6. В 2012 году будет коррекция на +1 секунду.
7. Список коррекций публикуется здесь .
8. С 1970 года московское время соответствует GMT+0300, также используется летнее время (GMT+0400).
9. В 1991 году декретное и летнее время были отменены.
10. В 1992 году декретное и летнее время были восстановлены.
11. В 2012 году было отменено декретное время.
12. В марте 2012 года было отменено летнее время.
13. В настоящее время используется часовой пояс UTC+0400.
14. Возможно повторное внедрение перехода на летнее время, поэтому необходимо использовать системную базу данных timezone.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719481
kDnZP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNkDnZP,

а ті че, с фп не знакм что-ли?
странно, я думал ті фпшник.
Нет, с ФП знаком только весьма поверхностно и теоретически. Не было практической необходимости в изучении. К сожалению у меня не хватает времени на изучения чего-то нового just for fun, так что боюсь, что если мода на ФП пройдет, то я с этой парадигмой так и не познакомлюсь.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719556
F#
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
F#
Гость
Alibek B.Категоричным сторонникам чистого ФП предлашаю решить следующую задачу.
Вывести (или вычислить) значения UNIX Timestamp (число секунд с 00:00:00 UTC 01.01.1970) для диапазона дат от 01.01.2000 до 01.01.9999 с шагом 100 секунд для часового пояса MSK. Поясняю: интервалы в 100 секунд начиная с 01.01.2000 определяются по MSK (московское время),

Тут мне не очень понятно как интервал может по какому-то поясу вычисляться. Если это следущийМомент-текущийМомент в MST то, как оно должно вычисляться при переводе часов на летнее/зимнее время?

Вообще, не фижу ничего принципиально нефункционального в задаче. Можно в монаде IO прочитать список коррекций а дальнейшие вычисления делать без IO.

Еще есть остроумный способ для IO в чистом ФЯ языке clean : что такое чистая функция? Это функция, у которой результат полностью завиит от аргументов. Допустим, у нас есть наш любимый тепловошумный генератор случайных чисел, который все время выдает разное значение - так введем спецтип World, обозначающий состояние вселенной. И такие функции у нас зависят от состояния всего мира таким образом являются чистыми - результат зависит только от аргументов.

У вас, кстати, есть уже готовая программа на императивном языке - чтоб посмотреть там всякие подробности?
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719593
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
F#Тут мне не очень понятно как интервал может по какому-то поясу вычисляться. Если это следущийМомент-текущийМомент в MST то, как оно должно вычисляться при переводе часов на летнее/зимнее время?
При переходе на другой часовой пояс вместо 100 секунд интервал должен быть равен 3500 секунд или -3500 секунд.

Про спецтип World я не понял. Имеется ввиду, что у этого типа будут аргументы, описывающие состояние вселенной, на основании которого можно рассчитать значение датчика? Так это невозможно, т.к. вселенная не является полностью детерминированной.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719595
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BazistAlibek B.Случайное число не должно зависеть от состояний и параметров программы

а от чего оно должно зависеть, от шелеста ветра, фазы луны, напряжения на микрофоне ?
Не самые лучшие источники случайного, но да, направление правильное :)
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719596
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да зачем ты ио упомянул, оно здесь не нужно, все необходимые данные - можно принимать в качестве аргумента.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719602
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
F#У вас, кстати, есть уже готовая программа на императивном языке - чтоб посмотреть там всякие подробности?
Нет, именно такого готового нету. Но такого рода задачи в императивном языке не требуют каких-то особых умений.
Достаточно пройтись по моему списку из 14 пунктов и задать соответствующие проверки.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719615
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.F#У вас, кстати, есть уже готовая программа на императивном языке - чтоб посмотреть там всякие подробности?
Нет, именно такого готового нету. Но такого рода задачи в императивном языке не требуют каких-то особых умений.
Достаточно пройтись по моему списку из 14 пунктов и задать соответствующие проверки.я тебе открою секрет, фп все так же, просто без циклов, побочных эффектов и деструктивного присваивания.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719619
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNя тебе открою секрет, фп все так же, просто без циклов, побочных эффектов и деструктивного присваивания.
Вместо секрета меня вполне устроит функция на ФП для решения этой задачи.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719630
F#
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
F#
Гость
Alibek B.Про спецтип World я не понял. Имеется ввиду, что у этого типа будут аргументы, описывающие состояние вселенной, на основании которого можно рассчитать значение датчика? Так это невозможно, т.к. вселенная не является полностью детерминированной.

Нет. Это тип, значение которого обозначает текущее состояние вселенной. То, что она не являетсся детермирированной не значит, что в данный текущий момент нет ровно одного показания датчика. Грубо говоря, программа выглядит так (C# - образный псевдокод)

Код: c#
1.
2.
3.
4.
5.
6.
World main(World worldState)
{
    randomValue, nextWorldState = getRandomValue(worldState) 
    return outputValue(nextWorldState, randomValue)
    
}



World - это абстрактный тип, на который наложены некоторые дополнительные ограничения
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719632
inv2004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ZyK_BotaN
Зачем я + вставил посередине, а не перед
sum[1;2;3;4] было бы на J: +/1 2 3 4

хотя даже в этом примере хаскельцы поняли, что лениво писать foldr 0 постоянно, поэтому заалиасили sum, тем самым создав бесполезную функций. В J это просто + и / (foldr) - написать очень просто - никакую сум алиасить не надо.

Но всё же вернёмся к 1+2 3 4, тут в haskell должен быть _бесполезный_ map, хотя тут просто сложение скаляра и вектора, но в haskell такого нет, поэтому пишем map.

Regards,

ZyK_BotaNZyK_BotaNпропущено...

зачем мап, чем плоха

sum [1,2,3,4]

?или это не сума, а что тогда? раз ты говоришь мап, значит я ошибся, и не все так очевидно
что в результате получим?
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719637
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
F#Нет. Это тип, значение которого обозначает текущее состояние вселенной. То, что она не являетсся детермирированной не значит, что в данный текущий момент нет ровно одного показания датчика.
По прежнему понял не все.
Тем не менее, из этого вытекает, что ФП не подходит для квантовой механики, так?
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719651
inv2004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
S.G.,

K, с алиасами от Q и есть _почти_ естественный язык, смотри примеры:
Код: sql
1.
flip where n&count each group flip value flip t
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719652
F#
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
F#
Гость
ZyK_BotaNда зачем ты ио упомянул, оно здесь не нужно, все необходимые данные - можно принимать в качестве аргумента.

А как качнуть с сайта без ИО?
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719665
inv2004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поддерживаю, читать Bazist никакого прока, язык, который решает только примитивные задачи, но у которого даже нет концепции - толку никакого, так как нет уверенности, что на большой задаче не вылезет концептуальная проблема в каком-то месте.

Bazist ,
Порешай хотя бы большинство euler задач, потом есть смысл смотреть на rs, иначе - проходите мимо, пожалуйста.

Edd.DragonBazistДа, расстроил меня язык К.
Лучше уже действительно учить ультракороткий и ультрапростой язык
Изыди, демон!

Лучше стремиться к прекрасному, чем занимать пустующие мозги всякой бесполезной мишурой.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719671
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.ZyK_BotaNя тебе открою секрет, фп все так же, просто без циклов, побочных эффектов и деструктивного присваивания.
Вместо секрета меня вполне устроит функция на ФП для решения этой задачи.а меня на ип.

геморность задачи не зависит от парадигмы.

упрости модель(зачем нам настоящие (секунды, минуты, часы, дини, месяца, года).

оставь только суть. то что "нельзя" на фп. и я напишу.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719673
inv2004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я кажется понял, откуда в теме взялось 10 страниц,
некий Bazist влез в чужую тему, чтобы попиарить свой недоязык, хотя ничего общего с темой он не имеет.

Я попрошу модераторов вычистить это переливание из пустого в порожнее.

Условие, необходимое для рассмотрения языка RS - хотя задачи euler, решенные на нём.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719677
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNоставь только суть. то что "нельзя" на фп. и я напишу.
Зачем? Я уже все понял.
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719678
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
F#ZyK_BotaNда зачем ты ио упомянул, оно здесь не нужно, все необходимые данные - можно принимать в качестве аргумента.

А как качнуть с сайта без ИО?к пересчету времени ИО отношения не имеет.

тут обычная ф-я.

передаем ф-и (скачанное с помощью ио время и местоположение), а ф-я должна быть чиста и ничего не качать
...
Рейтинг: 0 / 0
Зачем писать программы сложно и долго, когда можно просто и легко?
    #37719683
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.ZyK_BotaNоставь только суть. то что "нельзя" на фп. и я напишу.
Зачем? Я уже все понял.мда уж. на императивном языки я тоже ничего не написал, дак че, на императивном языке задача не решается )
...
Рейтинг: 0 / 0
25 сообщений из 324, страница 10 из 13
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Зачем писать программы сложно и долго, когда можно просто и легко?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]