LINUX.ORG.RU

Создатель Qi сворачивает проект

 , ,


0

0

В письме в рассылку Qilang Маркер Тарвер, создатель Qi, написал:

Mark Tarver:

Через месяц я уезжаю в Индию, на этот раз на более длительный срок; среди прочего это означает окончание моей работы над Qi. На определённом этапе просто приходится признать, что овчинка не стоит выделки; как бы там ни было, это было весело, и я ни о чём не жалею. Работа над Qi была начата 20 лет назад, когда я ещё был совсем другим человеком и работал в университете; книга о Qi II стала переломным моментом. Мне нужно двигаться дальше. Первого сентября меня здесь уже не будет

Среди прочего, Тарвер отмечает, что не желает оставаться в программировании из-за возможных политических и образовательных склок вокруг ПО и его использования; комментируя LISP (и возможное дальнейшее развитие Qi сообществом) считает, что «CL это путь в никуда», а «Clojure, Python или Ruby могут стать лучшими платформами для Qi»

Обсуждение на LtU: http://lambda-the-ultimate.org/node/3537

Статья Тарвера «О Развитии LISP»: http://www.lambdassociates.org/blog/nextlisp(1).htm

Статья Тарвера «О Будущем Open Source»: http://www.lambdassociates.org/blog/prolegomena(1).htm

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

★★★★★

Проверено: boombick ()

Ответ на: комментарий от yet_another_lor_account

> язык для домохозяек

> для не программистов

Это о Хаскелле? Тогда +50 к понтам.

tailgunner ★★★★★
()

Прочитал сначала как "Создатель Qt сворачивает проект". Уже начал радоваться, чуть было за пивом не пошел. Весь вечер теперь испорчен

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

>кроме как яйцеголовым ксеноцефалам, функцианальные маргинальные язычки программирования не нужны.

Профессор кстати не был фанатом ФП и любил лисп за то что в нем можно быстро лабать макросы. В принципе писать макросы на тьюринг-полном языке можно и в D.

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

>> В принципе писать макросы на тьюринг-полном языке можно и в D.

> <толсто>...да и в Си++ тоже </толсто>

Нет, нельзя. Произвольную конструкцию темплейтами сгенерировать невозможно.

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

> Произвольную конструкцию темплейтами сгенерировать невозможно.

Ну сгенери мне в D конструкцию match из Ocaml.

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

> А что такое Qi?

Вот-вот и я не знал, что такое Qi, пока эта новость не появилась на главное.

sign
()

Видимо ему стали слишком часто говорить что в его проекте нет практического смысла

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

>> Произвольную конструкцию темплейтами сгенерировать невозможно.

>Ну сгенери мне в D конструкцию match из Ocaml.

Почему невозможно реализовать match если можно даже в complile-time отрендерить 3D сцену записывая результат в бинарь?

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

>любил лисп за то что в нем можно быстро лабать макросы.

по части макросов тот же FASM заруливает практически любой HLL

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

>>любил лисп за то что в нем можно быстро лабать макросы.

>по части макросов тот же FASM заруливает практически любой HLL

Это вообще о чем? Услышал слово "макрос" ?

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

> Почему невозможно реализовать match

Да возможно, наверное. Тьюринг-полнота, хуле.

> если можно даже в complile-time отрендерить 3D сцену записывая результат в бинарь?

Вроде язык шаблонов Тьюринг-полный? Так что и на нем можно рендерить сцены.

Я это к тому, что _принципиальная возможность_ сделать что-нибудь - это не особо интересно. Макросы тоже тоже имеют свои ограничения по применимости - ты довольно быстро обнаружишь, что пишешь свой собственный компилятор, только ограниченный и кривоватый.

tailgunner ★★★★★
()

> В письме в рассылку Qilang Маркер Тарвер, создатель Qi, написал:

Вообще-то мужика зовут Марк Тарвер (Mark Tarver).

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

>> если можно даже в complile-time отрендерить 3D сцену записывая результат в бинарь?

>Вроде язык шаблонов Тьюринг-полный? Так что и на нем можно рендерить сцены.

Еще раз: произвольный код шаблонами написать нельзя. Ты вообще понимаешь что такое "произвольный код"? Это когда макрос собрал кусок кода *конкатенируя стринги*. Имея при этом в своем распоряжении полный набор средств доступных в нормальном императивном или декларативном языке - переменные, циклы, рекурсии, вложенные вспомагательные макросы, коллекции и пр.

Absurd ★★★
()

Qi фигня. Он понял, что большими усилиями к шестидесяти годам родил большую бяку, которая ни кому не нужна и свалил всё на ненужность лиспов. Лиспы живее всех живых, а вот языки поверх них это попытка стать богом будучи червяком. Одним словом, ниасилил и подался в монахи.

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

> Еще раз: произвольный код шаблонами написать нельзя.

Еще раз: Тьюринг-полнота гарантирует реализацию любого алгоритма.

> Ты вообще понимаешь что такое "произвольный код"? Это когда макрос собрал кусок кода *конкатенируя стринги*.

Я вообще не понимаю, почему на это так фапают.

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

> Ты вообще понимаешь что такое "произвольный код"? Это когда макрос собрал кусок кода *конкатенируя стринги*. Имея при этом в своем распоряжении полный набор средств доступных в нормальном императивном или декларативном языке - переменные, циклы, рекурсии, вложенные вспомагательные макросы, коллекции и пр.

Так сразу бы и сказал, что тебе кодогенератор на перле нужен :D

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

>> Еще раз: произвольный код шаблонами написать нельзя.

> Еще раз: Тьюринг-полнота гарантирует реализацию любого алгоритма.


Это разные задачи. Одно дело - узнать, каким будет финальное состояние машины тюринга. Другое дело - высрать строго определенную последовательность из N байт.

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

>> Еще раз: произвольный код шаблонами написать нельзя.

>Еще раз: Тьюринг-полнота гарантирует реализацию любого алгоритма.

Задача Луговского: напиши LALR парсер шаблонами С++. Решение на Лиспе можно найти в гугле.

>> Ты вообще понимаешь что такое "произвольный код"? Это когда макрос собрал кусок кода *конкатенируя стринги*.

>Я вообще не понимаю, почему на это так фапают.

Потому что это тупо и практично.

Absurd ★★★
()

лисп нужен.

индокришнаиты не нужны.

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

> Задача Луговского: напиши LALR парсер шаблонами С++.

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

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

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

s/данному LALR языку/произвольному LALR языку/

халяве - нет!

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

>> Я вообще не понимаю, почему на это так фапают.

> Потому что это тупо и практично.

Не знаю, специально ты или нет, но это лучшая шутка, которую я слышал за последние дни %)

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

>Вообще-то мужика зовут Марк Тарвер (Mark Tarver).

Маркером его назвали в заметке на LtU; поскольку сокращать подобное имя до Марка вполне логично, я не стал исправлять. с биографией не сверялся, каюсь

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

> У него еще есть шанс наесться грибов и впасть в делириум :) За файл тот - благодарю.

От грибов никто еще не впал в делириум, просто потому что грибы это тебе не холинолитики, и состояние под ними можно скорее приписать к "искусственной шизофрении", как ее модно называть, а точнее к онейроидной дезориентации. Я бы ничего не написал, так как это не форум по медицине, а все-таки ЛОР. Но хочешь кидаться умными словами - выучи сперва их значение. Без обид, ничего личного, просто до ужаса устал от грибы-трава-веществашуточек, которые скатились на уровень your mom jokes. Не все нарки несут чушь, и не все, кто несет чушь - нарки.

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

>От грибов никто еще не впал в делириум, просто потому что грибы это тебе не холинолитики, и состояние под ними можно скорее приписать к "искусственной шизофрении"

Есть люди у которых слабая психика. Такие вещи как 2cb, dob, lsd25, lsa, псилоцибин - могут им на самом деле очень сильно навредить. Я не просто так говорю. У меня подруга такая. Т.е. я например в этом состоянии вполне понимаю что это кончится, когда-нибудь, и держусь, даже если сигма плато и очень тяжело для разума. А у нее от всего одного слабенького трипа мдма+2ci(последнго было ваще децл, но хватило для того что бы все стало живым, ну ты понимаешь, наверное) психика изменилась невозвратно, т.е. с ума она не сошла, но стала пугливой очень, истеричной местами, и ваще, дико бояться этого состояния. Т.е. когда заходит об этом речь ее физически начинает трясти и ей очень плохо. Типичная психологическая травма. А если бы это было 5мг доба в/м ? т.е. я о том что не все могут нести тяжелый груз Знания.

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

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

Кто нибудь может в кратце объяснить в чем преимущество функциональных языков программирования? Какие у них плюсы/минусы?

Davinel
()

>CL это путь в никуда", а "Clojure, Python или Ruby могут стать лучшими платформами для Qi"

так ему прямиком на ЛОР надо! здесь ему будет чем заняться, и не скучно опять же

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

>Кто нибудь может в кратце объяснить в чем преимущество функциональных языков программирования? Какие у них плюсы/минусы?

это почти так же круто как С# и mono

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

> Не-а. Я спросил, как _он_ собирался это сделать (ну вдруг он дал наметки). А написать еще один компилятор для "чего-то вроде Питона" - это слишком очевидно.

Ок, понял)

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

>Кто нибудь может в кратце объяснить в чем преимущество функциональных языков программирования? Какие у них плюсы/минусы?

тут есть немного ссылок по теме:

http://community.livejournal.com/ru_declarative/85983.html

jtootf ★★★★★
() автор топика

Статья "О Будущем Open Source" любопытная. Люди из мира opensource все чаще и чаще начинают "трезветь".

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

Вкратце: преимущество ФЯП - использование при описании программы вариаций на тему лямбда-исчисления(-ий) и (или) "повышенная" декларативность.

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

+ Преимуществом указанное становится, лишь в случае если Вы понимаете, как с этим обращаться, да и вообще зачем оно надо.

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

>Без Проффессора мы тут не разберемся.

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

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

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

>>А чем он займется в Индии? Право интересно.

>не программированием


А сколько за это платят?

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

>А с джавой все идет по плану.

Када давинчи родят - все будет по плану. А пока только новые пропелеры на старые двигатели ставят.

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

>А M$ Research и INRIA сейчас работают над F# и на GHC c Ocaml'ом немного подзабили.

У него больная лицензия. Кастую под мону с нормальной.

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

> Статья "О Будущем Open Source" любопытная. Люди из мира opensource все чаще и чаще начинают "трезветь".

Не, просто очередной дядька спутал free software и free beer.

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

>Не, просто очередной дядька спутал free software и free beer.

Странный мужик: в идеях FOSS не шарит, а про open education хорошо написал.

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

> Еще раз: Тьюринг-полнота гарантирует реализацию любого алгоритма.

При условии, что входные данные алгоритма можно получить. А в плюсах, похоже, это не так.

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

Теперь рассмотрим:

// int one=1;

MATCH( list,
CASE(10, one, tail), std::cout<<one,
CASE(11), std::cout<<"bla-bla-bla"
);

В случае, если строчку int one=1; раскомментировать, то семантика должна измениться. А шаблоны об этом узнать не могут.

При этом, не исключено, что в плюсах имеется какое-то экзотическое правило, которое таки позволит узнать об этом.

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

> Еще раз: Тьюринг-полнота гарантирует реализацию любого алгоритма.

В случае ray-tracer-а -- да, его можно написать на плюсовых шаблонах :-)

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

> Потому что это тупо и практично.

А отладка получившейся кодосвалки - это такое особое мазахистское удовольствие, да? =)

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

Я имел в виду, что CASE(10,one,tail) должен самостоятельно *определять* переменную one, если она не определена. Более с++-но, но менее удобно будет потребовать, чтобы все эти переменные уже были описаны. Тогда константные переменные нужно будет матчить как есть, а неконстантным присваивать значения.

В таком случае, похоже, написать

const int one=1;
int other;
List* tail;

MATCH list
CASE(10,one,tail) while(tail->next){...}; std::cout<<one;
CASE(other,tail) std::cout<<other;
END

будет, похоже, уже реально.

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

* 144будет, похоже, уже реально, возможно с использованием расширений g++.

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

> И чем можно заниматься в такой убогой стране как Индия? На слонах кататься?

В лучших традициях Рокки — год и три месяца будет смотреть, как несчастные угнетаемые индийские дети страдают в гнёте The Microsoft™ Visual® Thing®. Затем взгляд его разгорится, расправит он плечи богатырские да молвит «Не любо мне сие!». Пойдёт в тренажерку^W библиотеку, где будет прокачивать скиллы семь дней да семь ночей, напишет Qi III да низвергнет The Microsoft™ Visual® Thing® в геенну пламенную.

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