powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Программирование - всё больше математикой становится
25 сообщений из 176, страница 5 из 8
Программирование - всё больше математикой становится
    #35234630
Фотография XDiaBLo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingiz _мод Gluk (Kazan)
1. БуГаГа
2. С отсутствием побочных эффектов очевидгл тоже ? ;)
Согласен, новые функции создавать нельзя. А побочных эффектов в SQL нет и не м.б., т.к. нет переменных.
боюсь что любой оператор селект удовлетворяет определениею функции и, значит, ею является

http://ru.wikipedia.org/wiki/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F_(%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0)

или может Глюку удавалось применять два раза один оператор селекта к одному и тому же отношению
и получать два разных отношения на выходе?
Как насчёт запроса количества строк в таблице? У меня в базе в одной таблице, по три записи в секунду появляется, то есть раз от разу результаты разные будут...
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35234638
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingizили может Глюку удавалось применять два раза один оператор селекта к одному и тому же отношению
и получать два разных отношения на выходе?

Код: plaintext
1.
select sysdate from dual;

???
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35234737
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tchingizбоюсь что любой оператор селект удовлетворяет определениею функции и, значит, ею является
Ессно:
таблица=selеct(список выражений, список таблиц, условие)
но в чистом SQL нельзя написать НОВУЮ функцию, можно использовать только стандартные.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35234812
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И выполнение функций далеко не всегда не связано с изменением каких-либо глобальных состояний ;)
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35237271
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) tchingizили может Глюку удавалось применять два раза один оператор селекта к одному и тому же отношению
и получать два разных отношения на выходе?

Код: plaintext
1.
select sysdate from dual;

???
у этой функции есть скрытый параметр текущее время

на вход подается прямое произведение dual на (скажем) [1970..].
а собственно сама функция является проекцией на компонент время.

поэтому просьба два разные ее применения делать в один и тотже момент времени системы
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35237274
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XDiaBLo tchingiz _мод Gluk (Kazan)
1. БуГаГа
2. С отсутствием побочных эффектов очевидгл тоже ? ;)
Согласен, новые функции создавать нельзя. А побочных эффектов в SQL нет и не м.б., т.к. нет переменных.
боюсь что любой оператор селект удовлетворяет определениею функции и, значит, ею является

http://ru.wikipedia.org/wiki/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F_(%D0%BC%D0%B0%D1%82%D0%B5%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0)

или может Глюку удавалось применять два раза один оператор селекта к одному и тому же отношению
и получать два разных отношения на выходе?
Как насчёт запроса количества строк в таблице? У меня в базе в одной таблице, по три записи в секунду появляется, то есть раз от разу результаты разные будут...
функция применялась к различным входным данным.
Отношения, меняющиеся со временем, от старика Кодда - это маразм не имеющий никакого отношения
к математике.
Отношение - это подмножество прямого произведение. Не больше и не меньше.
Оно не меняется никогда.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35237275
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_мод tchingizбоюсь что любой оператор селект удовлетворяет определениею функции и, значит, ею является
Ессно:
таблица=selеct(список выражений, список таблиц, условие)
но в чистом SQL нельзя написать НОВУЮ функцию, можно использовать только стандартные.

возьмем таблицу t из одной колонки f типа int

select f from t where f <= 2
и
select f from t where f >= 2

это две разные фукции
первая отношение
Код: plaintext
1.
2.
3.
4.
   f
   1
   2
   3

отображает в отношение

Код: plaintext
1.
2.
3.
   f
   1
   2

вторая в
Код: plaintext
1.
2.
3.
   f
   2
   3
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35238536
Фотография XDiaBLo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу того, что SQL язык функционального программирования, вспомнилось как тут недавно кое-кто утверждал, что ассемблер, это мультипарадигменный язык, потому что всё остальное написано на нём... Странный довод...
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35238607
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingizу этой функции есть скрытый параметр текущее время


вот именно => функции ВПОЛНЕ могут оперировать глобальным состоянием => не всякое применение (и даже определение) функций есть ФП
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35238608
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XDiaBLoПо поводу того, что SQL язык функционального программирования, вспомнилось как тут недавно кое-кто утверждал, что ассемблер, это мультипарадигменный язык, потому что всё остальное написано на нём... Странный довод...

+1
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35244066
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) tchingizу этой функции есть скрытый параметр текущее время


вот именно => функции ВПОЛНЕ могут оперировать глобальным состоянием => не всякое применение (и даже определение) функций есть ФП
я говорил, что оператор селект удоволетворяет определению функции в математическом смысле
и не более того.
к размышлениям о том, что не всякое применение функций есть ФП безразличен.
по видимому, оно справедливо
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35244231
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingiz
вот именно => функции ВПОЛНЕ могут оперировать глобальным состоянием => не всякое применение (и даже определение) функций есть ФП
я говорил, что оператор селект удоволетворяет определению функции в математическом смысле
и не более того.
к размышлениям о том, что не всякое применение функций есть ФП безразличен.
по видимому, оно справедливо[/quot]

Разьве я где-то говорил, что select не функция ???
К чему было это:

или может Глюку удавалось применять два раза один оператор селекта к одному и тому же отношению
и получать два разных отношения на выходе?
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35244711
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tchingiz
select f from t where f <= 2
и
select f from t where f >= 2
это две разные фукции

x=select(f,t,f <= 2)
y=select(f,t,f >= 2)
функция одна и та же, а ее значения разные при разных аргументах
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35246158
tIT-GP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Жжоте! ))
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35246748
Фотография XDiaBLo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tIT-GPЖжоте! ))
Аха, "Программирование" вообще моя любимая ветка, люблю холивары и всё такое, как-то даже прикольнее всяких башоргов бывает. Да и в споре постигается истина...
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35247348
zloy den
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XDiaBLo tIT-GPЖжоте! ))
Аха, "Программирование" вообще моя любимая ветка, люблю холивары и всё такое, как-то даже прикольнее всяких башоргов бывает. Да и в споре постигается истина...

Как правило, ничерта она не достигается-каждый остается при своем мнении
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35247738
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zloy denКак правило, ничерта она не достигается-каждый остается при своем мнении
Это всегда так, при обсуждении теоретических вопросов...
Я вот практик. Когда использую в шарпе или с++ элементы функционального программирования - то есть, в параметр функции ставлю вызов другой функции, то заявленная в теории "легкость дебагирования" (из-за отсутствия промежуточных состояний) не наблюдается. Даже наоборот, когда в незнакомом коде прыгаешь из функции в функцию (без возможности посмотреть промежуточный результат), то вообще теряешь нить. Так же при таком подходе сложнее вести лог.
Идем дальше. Лисп.
Метапрограммирование - где оно?
Очень хочется писать программы так:
- Лифт, ты будешь возить с этажа на этаж платформы. Сколько этажей не знаю, посчитай сам.
- Шатл, ты будешь возить платформы с полки в лифт и обратно. Только не забудь проверять - если на платформе высокая машина (джип) - не ставь ее на низкую полку - сломаешь крышу.
итп.
Но почему-то до сих пор так не получается, хотя тут все теоретики отрицают прямую связь между возможностями процессора и программированием как таковым. В абстракцию ушли.
Нет, теоретические изыскания это хорошо... даже очень хорошо... но они для меня (практика) подобны теоретическим изысканиям в области гиперпространства - пока корабли не бороздят просторы вселенной - значит, живем и решаем текущие проблемы без гиперпространства.

Ну насамом деле, о чем вы говорите... Если бы Хаскель или Лисп позволяли писать так, как и не снилось ООП, и на "раз" решать проблемы, которые ООП не под силу (вот, оптимизация работы тех же шатлов в складе - много коллизий возникает) - разве их бы не использовали "программистские низы"? А если есть что-то, что снижает время разработки программ (и стоимость) - разве руководство компаний это не использует? Капитализм ведь везде...
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35247997
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129Когда использую в шарпе или с++ элементы функционального программирования - то есть, в параметр функции ставлю вызов другой функции, то заявленная в теории "легкость дебагирования" (из-за отсутствия промежуточных состояний) не наблюдается. Даже наоборот, когда в незнакомом коде прыгаешь из функции в функцию (без возможности посмотреть промежуточный результат), то вообще теряешь нить. Так же при таком подходе сложнее вести лог.


ФП нужно применять или в праздничном наборе или не применять вообще. Каким образом то, что Вы куда-то передаете указатели на функции (или используете делегаты) гарантирует отсутствие побочных эффектов ? А ведь именно последнее, а не мифические "функции как полноправные объекты" и обеспечивает "заявленную легкость дебагирования".

Возможно стоит иногда включать здравый смысл ?

D129Метапрограммирование - где оно?

Например, когда я вместо старого доброго копи-паста использую шаблон :)
Или когда Схема преобразует:

Код: plaintext
1.
2.
3.
4.
(let* ((a  1 )
         (b (+ a  1 )))
 ...
)

в

Код: plaintext
1.
2.
3.
4.
5.
(let ((a  1 ))
  (let ((b (+ a  1 )))
    ...
  )
)

а каждый let затем в:

Код: plaintext
1.
((lambda (a) ...)  1 )

Очень знаете-ли помогает

Единственная цель метапрограммирования - уменьшить объем кода вводимого вручную и увеличить его понимабельность.

D129
- Лифт, ты будешь возить с этажа на этаж платформы. Сколько этажей не знаю, посчитай сам.
- Шатл, ты будешь возить платформы с полки в лифт и обратно. Только не забудь проверять - если на платформе высокая машина (джип) - не ставь ее на низкую полку - сломаешь крышу.

А это уже называется DSL в чистом и неприкрытом виде. Например когда средствами метапрограммирования реализована система символьных вычислений с которой можно общаться на привычном и до боли родном языке
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35248136
Фотография XDiaBLo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zloy den XDiaBLo tIT-GPЖжоте! ))
Аха, "Программирование" вообще моя любимая ветка, люблю холивары и всё такое, как-то даже прикольнее всяких башоргов бывает. Да и в споре постигается истина...

Как правило, ничерта она не достигается-каждый остается при своем мнении
Достигается, я не имел в виду что кто-то, кого-то в чём-то убедит. Я имел в виду что пока споришь, или наблюдаешь чужой спор, часто приходит понимание
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35248155
Фотография XDiaBLo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129Ну насамом деле, о чем вы говорите... Если бы Хаскель или Лисп позволяли писать так, как и не снилось ООП, и на "раз" решать проблемы, которые ООП не под силу (вот, оптимизация работы тех же шатлов в складе - много коллизий возникает) - разве их бы не использовали "программистские низы"? А если есть что-то, что снижает время разработки программ (и стоимость) - разве руководство компаний это не использует? Капитализм ведь везде...
А вот дело то как раз в том, что все так думают, что раз не распространено, значит плохо, и даже не рассматривают. Кроме того на модные шняжки полно документации, а на редкую но мощную штуковину как-то поменьше. Не надо на толпу смотреть, мыж не животные, чтоб тупо за стадом плестись.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35248180
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
Возможно стоит иногда включать здравый смысл ?


Вы меня обижаете. :-(
Как бы я программировал реал-тайм системы без включенного здравого смысла?
По Вашему, я пытаюсь оценить разные языки и принципы с позиции практической пользы (даже экономической!) их применения, и делаю это "выключив здравый смысл"?
Эх...

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

Примеров на Схеме я не понял :-( - не владею языком ("Французкого не употребляю" (с) :-) )
Надо будет почитать что это такое.

Капитализмус - не есть идея! Капитализмус - это чистоган!
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35248240
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129Вы меня обижаете. :-(
Как бы я программировал реал-тайм системы без включенного здравого смысла?


И в мыслях не держал Зачем мне Вас обижать ???
Просто напросто ВАШЕ ожидание гарантии отсутствия побочных эффектов из-за того, что Вы куда-то передали указатель на функцию или функтор, с позиций ВКЛЮЧЕННОГО здравого смысла выглядит странно.

D129Шаблонами не пользуюсь, и вот почему - когда система реальная, в ней нельзя выполнять действия, которые были допустимы в той, на основе которой был построен шаблон.
То есть, от проэкта к проэкту шаблон будет меняться до неузнаваемости.


Тут ить от шаблона много зависит. Может быть просто не умеете готовить ? (из-за того что не пользуетесь). При всей своей несовершенности шаблоны C++ весьма мощная штука.
Впрочем я говорил даже не о повторном использовании, а о рутинных повторах почти одинаковых повторов кода, которые часто приходится видеть. (Снова и в мыслях не держал Вас обидеть, не надо бряцать медальками, я ВАМ верю).

DLL тоже хорошо, сам с удовольствием пользую (только при чем тут шаблоны ?)
А вот если у вас где-то реализован собственный скриптовый язык (скажем для описания окошек), то это УЖЕ DSL, причем, даже если Вы никагда никагда не используете шаблонов
И ничего научно-нового в этом нет (как и в статье) уже лет так ...цать
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35248291
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XDiaBLo
А вот дело то как раз в том, что все так думают, что раз не распространено, значит плохо, и даже не рассматривают. Кроме того на модные шняжки полно документации, а на редкую но мощную штуковину как-то поменьше. Не надо на толпу смотреть, мыж не животные, чтоб тупо за стадом плестись.[/quot]
Как это никто не рассматривает? Я рассматриваю, Вы рассматриваете, разработчики редких штуковин - тоже реальные люди... Но зашел я на Мягкое введение в Хаскель почитал... нет у меня сейчас применения этому... все математические расчеты - на уровне 4 действий арифметики... грустно, но это так - а если и будет сложнее, то шарп посчитает, а мне на нем уже привычнее...
Смотрите, к чему все идет - к програмистскому эсперанто, единому языку, чтобы он все мог и всем подходил. К таким выводам я прихожу...
Если модные шняжки используют - значит они устраивают...
Ну и я бы не стал употреблять в адрес программистов понятие "стадо" нет, не из-за политкорректности, а просто это не соответствует действительности - баран из стада выпрыгнуть не может, без стада он погибнет, а вот программисты иногда вырываются, и новые вещи делают. И новые способы ищут - вот Вы, например, никак не в стаде...
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35248367
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
D129Но зашел я на Мягкое введение в Хаскель почитал... нет у меня сейчас применения этому...

Пример из жизни (про Схему правда, Хаскель для меня как то слишком):

1. Проектируется отказоустойчивый кластер (1 узел боевой, остальные горячего резерва). Требуется разработать хитрый протокол рукопожатия, гарантирующий, чтобы из любого положения, когда жив хотя бы один узел, боевым становился один и только один, а осталньные переводились в горячий резерв. Мозк начинает кипеть, а C++, при всех своих достоинствах, лаконичностью не страдает. Варианты реализации которые пишутся и переписываються совершенно не похожи друг на друга да и баги ловить тяжко, поскольку последовательность событий воспроизвести удается далеко не всегда.

Берем схему и прежде чем бросаться кодить реализуем модельку , гораздо более лакончную чем любая из реализаций. На ней опробируем модельки различных реализаций протоколов. Более того, можно реализовать генератор всех возможных последовательностей событий, прогнать его через модельку и отловить некорректные конечные конфигурации. А когда все устаканится - переложить протокол на C++.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35248383
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
И в мыслях не держал Зачем мне Вас обижать ???
Просто напросто ВАШЕ ожидание гарантии отсутствия побочных эффектов из-за того, что Вы куда-то передали указатель на функцию или функтор, с позиций ВКЛЮЧЕННОГО здравого смысла выглядит странно.

А, ну так я не про это говорил... это мне как раз ясно. Неясно выразился видимо.
Выходит так, что побочные эффекты мне как раз нужны и полезны. По-опыту: в чужом коде несколько раз вытаскивал такие вложенные функции в локальную переменную, чтобы можно было не влезая внутрь (а иногда это невозможно - дллка) увидеть, что именно она вернула (или надо было в лог записать это промежуточное состояние).
...
Рейтинг: 0 / 0
25 сообщений из 176, страница 5 из 8
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Программирование - всё больше математикой становится
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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