powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Функциональное программирование
25 сообщений из 300, страница 7 из 12
Функциональное программирование
    #36436036
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglGluk (Kazan),

Не МУМПС, который и так почти дохлый, а идея доступа к данным из программы. Хорошо, начнем с другого конца=)

Как, по вашему, должны хранить данные _большие_ программы на ФП?

В БД (они знаете ли очень для этого подходят)
а по вашему ???
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436043
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nitro_JunkieНо кстати по вопросам параллелизма о котором тут параллельно спорят... Императивную программу реально очень тяжело распараллелить, в то время как распаралливание декларативной (функциональной) программы уже достаточно неплохо реализовано в существующих SQL-серверах.

Там не распараллеливание, а оптимизация в полный рост.
И не за счет декларативности, а за счет узкой сцепифичности задачи
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436101
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)SiemarglGluk (Kazan),

Не МУМПС, который и так почти дохлый, а идея доступа к данным из программы. Хорошо, начнем с другого конца=)

Как, по вашему, должны хранить данные _большие_ программы на ФП?

В БД (они знаете ли очень для этого подходят)
а по вашему ???

Я быстренько прочитал определения ФП итд и понял:
1. Все что было сказано выше мной, подходит только к параллельным вычислениям и к функциям без побочных эффектов - не более.

2. Как БД соотнесутся с ФП - вообще неизвестно, ибо в ФП отрицается сама идея состояний и постоянного хранения данных вычислений (((

3. СУБД в их текущем состоянии с ФП ничего общего не имеют. Только несколько общематематических определений (декларативнсть итп)
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436136
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl
2. Как БД соотнесутся с ФП - вообще неизвестно, ибо в ФП отрицается сама идея состояний и постоянного хранения данных вычислений (((


Зато БД прекрасно соотносятся с прикладными задачами, которые приходиться решать и ФП в том числе. Кстати, никто не отрицает необходимости долгосрочного хранения состояния. Что касается необходимости хранения оперативного состояния, на кой по вашему пришлось изобретать монады ???

Есть такая необходимость. И существование этой необходимости куда более определяющее, чем отношение к ней ФП. Практика - критерий истины ? ;)
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436468
Nitro_Junkie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan),

Распараллеливание один из видов оптимизации.

Нифига себе узко-специфичная задача - все бизнес-решения и информационные системы :) Кроме того императивный алгоритм (то есть с if, while) по количеству абстракций проще чем SQL. А хорошо оптимизируется почему-то последний.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436501
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nitro_Junkie
Нифига себе узко-специфичная задача - все бизнес-решения и информационные системы :) Кроме того императивный алгоритм (то есть с if, while) по количеству абстракций проще чем SQL. А хорошо оптимизируется почему-то последний.

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

А бизнес-решения кстати пишутся не на SQL, а на универсальных ЯП (C# например или PL/SQL), SQL для этого совершенно очевидно недостаточен.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436643
Nitro_Junkie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan),

А можно узнать что вы имеете ввиду под универсальным языком программирования? Полнотой по Тьюрингу он обладает. Да, он меньше подходит под одни задачи (UI на нем тяжело запрограммировать), но хорошо подходит под другие... Строго говоря UI делать и на if'ах и while'ах без вспомогательных библиотек (неважно в какой парадигме) также невозможно.

В любом случае вы почему-то считаете что SQL проще структурного кода, что явно не так. Грамматика первого состоит где-то из правил 5-10, а грамматика второго в несколько раз больше.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436670
Nitro_Junkie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В смысле наоборот второго и первого соответственно :)
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436837
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда Вы говорите, у меня такое впечатление, что вы бредите (c)

Nitro_Junkie
А можно узнать что вы имеете ввиду под универсальным языком программирования? Полнотой по Тьюрингу он обладает.


Доказательство полноты по Тьюрингу будет ?
Про какой SQL говорим ? Фраза MODEL Oracle ???

Nitro_Junkie
Да, он меньше подходит под одни задачи (UI на нем тяжело запрограммировать), но хорошо подходит под другие... Строго говоря UI делать и на if'ах и while'ах без вспомогательных библиотек (неважно в какой парадигме) также невозможно.


тяжело ? т.е. возможно ??? Валяй, интересно будет посмотреть
Наверное системное программирование на SQL это тоже тяжело ???
SQL это в чистом виде DSL, придуманный когда самого термина DSL еще небыло. Это проблемнно-ориентированный язык, а не язык программирования

Nitro_Junkie
В любом случае вы почему-то считаете что SQL проще структурного кода, что явно не так. Грамматика первого состоит где-то из правил 5-10, а грамматика второго в несколько раз больше.

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

SQL - 1999 (с появлением рекурсивных CTE), полон по тьюрингу, легко построить отображение на частично-рекурсивные функции... уже обсуждалось, не будем повторяться, гугл в помощь...

Вот на SQL - 2008 (впрочем можно и на 1999) сделано отображение множество Mandelbrot'а

Я вообще имел ввиду теоретически можно, и не спорю что структурное программирование больше подходит для системного программирования. Но у вас логика, раз на феррари не проедешь по лесу значит феррари не машина, в отличии от лэндкруйзера на котором проедешь.

Грамматику SQL, с грамматикой структурного программирования по количеству правил. А уж семантика структурного программирования так точно проще семантики SQL... Но нет последний все равно лучше оптимизируется...
...
Рейтинг: 0 / 0
Функциональное программирование
    #36436920
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nitro_JunkieGluk (Kazan),
SQL - 1999 (с появлением рекурсивных CTE), полон по тьюрингу, легко построить отображение на частично-рекурсивные функции... уже обсуждалось, не будем повторяться, гугл в помощь...


Если сто раз сказать мед, сладко не станет
Доказательства полноты по Тьюрингу в студию (только доказательства, а не домыслы, как в прошлый раз). И не сферического CTE, а конкретной реализации CTE

Nitro_Junkie
Грамматику SQL, с грамматикой структурного программирования по количеству правил. А уж семантика структурного программирования так точно проще семантики SQL... Но нет последний все равно лучше оптимизируется...

Давай с этого места поподробнее. Что такое грамматика и семантика "структурного программирования" ??? PL/I аль Си имеешь в виду ??? Али Пасквиль с Адой ?

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

Если у вас плохо с образованием, вам не читали теорию грамматик, и вы даже не понимаете что именно я имею ввиду под структурным программированием и его грамматикой (и конкретный синтаксис тут роли не играет), то я вам ее рисовать здесь не буду, воспользуйтесь поиском... Теория алгоритмов, теория вычислимости, частично-рекурсивные функции и т.п. тоже видимо прошли мимо вас...
Но проблема в том, что у вас плохо не только с образованием, но и с абстрактным мышлением, вы за деревьями не видите леса... А вот в этом вам уже никто не поможет, поэтому "спор" с вами будем считать законченым.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437009
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята, давай сворачивать обсуждение SQL.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437036
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nitro_JunkieGluk (Kazan),

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

А не растекаясь мыслию по древу ? Я тебя попросил две сугубо конкретные вещи, в доказательство твоих же слов:

1. Реализацию машины Тьюринга на SQL (коея как правило и принимается за доказательство (не знал ? будешь знать ))
2. Ссылки на грамматики SQL и ... скажем C++ :) не буду тебя на PL/I посылать. С целью сравнения их объема.

А в ответ бла бла бла, уши вянут. Найдешь приходи. Хоть в отдельную тему, хоть ко мне в почту.
А здесь с SQL-ем больше не мелькай, надоело
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437101
Nitro_Junkie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan),

Не смешите людей своей безграмотностью...

1. Для доказательства полноты по Тьюрингу, достаточно показать эквивалентность одному из множеств вычислимых функций. И для декларативных формализмов, это проще делать сравнивая с частично-рекурсивными функциями для которых уже доказана полнота по тьюрингу. И вообще полнота по Тьюрингу напрямую не связана с машиной Тьюринга, как и машиной Поста и т.п.
2. Открываем документацию по ораклу или MSSQL и смотрим.. Для вас конечно будет откровением что та странная форма из квадратных скобочек, вертикальных стрелочек и есть один из видов задания грамматики (с определенными оговорками), но к вашему невеждеству думаю уже все привыкли.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437127
Nitro_Junkie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати с какого боку тут C++, максимум C и то без дополнительных наворотов типа макросов и т.п. If, while, массивы, операторы присваивания, сравнения, функции и может struct'ы.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437218
mikhail_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton

mikhail_nЗайди на сайт Сана, посмотри чего делает свич -xautopar Сановского C/C++ компилятора и да снизойдёт на тебя просветление.

И что, это таки серебрянная пуля, которая решит все проблемы параллелизма?

Да какая там {censored} серебрянная пуля! Вот как раз из-за того что сам компилятор без постороннего вмешательства программиста практически ничего сложнее чем примитивные циклы попадающие под категорию embarrassingly parallel code автоматически распарралелить не может и возникла такая фигня как OpenMP (ну это такая моя версия). Но говорить что современные компиляторы C/C++ не могут автоматически находить и параллелить куски кода которые очевидно могут быть распараллелены - неверно. А поскольку я не верю в то что такое положение дел с автоматическим распараллеливанием есть результат того, что люди пишущие сишные компиляторы для Сана умишком слабоваты, то я весьма скептически отношусь к тому, что в ф.п. достижим какой то прорыв в этой области только за счёт "чистоты" функций и "применения абстракций очень высокого уровня", хотя и то и другое есть гуд.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437413
belugin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikhail_nпостороннего вмешательства программиста практически ничего сложнее чем примитивные циклы попадающие под категорию embarrassingly parallel code автоматически распарралелить не может

Вопрос: может ли такой компилятор распараллелить цикл, в котором происходит вызов функции? То есть какой цикл является примитивным, а какой - нет.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437452
belugin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Siemargl
2. Как БД соотнесутся с ФП - вообще неизвестно, ибо в ФП отрицается сама идея состояний и постоянного хранения данных вычислений (((


в ФП не отрицается наличие состояний. Просто состояние должно быть передано в функцию и новое состояние явно возвращено.

Доходит до того, что передают состояние всего мира в качестве параметра функции (язык clean)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
module hello1 
 
import StdEnv 
 
Start :: *World -> *World 
Start world 
  # (console,world)  = stdio world 
  # console      = fwrites "Hello World.\n" console 
  # (ok,world)    = fclose console world 
  | not ok      = abort "Cannot close console.\n" 
  | otherwise      = world 

в результате состояние только там, где оно нужно.


3. СУБД в их текущем состоянии с ФП ничего общего не имеют. Только несколько общематематических определений (декларативнсть итп)

ну основной принцип лежащий в основах ФЯ - это то, что программа - это комбинация чистых функций. селекты и апдейты очень похожи на комбинацию функций относительно отношений и скаляров.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437457
belugin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)А Вам новичков почти удалось ввести в заблуждение.

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

Интересно было бы заслушать человека, который практически со всем этим поработал.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437462
belugin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
Nitro_Junkie
Да, он меньше подходит под одни задачи (UI на нем тяжело запрограммировать), но хорошо подходит под другие... Строго говоря UI делать и на if'ах и while'ах без вспомогательных библиотек (неважно в какой парадигме) также невозможно.

тяжело ? т.е. возможно ??? Валяй, интересно будет посмотреть


что, то типа
Код: plaintext
1.
insert console (line) select ("Hello, " + output) from ui where prompt = "Enter your name"
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437619
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nitro_Junkie
1. Для доказательства полноты по Тьюрингу, достаточно показать эквивалентность одному из множеств вычислимых функций. И для декларативных формализмов, это проще делать сравнивая с частично-рекурсивными функциями для которых уже доказана полнота по тьюрингу.

1. Валяй, так тоже можно. Жду доказательство
2. И не забудь про грамматики :) жду ссылок на то что будем сравнивать (чтобы потом не отперся)
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437621
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nitro_JunkieКстати с какого боку тут C++, максимум C и то без дополнительных наворотов типа макросов и т.п. If, while, массивы, операторы присваивания, сравнения, функции и может struct'ы.

Странно :) А почему не PL/I ??? SQL то Вы самый навороченный предлагаете взять, а язык уровня 70 года. Ай яй яй.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36437626
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
beluginGluk (Kazan)А Вам новичков почти удалось ввести в заблуждение.

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

Давай без обид :) Просто хлебнуть этого г действительно пришлось и после этого раздражают восторженные реплики, ах чистые функции, ах автоматически распараллелится, ах возьмем Quicksort, смотрите как все легко Не фига не легко и люди над этим не первый год бьются, и польза от параллельности во многих случаях не очень очевидна, зато вред весьма заметен. Мы например у себя вообще пришли к тому что многопоточность зло (иногда неизбежное). Пообщаться конечно можно, но это скорее под пиво разговор чем под форум.
...
Рейтинг: 0 / 0
Функциональное программирование
    #36438195
Арбитр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Январский рейтинг языков программирования

"...Соотношение объектно ориентированных языков к процедурным составляет 54,6% к 41,5%, а на долю функциональных и логических языков приходится по 2,8% и 1,1% ...."
...
Рейтинг: 0 / 0
25 сообщений из 300, страница 7 из 12
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Функциональное программирование
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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