LINUX.ORG.RU

Международный чемпионат по искусственному интеллекту

 ,


1

0

Опубликованы результаты международного чемпионата в области AI, организованного в университете Ватерлоо (Канада), при спонсорской поддержке Google. Приятно было увидеть в числе финалистов несколько представителей из России. Удивительным оказался тот факт, что среди победителей, попавших в top10, все 100% использовали язык C++.

>>> Подробности



Проверено: boombick ()
Последнее исправление: hibou (всего исправлений: 1)
Ответ на: комментарий от rjaan

>> А мне кажется, archimag и есть стенка.

Ну, не знаю, не знаю мне показалось, что он знает о том, что говорит... и видно, что ваш предмет спора он знает и не понаслышке!

Та нет. Он то неглупый, но лезет туда, куда ему не следовало бы.

Waterlaz ★★★★★
()
Ответ на: комментарий от archimag

>> На вопросы про интерпретатор и про алгебру ты не ответил.

Было сказано, что как сам Common Lisp (например, про макросы), так и его конкретная реализация SBCL, не связан с term rewriting, а также, очевидно, не имеет никакого отношения к алгебре. Интепретатор Common Lisp может быть только примеров использования символьных вычислений.

Ну напиши ж уже, что такое алгебра? Это настолько общее понятие, что ты себе не представляешь.

Waterlaz ★★★★★
()
Ответ на: комментарий от anonymous

> Не надо теории,

Это и есть твоя главная ошибка

Это да. Это когда на собственной попе понимаешь разницу между конечным автоматом(FSM) и иерархическим конечным автоматом(HFSM). А ведь в универе наверняка рассказывали про это. А мы пиво пили на весеннем солнышке в это время.

Sun-ch
() автор топика
Ответ на: комментарий от archimag

Вот опять ты со своей унификацией. Этот pattern matching - это НЕ УНИФИКАЦИЯ ни разу. Перестань путать понятия. У тебя в голове каша.

anonymous
()
Ответ на: комментарий от archimag

> Было сказано, что как сам Common Lisp (например, про макросы), так и его конкретная реализация SBCL, не связан с term rewriting, а также, очевидно, не имеет никакого отношения к алгебре.

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

Итак, что такое алгебра? Что такое интерпретатор? Что такое компилятор? Что такое семантика?

anonymous
()
Ответ на: комментарий от anonymous

> Вот опять ты со своей унификацией. Этот pattern matching - это

НЕ УНИФИКАЦИЯ ни разу


Ну ка, можно поподробней в этом месте?

archimag ★★★
()
Ответ на: комментарий от Waterlaz

> Ну напиши ж уже, что такое алгебра? Это настолько общее понятие,

что ты себе не представляешь.


Хм, алгебра это любовь? Зачем мне об этом вообще писать? Какое отношение алгебра имеет к Common Lisp?

archimag ★★★
()
Ответ на: комментарий от rjaan

> Ну, не знаю, не знаю мне показалось, что он знает о том, что говорит... и видно, что ваш предмет спора он знает и не понаслышке!

Не знает. Терминологию собственную изобретает - что всегда есть отличительная черта дилетанта. Не понимает, что такое символьные вычисления. Не понимает, что такое алгебра. Но зачем-то рассуждает.

Любая теория должна быть подкреплена практикой :-)))

Ты не представляешь... Всё программирование, какое только есть - это практическое применение этой сверхобщей теории. И не понимать её - вредно для практики.

anonymous
()
Ответ на: комментарий от Waterlaz

>..., но лезет туда, куда ему не следовало бы.

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

rjaan ★★
()
Ответ на: комментарий от archimag

> Хм, алгебра это любовь? Зачем мне об этом вообще писать?

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

Какое отношение алгебра имеет к Common Lisp?

Вот я и говорю - ты абсолютно не понимаешь, о чем говоришь.

anonymous
()
Ответ на: комментарий от anonymous

> Ты гуманитарий, что ли?

Нет, моя специальность - физика полупроводников, а также ядерная физика. Это имеет значение?

archimag ★★★
()
Ответ на: комментарий от anonymous

>> Какое отношение алгебра имеет к Common Lisp?

Вот я и говорю - ты абсолютно не понимаешь, о чем говоришь.


Т.е. опять ссылка на моё не понимание и не малейшей попытки как либо прояснить свою позицию?

archimag ★★★
()
Ответ на: комментарий от Sun-ch

> разницу между конечным автоматом(FSM) и иерархическим конечным автоматом(HFSM)

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

rjaan ★★
()
Ответ на: комментарий от archimag

> Т.е. опять ссылка на моё не понимание и не малейшей попытки как либо прояснить свою позицию?

Это не понимание того, что бесполезно разговаривать с неодухотворенными созданиями типа «anonymous» ;-)))

rjaan ★★
()
Ответ на: комментарий от Sun-ch

> Нет, первую систему сделали MIT (Macsyma) именно на лиспе. Бабла и ресурсов туда было ввалено немерянно, в результате были сформулированны основы.

Бабло вряд ли было на первом месте. Первая система - это еще proof-of-concept, где главное - идея, а эффективность уже потом. В лиспе ты можешь обрабатывать символы и выражения на прямую. Даже само слово s-expression означает «символьное выражение». Зачем изобретать разные деревья для представления выражений, когда они уже даны в самом языке?

dave ★★★★★
()
Ответ на: комментарий от anonymous

> (match '(a b c) with (('a x y) (dosomething x y))), раскрывающийся в (if (eq (car arg) 'a) (let* ((x1 (cdr arg)) (x2 (car x1)) (x3 (cadr x1))) (dosomething x1 x3)))

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

dave ★★★★★
()
Ответ на: комментарий от archimag

не Qi 2 это очень круто.

потому что pattern matching
без вывода типов это прикольно
НО НЕ КРУТО.

ты же сам писал что изучал хаскель.
в хаскеле хорошо видно как вывод
типов упрощает кодирование.

а Qi 2 позволяет использовать
вывод типов там где это принесет
выигрыш и выключить там
где он нужен

h1t
()
Ответ на: комментарий от h1t

Так что же тогда случилось с таким замечательным проектом?

archimag ★★★
()
Ответ на: комментарий от h1t

> в хаскеле хорошо видно как вывод

типов упрощает кодирование.


Не заметил.

archimag ★★★
()
Ответ на: комментарий от archimag

> Т.е. опять ссылка на моё не понимание и не малейшей попытки как либо прояснить свою позицию?

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

Для нормального продолжения дискуссии ты должен сказать, что такое, по твоему мнению, алгебра. Иначе это так и будет пустым трёпом, когда один из оппонентов просто не понимает ни слова из сказанного другим, поскольку они оперируют разными терминологиями.

anonymous
()
Ответ на: комментарий от archimag

> Ну ка, можно поподробней в этом месте?

Ты ведь у нас большой любитель аргументации на уровне кода, так? Ну вот и сравни реализацию cl-match с реализацией алгоритма унификации.

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

anonymous
()
Ответ на: комментарий от dave

> Самое интересное, что похожую вещь я тоже придумал. Только я делал разбор аргументов через destructuring-bind. :)

Это много кто придумывал. Мало кто делал это правильно. Особый шик - реализация match, которая не была бы враждебна к TCO.

anonymous
()
Ответ на: комментарий от anonymous

> Иначе это так и будет пустым трёпом

Пустой трёп это утверждать о большом знании/значении чего-то там и при это не приводить ссылок на реальный код.

archimag ★★★
()
Ответ на: комментарий от archimag

> Нет, моя специальность - физика полупроводников, а также ядерная физика. Это имеет значение?

Да. Это означает, что, скорее всего, ты алгебру пропустил. Не учили тебя алгебре. И дискретка вообще давалась в зачаточном состоянии.

anonymous
()
Ответ на: комментарий от anonymous

> Пример, как подобная макра раскрывается, я приводил выше - опять же,

ничего общего с унификацией, а вовсе наоборот, тупая прямая

трансляция шаблона в последовательность проверок и биндингов.



Не моя вина, что там используется такая тупая реализация. pattern matching является частным примитивным случаем унификация и это не имеет отношения к способу реализации. А реализация, ну у кого на что ума хватает, то так и реализует.

archimag ★★★
()
Ответ на: комментарий от archimag

> Пустой трёп это утверждать о большом знании/значении чего-то там и при это не приводить ссылок на реальный код.

Нет, пустой трёп - это говорить фигню вроде:

«Открою большой секрет: символьные вычисления, являющиеся одной из самых сильных сторон лиспа, не имеют никакого отношения к алгебре...»

Особенно если ты при этом не имеешь ни малейшего представления о том, что такое алгебра, и что называется «символьными вычислениями».

anonymous
()
Ответ на: комментарий от archimag

> pattern matching является частным примитивным случаем унификация и это не имеет отношения к способу реализации.

В общем случае - не является. В общем случае они совершенно друг друго ортогональны, просто немного похожи.

И то, что ты не пользуешься правильными реализациями pattern matching говорит как раз о твоей нехватке знаний. Которая мешает тебе писать хороший, чистый, быстрый код.

anonymous
()
Ответ на: комментарий от anonymous

> И то, что ты не пользуешься правильными реализациями pattern matching

Если говорить про cl-match, то вы знаете проекты, в которых используется эта библиотека? В gentoo-lisp-overlay этого проекта нет, а это значит, что не один из сколько-нибудь значимых проектов эту библиотеку не использует. А используют в основном metabang.bind:bind, странно, что вы это не знаете.

Которая мешает тебе писать хороший, чистый, быстрый код.


Ну сколько можно рассуждать о моём коде и при этом не приводить характерным примеров? Это же не трудно? Уверяю вас, там достаточно мест для того, что бы придраться.

archimag ★★★
()
Ответ на: комментарий от archimag

> А используют в основном metabang.bind:bind, странно, что вы это не знаете.

Каковой metabang-bind использует точно такую же схему компиляции шаблонов. Никакой дурацкой унификации в рантайме. Просто у cl-match код проще, вот я на него и сослался.

Ну сколько можно рассуждать о моём коде и при этом не приводить характерным примеров?

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

anonymous
()
Ответ на: комментарий от anonymous

> ни малейшего представления о том, что такое алгебра, и что называется «символьными вычислениями».

А что такое «символьные вычисления» в алгебре? Расскажите не знающему человеку?

Насколько мне известно, что символьные вычисления применимы только в программировании, а обычная алгебра, даже Булева, насколько мне опять же известно об таких вычислениях ничего не знает. Тогда получается вы нас получается пичкаете неким производным продуктом.

Правда, вот тут нашел, http://ru.wikipedia.org/wiki/Символьные_вычисления

Ну да, источник говорит сам за себя ;-)))

rjaan ★★
()
Ответ на: комментарий от rjaan

> А что такое «символьные вычисления» в алгебре? Расскажите не знающему человеку?

Любые преобразования любого выражения по заданной схеме.

Насколько мне известно, что символьные вычисления применимы только в программировании

А что такое, по твоему, программирование?

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

Алгебра только о символьных преобразованиях и знает. Никаких других там нет. Что такое, по твоему, алгебра?

Ну да, источник говорит сам за себя ;-)))

Никогда не читай дурацкие русские источники. Есть отличная статья в англоязычной википедии.

anonymous
()
Ответ на: комментарий от anonymous

> Никакой дурацкой унификации в рантайме.

Ну т.е. что такое унификация вы тоже не понимаете, но при это требуете от меня определение алгебры? Наверное тоже не знаете, и хотите что бы я вам рассказал?

Ты же не читаешь то, что тебе предлагают.


Я читаю код. Я читаю много кода. Я не знаю какое отношение ваши слова имеют к реальной практике программирования на Common Lisp.

Не жди к себе человеческого отношения.


Кажется его и не было никогда. Это же ЛОР, а не клюб любителей кавай...

archimag ★★★
()
Ответ на: комментарий от anonymous

> Это много кто придумывал. Мало кто делал это правильно. Особый шик - реализация match, которая не была бы враждебна к TCO.

Ну, это понятно, что придумывали. А что ты имеешь ввиду под враждебностью к TCO?

dave ★★★★★
()
Ответ на: комментарий от archimag

> Ну т.е. что такое унификация вы тоже не понимаете

Нет, это ты не понимаешь, что такое унификация, и лепишь её не к месту.

http://en.wikipedia.org/wiki/Unification

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

но при это требуете от меня определение алгебры? Наверное тоже не знаете, и хотите что бы я вам рассказал?

Что такое алгебра не знаешь конкретно ты. И я хочу, чтобы ты это понял, и взял свои глупые слова обратно.

Я не знаю какое отношение ваши слова имеют к реальной практике программирования на Common Lisp.

Ты слишком много размахиваешь словом «практика», но при этом настаиваешь на принятии твоего понимания теоретической терминологии. Смешной ты. Никогда не бывает кода просто так, самого по себе. За кодом всегда есть теория. Ты же считаешь, что тебе эту теорию понимать не надо, и лезешь сразу в код. Глупо. Не зная, откуда код взялся, ты не поймешь, почему он именно такой.

Кажется его и не было никогда.

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

anonymous
()
Ответ на: комментарий от dave

> А что ты имеешь ввиду под враждебностью к TCO?

Например, чтоб (defun myiter (f lst) (match lst with ((head . tail) (f head) (myiter tail)) (else nil)) был гарантированно хвостаторекурсивным, и мог бы сожрать список любого размера.

anonymous
()
Ответ на: комментарий от anonymous

>Отказ отвечать на вопросы - это хамство.

Почему ты такой убогий ? Отвечай и не хами.

anonymous
()
Ответ на: комментарий от anonymous

> Например, чтоб (defun myiter (f lst) (match lst with ((head . tail) (f head) (myiter tail)) (else nil)) был гарантированно хвостаторекурсивным, и мог бы сожрать список любого размера.

Если ограничаваться одними проверками (cond/if/case/ecase) и объявлением переменных (let), да оставлять остальной код как есть, то, наверное, проблем с TCO не должно возникнуть. Или паттерн-матчинг бывает каким-то более хитрым, где могут вылезти подобные грабли?

dave ★★★★★
()
Ответ на: комментарий от anonymous

> Ты слишком много размахиваешь словом «практика», но при этом

настаиваешь на принятии твоего понимания теоретической терминологии.


Даже не сколько практика, сколько код. Когда я читаю код, я понимаю, что человек вложил в него какую-то мысль и хотел сделать что-то реально полезное, а не просто потроллить, и я верю в его искренность. Если ваши утверждения настолько общеприняты и всем понятны, то они должна находить какое-то отражение в коде? Если же это не имеет отношения к коду, то зачем вы здесь это рассказываете? Может лучше поговорить о классической литературе, пользы будет больше?

archimag ★★★
()
Ответ на: комментарий от anonymous

> Алгебра только о символьных преобразованиях и знает. Никаких других там нет. Что такое, по твоему, алгебра?

Стоп, стоп, стоп пожалуйста не смешивайте два разных понятия «вычисления» и «преобразования», а то у Вас непонятно что получается толи «символьные вычисления», толи «символьные преобразования». Как мне кажется, две разные вещи и абсолютно неправильно употребляемые. ;-)))

К тому же, батенька, в алгебре символы применяются для обозначения неизвестного при решении уравнений и неравенств, а не как часть какого-то «символьного преобразования», о которых она ничего не знает, http://www.mathematics.ru/courses/algebra/design/index.htm .

Никогда не читай дурацкие русские источники. Есть отличная статья в англоязычной википедии.

Вот как раз там-то, что такое «символьные вычисления» написано-то правильно. :-)))

rjaan ★★
()

Сколько я видел программистов все используют C, C++, Java, Asm. На остальное плюются. Все эти ваши васики, питоны и прочая дрянь.

qsloqs ★★
()
Ответ на: комментарий от qsloqs

> Сколько я видел программистов все используют C, C++, Java, Asm. На остальное плюются. Все эти ваши васики, питоны и прочая дрянь.

Это от слишком большой и черезвычайной умности... :-))

rjaan ★★
()
Ответ на: комментарий от dave

> Или паттерн-матчинг бывает каким-то более хитрым, где могут вылезти подобные грабли?

Грабли в backtracking-е, когда один шаблон обломался, и надо вернуться проверять второй.

anonymous
()
Ответ на: комментарий от rjaan

> Стоп, стоп, стоп пожалуйста не смешивайте два разных понятия «вычисления» и «преобразования»

Вычисления - это частный случай преобразований.

http://en.wikipedia.org/wiki/Symbolic_computation

в алгебре символы применяются для обозначения неизвестного при решении уравнений и неравенств

Так и запишем - что такое алгебра ты не знаешь.

anonymous
()
Ответ на: комментарий от archimag

> Когда я читаю код, я понимаю, что человек вложил в него какую-то мысль и хотел сделать что-то реально полезное, а не просто потроллить, и я верю в его искренность.

Ну и как ты поймешь эту мысль, если не понимаешь той логики, из которой мысль выводится?

Если ваши утверждения настолько общеприняты и всем понятны, то они должна находить какое-то отражение в коде?

И находят. Любой компилятор (тот же SBCL) - это цепочка детерминистических символьных преобразований.

anonymous
()
Ответ на: комментарий от anonymous

> Ну и как ты поймешь эту мысль, если не понимаешь той логики,

из которой мысль выводится?


А я сообразительный.

Любой компилятор (тот же SBCL) - это цепочка

детерминистических символьных преобразований.



Опять абстрактные обсуждения на отвлечённую тему.

Во всем посту был только один пример кода, и тот уродский и тупой. Просто поразительно, что столь умные люди не могу ни сами код написать, ни чужой показать.

archimag ★★★
()
Ответ на: комментарий от archimag

> А я сообразительный.

Нет. Никоим образом. Ты неграмотный, а при неграмотности никакой IQ не спасёт - ты не сможешь распознать шаблон, которого не знаешь.

Опять абстрактные обсуждения на отвлечённую тему.

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

Во всем посту был только один пример кода, и тот уродский и тупой.

Это ты так о pattern matching отозвался? Изволь за базар ответить.

росто поразительно, что столь умные люди не могу ни сами код написать, ни чужой показать.

Какой код тебе нужно то, упёртенький? Ты запутался начисто. Ты сам не понимаешь, о чем говоришь. Код, который ложился бы в схему term rewriting? Я уже сказал - весь компилятор SBCL такой.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.