powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Тяпничные комбинаторы
37 сообщений из 37, показаны все 2 страниц
Тяпничные комбинаторы
    #38999342
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здарова коллеги.

Хаскелисты . Сишники. Жаботисты. Лиспо-веды. Счетуны . Математики и прочие любители загадок парадоксов
брейнфаков, эзотерических языков. А также Илья. Сова. Дима. Саша-Меркурий. Владимир. Егорыч. Сибиряков.
И Сидоров. Ну .. если Базист подтянется - будет вообще чудненько.

Тема - комбинаторная логика (КЛ). Опущу детали. Интересущиеся почитают книжку Душкина или Вики.
Или более фундаментальные труды Хаскелла Карри. Вкратце.

Комбинатор - это некоторый константный объект который не содержит в себе переменных но
позволяет комбинировать себя с аргументами и другими объектами, попутно порождая новые символьные
конструкции которые также могут комбинироваться.

Процесс применения комбинаторов называется аппликацией .
Аппликация не подчиняется законам арифметики. По сути комбинаторы
стоят на уровень ниже арифметики, образовывая некие философские
базовые понятия на которых можно (наверное) построить некую арифметику.

Алфавит комбинаторов состоит из:

Заглавных букв (комбинаторы)

Строчных букв (переменные)

Круглые скобки как приоритетность

Знак равенства - постулируемое правило аппликации.

Душкин выделяет следующие фундаментальные комбинаторы (осторожно под катом
буквы):

Канцеллятор
Код: plaintext
1.
Kxy=x


Коннектор
Код: plaintext
1.
Sxyz=xz(yz)


Тождество
Код: plaintext
1.
Ix=x


Композитор
Код: plaintext
1.
Bxyz=x(yz)


Пермутатор
Код: plaintext
1.
Сxyz=xzy


Дубликатор
Код: plaintext
1.
Wxy=xyy



Их названия могут отличаться от других в переводной литературе. На суть не влияет.

Группы комбинаторов могут образовывать базисы. И выражаться друг через друга.
Впрочем это сейчас не важно.

Что я хочу сделать.

Ну... наверное свой макет для экспериментов с КЛ. И реализацию на сях.

Как я это хочу сделать

Да вобщем-то всё равно. Можно
Код: plaintext
1.
2.
3.
void main(int argc, char **argv){
    eval_combinators("....");
}


с выводом диалога в REPL. Можно оконным приложением.
Можно чтением из stdin.

Ради чего я всё это делаю.

1) Ну во первых - Just For Fun. Ради удовольствия. Ради spend time.
2) Во вторых, чтобы освоить интересный раздел ФП и применить эти знания
в будущем в других смежных областях. В обработке текста.
3) Попутно поковырять С/C++ и трансляторы и запилить свой собственный "deqaws" или
обфускатор.

В чём пока еще я не разобрался
Как доказать конечность комбинаций? Возможны ли зацикливания и рекурсии?
Как постулировать "число" и "операции" над ним?
Как синтезировать строительные блоки - DO,WHILE,IF,IF-ELSE и использовать их?
Существует ли "контекст" аппликаций?
Как "оптимизировать" строковые замены?
Как... e.t.c.

Вобщем слушаю каменты.
Ваш покорный слуга и модератор mayton

P.S. Время до ПН еще есть...
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999346
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСибиряков.
На меня не рассчитывай. Из всех комбинаторов я знаю только Бендера, а из поста не понял ни
слова.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999349
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ну ОК. Не страшно. Побудь в подписчиках.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999363
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovиз поста не понял ни слова.

+1

mayton, не умничай, на пальцах объясни.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999366
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дайте подумать. Чёт упустил во введении.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999373
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или ссылок дай где ты этих заумностей нахватался. Примеры давай. Тут знатоков теории мало, лично я немного знал и то забыл, Саша может поймет о чем речь.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999380
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Погуглил
Комбинаторная логика
Комбинаторы — это просто!

Это какой-то глубокоматематический капец без намека на реальное примение. Не, может я не понял глубину, но данное чтиво может взорвать мозг, а он у меня один и я его берегу ))
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999500
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton Тема - комбинаторная логика (КЛ). Опущу детали. Интересущиеся почитают книжку Душкина или Вики.
Или более фундаментальные труды Хаскелла Карри. Вкратце.
эээээ.... как бы сказать помягче.
Не надо их читать. Есть намного более лучшие, понятные и поступательно развивающие тему книги.
Можешь начать с Michael Sipser, Introduction to the Theory of Computation.
Душкина я не листал, но судя по нестандартности терминов которые ты использовал - читать его не надо.
А Curry тут слегка не в тему, тебя зацепил разбор грамматик, а у Curry это мизерный этап, к Curry надо приходить уже хорошо разбираясь в грамматиках.

Ну это что касается теории...

mayton Ради чего я всё это делаю.

1) Ну во первых - Just For Fun. Ради удовольствия. Ради spend time.
2) Во вторых, чтобы освоить интересный раздел ФП и применить эти знания
в будущем в других смежных областях. В обработке текста.
3) Попутно поковырять С/C++ и трансляторы и запилить свой собственный "deqaws" или
обфускатор.

Вопрос первый, ты очень огорчишься если я ткну пальцем в Yacc/Bison и скажу что эти приложения как раз и делают то о чем ты говоришь? :)
А еще есть целый язык OCaml в котором разбор грамматик является фичей встроенной в сам язык. И мне сильно кажется что всего Верблюда именно ради этого и делали. Очень уж легко на нем делать трансляторы, за счет всего остального...

mayton В чём пока еще я не разобрался
Как доказать конечность комбинаций? Возможны ли зацикливания и рекурсии?Конечность? А что ты под этим понимаешь?

И да, рекурсии возможны.
Вот тебе рекурсия:
A = Aa | ɛ
А зацикливания невозможны.

Зато могут быть проблемы неоднозначности:
A = ba|Ba
B = b
В этом случае строку "ba" можно описать двумя разными путями.

maytonКак постулировать "число" и "операции" над ним?
NUMBER = DIGIT | NUMBER DIGIT
DIGIT = 0|1|2|3|4|5|6|7|8|9

OPERATIONS = NUMBER OPERATOR NUMBER | OPERATIONS OPERATOR NUMBER
OPERATOR = + | - | * | /


maytonКак синтезировать строительные блоки - DO,WHILE,IF,IF-ELSE и использовать их?
STATEMENTS = STATEMENTS STATEMENT | STATEMENT
STATEMENT = WHILE_DO | DO_WHILE | IF_BLOCK | SOME_OTHER_PRIMITIVES
WHILE_DO = WHILE CONDITION DO STATEMENTS LOOP
DO_WHILE = DO STATEMENTS WHILE CONDITION
CONDITION = LOGIC_OPERAND LOGIC_OPERATOR LOGIC_OPERAND



maytonСуществует ли "контекст" аппликаций?Нет, по определению.
Вспоминай как все это называется... Хотя... Судя по "комбинаторам" и "аппликациям" Душкин не смог найти стандартные названия "терминалы" и "правила".
В общем намекаю: в нормальной литературе это называется "Context Free Grammar"...

maytonКак "оптимизировать" строковые замены?Никак. Если некоторая цепочка распознавания может быть оптимизирована - значит строку можно распознать двумя способами, оптимизированным и не оптимизированным. А значит у нас появляется неоднозначность которая совершенно недопустима.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999502
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TПогуглил
Комбинаторная логика
Комбинаторы — это просто!

Это какой-то глубокоматематический капец без намека на реальное примение. Не, может я не понял глубину, но данное чтиво может взорвать мозг, а он у меня один и я его берегу ))Ой. Нет, этого Душкина читать не надо.
Может для людей идущих из математических глубин это изложение будет удобоваримым. Но людям с программистской базой лучше начинать с автоматов различной степени детерминированности и регулярных выражений. Поняв эти две темы - формальные грамматики укладываются в голове очень даже легко.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999719
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owlmayton Тема - комбинаторная логика (КЛ). Опущу детали. Интересущиеся почитают книжку Душкина или Вики.
Или более фундаментальные труды Хаскелла Карри. Вкратце.
эээээ.... как бы сказать помягче.
Не надо их читать. Есть намного более лучшие, понятные и поступательно развивающие тему книги.
Можешь начать с Michael Sipser, Introduction to the Theory of Computation.

Эта книга?
http://cglab.ca/~michiel/TheoryOfComputation/TheoryOfComputation.pdf

Душкина я не листал, но судя по нестандартности терминов которые ты использовал - читать его не надо.
А Curry тут слегка не в тему, тебя зацепил разбор грамматик, а у Curry это мизерный этап, к Curry надо приходить уже хорошо разбираясь в грамматиках.
Душкин вообще пишет в тему Haskell. А комбинаторы - просто небольшой раздел в книге.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999724
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечность? А что ты под этим понимаешь?

И да, рекурсии возможны.
Вот тебе рекурсия:
A = Aa | ɛ
А зацикливания невозможны.

Я здесь не понимаю что обозначает символ |
И не понимаю как толковать комбинатор А.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999727
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NUMBER = DIGIT | NUMBER DIGIT
DIGIT = 0|1|2|3|4|5|6|7|8|9

OPERATIONS = NUMBER OPERATOR NUMBER | OPERATIONS OPERATOR NUMBER
OPERATOR = + | - | * | /
Нет нет. Это не то. Данная форма ЕМНИП называется ЕБНФ или разновидность ее.
И кажется надо ставить не равно а двоеточие и равно "::=".

Она описывает "возможность" применения дерева разбора к числовому выражению
типа NUMBER. Но на этом возможности Яков и Бизонов заканчиваются.

Меня-же интересует другое. Формализация операций над целыми. Через индукцию.

Например:

Код: plaintext
1.
1 + 4 = 1 + (1 + (1 + (1 + 1)))



Вобщем вроде как то вот так.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999730
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак. Если некоторая цепочка распознавания может быть оптимизирована - значит строку можно распознать двумя способами, оптимизированным и не оптимизированным. А значит у нас появляется неоднозначность которая совершенно недопустима.
Возможно я другое имел в виду. К примеру если я строю некую комбинаторную
машину, то я расчитываю что в выражении
Код: plaintext
1.
WS(BWB)a


при выполнении аппликаций я вынужден буду либо выполнять поочерёдно
всю последовательность нужных преобразований внутри строки либо
строить доп. структуры данных (бинарные деревья) для оптимизации
вычислений (особенно если формула будет в 100 или в 10000 крат
превышать образец который я привёл выше).
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999770
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonКонечность? А что ты под этим понимаешь?

И да, рекурсии возможны.
Вот тебе рекурсия:
A = Aa | ɛ
А зацикливания невозможны.

Я здесь не понимаю что обозначает символ |
И не понимаю как толковать комбинатор А. Символ "|" означает "или".
В сумме это все читается:
Правило А это Правило А и символ "a" или пустая строка.
На практике - любая строка состоящая из нескольких (от нуля до бесконечности) символов "a".
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999771
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЭта книга?
http://cglab.ca/~michiel/TheoryOfComputation/TheoryOfComputation.pdf
Нет, на моей книжной полке стоит другая (ISBN 9780534950972), но судя по оглавлению это тоже можно читать.

Хотя я бы поставил третью главу после четвертой и пятой. Мне кажется что надо сначала разобраться что такое определяемые и неопределяемые языки (пятая глава) прежде чем браться за внеконтестную грамматику. Но большинство учебников (включая Сипсера) со мной не согласны .... Но это мелочи на самом деле :)
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999772
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonNUMBER = DIGIT | NUMBER DIGIT
DIGIT = 0|1|2|3|4|5|6|7|8|9

OPERATIONS = NUMBER OPERATOR NUMBER | OPERATIONS OPERATOR NUMBER
OPERATOR = + | - | * | /
Нет нет. Это не то.
....
Меня-же интересует другое. Формализация операций над целыми. Через индукцию.

Например:

Код: plaintext
1.
1 + 4 = 1 + (1 + (1 + (1 + 1)))



Вобщем вроде как то вот так.Вот это как раз оно и есть.
Если ты хочешь еще и скобки и знак равенства распознавать, то просто чуть усложняешь уже показанные правила:
OPERATIONS = ( OPERATIONS ) | NUMBER OPERATOR NUMBER | OPERATIONS OPERATOR NUMBER | NUMBER
LOGIC_OPERATION = OPERATIONS LOGIC_OPERATOR OPERATIONS
LOGIC_OPERATOR = = | < | > | and | or
И все.


mayton Данная форма ЕМНИП называется ЕБНФ или разновидность ее.
И кажется надо ставить не равно а двоеточие и равно "::=".
Я не знаю что такое ЕБНФ, извините. А двоеточие или равенство это не так уж важно, это зависит от используемого парсера (и учебника). В большинстве случаев правила определяются вообще стрелочкой, но я не помню ю-код символа "стрелочка", так что использовал знак равенства. Ну извините.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999773
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНикак. Если некоторая цепочка распознавания может быть оптимизирована - значит строку можно распознать двумя способами, оптимизированным и не оптимизированным. А значит у нас появляется неоднозначность которая совершенно недопустима.
Возможно я другое имел в виду. К примеру если я строю некую комбинаторную
машину, то я расчитываю что в выражении
Код: plaintext
1.
WS(BWB)a


при выполнении аппликаций я вынужден буду либо выполнять поочерёдно
всю последовательность нужных преобразований внутри строки либо
строить доп. структуры данных (бинарные деревья) для оптимизации
вычислений (особенно если формула будет в 100 или в 10000 крат
превышать образец который я привёл выше).ээээээ......
Во первых, ты никаких преобразований внутри строки не делаешь.
Во вторых, оптимизация вычислений это вещь совершенно отдельная от разбора строки.
Разбор строки это всегда превращение строки в дерево (не бинарное!). А что ты будешь делать с этим деревом потом, это уже совершенно другой вопрос и к собственно к процессу построения дерева не относится.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999790
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlmaytonЭта книга?
http://cglab.ca/~michiel/TheoryOfComputation/TheoryOfComputation.pdf
Нет, на моей книжной полке стоит другая (ISBN 9780534950972), но судя по оглавлению это тоже можно читать.

Хотя я бы поставил третью главу после четвертой и пятой. Мне кажется что надо сначала разобраться что такое определяемые и неопределяемые языки (пятая глава) прежде чем браться за внеконтестную грамматику. Но большинство учебников (включая Сипсера) со мной не согласны .... Но это мелочи на самом деле :)
Ага. Вот эта? http://www.amazon.co.uk/dp/0534950973
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #38999923
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonАга. Вот эта? http://www.amazon.co.uk/dp/0534950973 yes
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000538
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Глубоко не изучал исчисление и производные от него, потому не смогу подсказать вам сейчас, Марк. Идею касаемо обфускатора полностью поддерживаю и если вы всё-таки решите позже этим заниматься, готов присоединиться
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000568
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я долго запрягаю перед тем как ехать. И вобщем-то комбинаторный код мне почему-то напомнил decaws.
Тут недавно один чел создавал свой эзотерический язык c таким названием (стековая машина с минимумом
команд). И у меня возникли корыстные идеи. Правда перед тем как их обсуждать хотелось-бы самому
понять суть КЛ и что оно даёт. В первую очередь привлекает отсутствие машины имени Тьюринга которую
мы натягиваем на любую вычислительную систему.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000576
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonТут недавно один чел создавал свой эзотерический язык c таким названием
(стековая машина с минимумом команд).
Он, видимо, никогда не слышал о Прологе...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000587
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, ты хотел сказать о Форте?
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000617
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonты хотел сказать о Форте?
Нет, именно о Прологе. ЕМНИП, там четыре оператора и стэковая архитектура с бэк-трекингом.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000705
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovстэковая архитектура с бэк-трекингом .
Ого. Звучит внушительно. Не слыхал.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000926
eny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
eny
Гость
maytonЯ долго запрягаю перед тем как ехать. И вобщем-то комбинаторный код мне почему-то напомнил decaws.
Тут недавно один чел создавал свой эзотерический язык c таким названием (стековая машина с минимумом
команд). И у меня возникли корыстные идеи. Правда перед тем как их обсуждать хотелось-бы самому
понять суть КЛ и что оно даёт. В первую очередь привлекает отсутствие машины имени Тьюринга которую
мы натягиваем на любую вычислительную систему.

Открою Великую Тайну.

В сущности, все современные микропроцессоры это физические реализации машины Тьюринга.
И других доступных вычислительных архитектур в наличии нет. Были попытки создать в рамках многомиллиардных ОКР в Европе, США, Японии, но воз и ныне там.

Почитайте Хендерсона. Функциональное программирование. Применение и реализация. Там отдельно описан комбинаторный подход к реализации вычислений. А затем, три варианта реализации основанные на машине Тьюринга, ибо ничего другого как бы и нет.
Вообщем адский ад получается. А потому реалисты пишут проекты на сях и паскале - с тьюринговой точки зрения - идеальные языки.

Стек - одна из абстракций Тьюринговой машины и как бы ничего нового
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000993
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
enymaytonЯ долго запрягаю перед тем как ехать. И вобщем-то комбинаторный код мне почему-то напомнил decaws.
Тут недавно один чел создавал свой эзотерический язык c таким названием (стековая машина с минимумом
команд). И у меня возникли корыстные идеи. Правда перед тем как их обсуждать хотелось-бы самому
понять суть КЛ и что оно даёт. В первую очередь привлекает отсутствие машины имени Тьюринга которую
мы натягиваем на любую вычислительную систему.

Открою Великую Тайну.

В сущности, все современные микропроцессоры это физические реализации машины Тьюринга.
И других доступных вычислительных архитектур в наличии нет. Были попытки создать в рамках многомиллиардных ОКР в Европе, США, Японии, но воз и ныне там.

Почитайте Хендерсона. Функциональное программирование. Применение и реализация. Там отдельно описан комбинаторный подход к реализации вычислений. А затем, три варианта реализации основанные на машине Тьюринга, ибо ничего другого как бы и нет.
Вообщем адский ад получается. А потому реалисты пишут проекты на сях и паскале - с тьюринговой точки зрения - идеальные языки.

Стек - одна из абстракций Тьюринговой машины и как бы ничего нового

Машина Тьюринга, алгорифм Маркова (и др.) есть формальные описания алгоритма, необходимые абстракции над ещё одной абстракцией. Что значит "физические реализации" ? Любая ЭВМ есть физическая реализация МТ по критерию "назначение", т.к. её основная задача обработка некоторого алгоритма. Процессоры воплощают в себе идеи фон Неймана. Именно он придумал так называемое понятие процесса, и описал работу процессора. Не сомневаюсь в том, что работу Алана Тьюринга он изучил перед тем как заниматься этим, и даже опирался на неё (множество возможных команд, например, конечно не его изобретение), но говорить о том, что процессор есть реализация машины Тьюринга, или любого другого формального описания алгоритма мне не кажется верным.

А я думал что стек это множество элементов взаимодействующих по принципу LIFO.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39000994
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eny Вообщем адский ад получается. А потому реалисты пишут проекты на сях и паскале - с тьюринговой точки зрения - идеальные языки.

Чем они идеальны с точки зрения Алана Тьюринга ?
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39001088
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
eny, спасибо за открытие великой тайны. Хендерсона почитаю. Но не обещаю что сразу. И не всё.
Мой список того "что почитать" уже давно перевалил за 100 книжек. Увы
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39001416
eny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
eny
Гость
maytoneny, спасибо за открытие великой тайны. Хендерсона почитаю. Но не обещаю что сразу. И не всё.
Мой список того "что почитать" уже давно перевалил за 100 книжек. Увы

Начинайте с Хендерсона! Поймете что не так в ваших знаниях и начнете тогда в ширь,

если вам комбинаторы ближе, то там как раз для вас, в сети кстати есть в pdf и djvu
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39001447
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то маловато кода на С/С++ в этом топике ))
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39001511
eny
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
eny
Гость
Anatoly MoskovskyЧто-то маловато кода на С/С++ в этом топике ))

Дык топикстартер проявил безграничное уважение и доверие, что написал свой вопрос в этом топике, а не в жаве там или в паскале.
Значит уважает С++!

А уважение это неизмеримо больше, чем программирование...
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39001624
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
(сурово)

Обсуждаем тему а не меня. А то начну сердиться.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39009673
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Up!

Я подбит на взлёте. Честно говоря пока не могу придумать usecases для имеющегося
набора комбинаторов. Этот чортов Душкин не особо радует примерами.

Если кто подкинет идей - буду рад.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39010068
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonUp!

Я подбит на взлёте. Честно говоря пока не могу придумать usecases для имеющегося
набора комбинаторов. Этот чортов Душкин не особо радует примерами.Какой набор у тебя имеется то?

maytonЕсли кто подкинет идей - буду рад.Ты прочитал ту книгу которую нашел? 17853038
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39010251
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чел да о чём ты говоришь? Ты меня спутал с гением??

С моим basic intermediate я буду читать ее очень долго чел.
...
Рейтинг: 0 / 0
Тяпничные комбинаторы
    #39011747
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton, кажется я думал в том же направлении ...

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

базисных комбинаторов достаточно всего 2-х: S и K (хотя можно ввести и другие базисы)
остальные выражаются через них например, I =SKK

основная область применение комбинаторов :
избавление от свободных переменных: F= \x. (x+A) = C "+" A

организация ленивых вычислений: F = \x. ( x+A *x ) = S "+" ( "*" A) - аргумент x вычислится только при необходимости его подстановки

упрощение выражений: например, правило ассоциативности сложения С "+" -> "+" , применительно к \x. (x+A) = C "+" A -> "+" A = \x. (A+x)

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

авторКак доказать конечность комбинаций? Возможны ли зацикливания и рекурсии?
рекурсия осуществляется с помощью комбинатора неподвижной точки

авторКак синтезировать строительные блоки - DO,WHILE,IF,IF-ELSE и использовать их?
приоритетности и ассоциативности операций достаточно для их реализации

авторСуществует ли "контекст" аппликаций?
вот тут большая засада, по идее его быть не должно ... (пока мне думается, что это можно обойти таким постулатом: программа это формула которая возвращает ассоциативный массив Имя- > функция)
...
Рейтинг: 0 / 0
37 сообщений из 37, показаны все 2 страниц
Форумы / C++ [игнор отключен] [закрыт для гостей] / Тяпничные комбинаторы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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