LINUX.ORG.RU
 
jtootf

Вышел Qi II


0

0

Qi - функциональный язык программирования, реализованный поверх Common Lisp. Имеет опциональную статическую систему типов, основанную на секвенциальном исчислении, и общее направление на логическое программирование. Qi II имеет полную обратную совместимость с Qi

Нововведения Qi II:

  • Новая реализация - Qi II был переписан с нуля
  • Новая лицензия - GPL заменена двойной лицензией, позволяющей как Open Source, так и закрытое коммерческое использование
  • Типобезопасное ленивое вычисление по требованию
  • Новый компилятор с 4 уровнями оптимизации
  • Улучшена интеграция с CL
  • Работает под LispWorks
  • Некоторые конструкции в Qi II сделаны полиадическими
  • Улучшена связь с Prolog
  • Замыкания по правилам (rule closures)
  • Улучшена обработка зависимых типов

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

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

СКАЖИ СВОЕМУ КОМПЬЮТЕРУ, ЧТОБЫ ЗАПЕР ДВЕРЬ

любительская автоматизация; устройство с открытой прошивкой
исходные тексты всех программ, открытые библиотеки
http://www.unicontrollers.com/products/unc01x

[#]  
Werehuman

Re: Вышел Qi II

Совмещать лисп и пролог - имхо извращение.

** ()
[#] Ответ на: Re: Вышел Qi II от Werehuman 02.12.2008 21:03:44  

Re: Вышел Qi II

> Совмещать лисп и пролог - имхо извращение.

программирование, вообще, то ещё извращение

* ()
[#] Ответ на: Re: Вышел Qi II от Crocodille 02.12.2008 21:11:00  

Re: Вышел Qi II

4-х проходной компилер !

***** ()
[#]  
Sherak

Re: Вышел Qi II

Очередной недоязычок?

*# ()
[#]  
alex4

Re: Вышел Qi II

эх, знать бы, что такое секвенциальное исчисление и полиадические конструкции

()
[#]  
ferhiord

Re: Вышел Qi II

А для чего оно?

** ()
[#] Ответ на: Re: Вышел Qi II от alex4 02.12.2008 22:08:38  

Re: Вышел Qi II

> эх, знать бы, что такое секвенциальное исчисление и полиадические конструкции

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

* ()
[#]  
GFORGX

Re: Вышел Qi II

Коммерческий язык - это верх лицензиефетишизма...

**# ()
[#] Ответ на: Re: Вышел Qi II от Werehuman 02.12.2008 21:03:44  

Re: Вышел Qi II

> Совмещать лисп и пролог - имхо извращение.

А почему? Вполне логично, ИМХО. Тем более предикатный перебор с возвратами можно реализовать поврех лиспу в виде обыкновенных функций.

()
[#] Ответ на: Re: Вышел Qi II от alex4 02.12.2008 22:08:38  
nnm

Re: Вышел Qi II

>эх, знать бы, что такое секвенциальное исчисление и полиадические конструкции

+1

# ()
[#] Ответ на: Re: Вышел Qi II от nnm 02.12.2008 23:06:04  

Re: Вышел Qi II

>эх, знать бы, что такое секвенциальное исчисление и полиадические конструкции

Вот они - быдлоимперативщики :) СиЖабу осилили, а русский язык - нет... Марш в школу. http://slovari.yandex.ru/dict/bse/article/00069/85200.htm

Полиадический - суть многоместный.

Неучи.

anonymous ()
[#]  
Gharik

Re: Вышел Qi II

Оно умеет компилироваться в бинарный код?

# ()
[#]  

Re: Вышел Qi II

Это очередной 100%-pure academic language, не предназначенный для практических задач. Как, собственно, и сами LISP и Prolog.

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Gharik 03.12.2008 0:15:47  

Re: Вышел Qi II

Оно умеет компилироваться в бинарный код? Оптимизирующая надстройка над лиспом. Юудет лисп компиляться - будет и Qi тоже... Пролог - 89 строк кода, оптимизатор, ооо, аж 12 кило. Генератора машкода не узрел :) /оно и понятно/

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Gharik 03.12.2008 0:15:47  
mv

Re: Вышел Qi II

> Оно умеет компилироваться в бинарный код?

Это надстройка на Common Lisp.

***** ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 0:25:59  

Re: Вышел Qi II

>Это очередной 100%-pure academic language Не гони волну, люди волноваться начнут.

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

anonymous ()
[#] Ответ на: Re: Вышел Qi II от anonymous 02.12.2008 23:49:03  
mv

Re: Вышел Qi II

> а русский язык - нет...

Какое из слов "секвенциальный" и "полиадический" - славянское? ;)

***** ()
[#] Ответ на: Re: Вышел Qi II от mv 03.12.2008 0:34:53  

Re: Вышел Qi II

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

anonymous ()
[#]  

Re: Вышел Qi II

странно, надстройка, скажем, rdnzl - просто библотека, а qi - по сути та же либа, но уже именуется яп? ужос :)

anonymous ()
[#]  
Eugeny_Balakhonov

Re: Вышел Qi II

Эхма, так и не понял прелестей Lisp... Похоже, плохо смотрел или не было подходящих задач.

Вот скажите темному, для какого рода задач лучше всего подходит Lisp? ИИ я не занимаюсь

** ()
[#] Ответ на: Re: Вышел Qi II от Eugeny_Balakhonov 03.12.2008 2:10:44  

Re: Вышел Qi II

формочки рисовать - не подходит однозначно :) /скажем так - преимуществ перед моносижабой не будет особо заметно/

Лопатитть данные в Р/О СУБД - можно сложная логика - можно решения можно описать очень компактно. Короче, чем громоздить аналогичное всякими там Bridge/Visitor/Factory паттернами.

работа с битами (картинок, архивов) - ну, не очень. Вообще low-level не очень. Очень, как правило, high-level - для чего он, собсно, и задумывался :)

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Eugeny_Balakhonov 03.12.2008 2:10:44  

Re: Вышел Qi II

Единственное, для чего предназначен Лисп - написание DSL (Domain-Specific Languages).

Это даёт основания адептам Лисп утверждать, что Лисп опосредованно годится для абсолютно любого рода задач - путём реализации соответствующего DSL на Лисп, и дальнейшего писания уже на DSL. Этот подход имеет свои плюсы и минусы. Среди плюсов - то, что получится язык, конкретно заточенный под задачу. Среди минусов - то, что необходимо реализовать и отладить собственно язык плюс опциональную обвязку из дебаггера, профайлера, системы юнит-тестов, системы кододокументирования и прочих компонентов development environment.

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

Такой подход сами лисперы считают "элитным", и относят себя к элите IT, проявляя при этом порядочный снобизм и относясь ко всем остальным весьма пренебрежительно. (Я не сомневаюсь, что Вам удастся это лично пронаблюдать в данном треде, когда сюда подтянутся представители так называемой элиты.)

Но не пытайтесь реализовывать алгоритмы на самом Лисп, он не предназначен для этого. Недавний прецедент с примитивным вычислительным бенчмаркингом LISP vs. C наглядно это продемонстрировал.

Вы можете многое узнать о Лисп из недавнего треда "Создатель Python разочарован в Scala" (http://www.linux.org.ru/view-message.jsp?msgid=3271707), начиная где-то с седьмой страницы. Там же Вы найдёте и ссылку на топики с бенчмаркингом.

anonymous ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 3:22:36  

Re: Вышел Qi II

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

anonymous ()
[#] Ответ на: Re: Вышел Qi II от anonymous 02.12.2008 23:49:03  

Re: Вышел Qi II

"суть" - множественная форма слова "есть". неуч.

anonymous ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 0:34:30  

Re: Вышел Qi II

>>>Это очередной 100%-pure academic language Не гони волну, люди волноваться начнут.

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

через 30 лет кодировать будут только роботы :)

anonymous ()
[#]  
Sun-ch

Re: Вышел Qi II

>статическую систему типов, основанную на секвенциальном исчислении

Это прорыв. Это язык 7 поколения, (всякие пистоны и явки - 4). Эх кусаю локти теперь, говорили мне умные люди, "Ботай лисп", у таких людей можно было поучиться - элита отечественной информатики, а все казалось не программирование это, а математика. Вот С - это другое дело, деньги были нужны, гавном ведь занимался - драйвера клепал под виндовз за питьсот баксов.

# ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 3:22:36  
Sun-ch

Re: Вышел Qi II

>Единственное, для чего предназначен Лисп - написание DSL (Domain-Specific Languages).

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

# ()
[#] Ответ на: Re: Вышел Qi II от Sun-ch 03.12.2008 12:32:49  
r

Re: Вышел Qi II

>А что дядя скажет, про "адаптивное обучение роботов", или управление беспилотными вертолетами в любых погодных условиях, или про обработку сигналов с радиолокаторов в реальном времени?

Дядя скажет что лисп сосет и подтвердит это графиками с красной и зеленой линией.

***** ()
[#]  
Bioreactor

Re: Вышел Qi II

А зачем нужен этот полиадический язык программирования? Чем Qi II лучше Джавы?

*** ()
[#] Ответ на: Re: Вышел Qi II от r 03.12.2008 12:59:36  
Sun-ch

Re: Вышел Qi II

Похоже сегодня флейма не будет. Наверное не все готовы обсуждать секвенциальную теорию Кантора-Чёрча-Генцена.

# ()
[#] Ответ на: Re: Вышел Qi II от Sun-ch 03.12.2008 11:50:12  

Re: Вышел Qi II

> Это язык 7 поколения, (всякие пистоны и явки - 4).

А где про это можно почитать? (желательно с примерами к какому уровню относятся разные языки и почему)

anonymous ()
[#]  

Re: Вышел Qi II

Беспонтовый язык программирования. На самом деле, очень плохой язык программирования. Я думал намного лучше будет, намного лучше будет все и очень плохой язык программирования, просто очень плохой язык программирования. Я думал намного лучше все будет. Сколько раз программировал! Было намного лучше. Ну на этот раз как-то не удалось. Во-первых народу мало, да и язык программирования не очень.

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Sun-ch 03.12.2008 12:32:49  

Re: Вышел Qi II

> что дядя скажет ... про обработку сигналов с радиолокаторов в реальном времени?

Расскажи мне об этом. Я хочу посмеяться.

***** ()
[#] Ответ на: Re: Вышел Qi II от Sun-ch 03.12.2008 12:32:49  
anonymous_num_0

Re: Вышел Qi II

> или про обработку сигналов с радиолокаторов в реальном времени?

Обрабатывается ВизуалБейсик, видел собственными глазами. И все это крутиться под win98, ибо система реального времени. Да, все с гуйком кривоватеньким. Лисп? За те копейки, которые платят в госконторах, напыщенная элита не пойдет. А инженеру Вася Пупкину велено разработать "программный комплекс", он и разрабатывает, предварительно купив в магазине "бейсик для тупых".

Добро пожаловать в реальный мир, дядя.

()
[#] Ответ на: Re: Вышел Qi II от Sun-ch 03.12.2008 12:32:49  

Re: Вышел Qi II

>управление беспилотными вертолетами в любых погодных условиях
Круто, ветровлагозащищенный язык типа?

* ()
[#] Ответ на: Re: Вышел Qi II от Sun-ch 03.12.2008 11:50:12  

Re: Вышел Qi II

> Это прорыв. Это язык 7 поколения, (всякие пистоны и явки - 4).

дядь, ну откуда седьмой-то? 0GL были коды и ассемблеры, 1GL всякий лапшекод на фортране и си, 2GL -- структурный, 3GL -- ООП, 4GL -- те самые "DSL под задачу" , 5GL -- constraint programming и епонская ИИ программа. Откуда 7GL -то? И что случилось с 6GL?

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Sun-ch 03.12.2008 13:53:00  
r

Re: Вышел Qi II

>Похоже сегодня флейма не будет.

Он при ходит только по ночам. Надо подождать.

> Наверное не все готовы обсуждать секвенциальную теорию Кантора-Чёрча-Генцена.


Секвенциальная теория легко опровергается экспериментальными данными на массивах в памяти полученные на тестах с подразумеваемой методикой, с последующей демонстрацией презентации в виде графиков двух цветов демонстрирующих расходящие линии.

***** ()
[#] Ответ на: Re: Вышел Qi II от anonymous_num_0 03.12.2008 14:35:05  

Re: Вышел Qi II

> Обрабатывается ВизуалБейсик, видел собственными глазами. И все это крутиться под win98, ибо система реального времени. Да, все с гуйком кривоватеньким. Лисп?

не беда, видел ECL встраиваемый в Visual Basic-приложение. Вполне хтоничненько.

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Bioreactor 03.12.2008 13:50:41  

Re: Вышел Qi II

Bioreactor пейсал: полиадический язык программирования

лол

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Werehuman 02.12.2008 21:03:44  
Sectoid

Re: Вышел Qi II

>Совмещать лисп и пролог - имхо извращение.

Это Вы зря. Посмотрите, например, на cl-unification (http://www.cliki.net/cl-unification)

**** ()
[#]  

Re: Вышел Qi II

> секвенциальном исчислении

> Типобезопасное ленивое вычисление по требованию

Буквы вроде русские, но язык явно другой.

anonymous ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 0:34:30  

Re: Вышел Qi II

> Лет через 30 его идеи как обычно проникнут в среду индусов от сидонетжабы. И будут они счастливы, и будут ругать очередной pure-academic язык и не понимать своего счастья :)

Надеюсь лет через 30 мелочи вроде нового pure academic языка меня волновать не будут.

** ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 17:29:36  
jtootf

Re: Вышел Qi II

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

>Буквы вроде русские, но язык явно другой.

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

***** ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 16:06:17  
Bioreactor

Re: Вышел Qi II

"Замыкания по правилам (rule closures)" (с)

А что такое замыкания? Какие из них по правилам, а какие не по правилам?

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

И еще один вопрос, какую рекурсию (как завещал нам сам Профессор) поддерживает сей труЪ полиадический язык программирования Qi II - хвостовую или подхвостовую?

*** ()
[#] Ответ на: Re: Вышел Qi II от Bioreactor 03.12.2008 18:13:43  
jtootf

Re: Вышел Qi II

>А что такое замыкания? Какие из них по правилам, а какие не по правилам? 

Rule Closures

Unlike Qi I, Qi II allows you to embed sequent rules
within functions, evaluating them to closures. These
rule closures are type checked and are permeable to
having their variables lexically bound from outside
the scope of the rule itself. These devices enable
the student of computational logic to effortlessly
code complex logical systems of all descriptions. Thus
the rule

let PTerm/X (replace-by X Term P)
PTerm/X, (all X P) >> Q;
____________________
(all X P) >> Q;

allows universally quantified assumptions to be 
instantiated to new premises. This rule can be 
embedded into a Qi II function called all-left which 
does precisely this job. The rule is turned into a 
closure by the rule function which is then applied to 
the problem (list of sequents).

(define all-left
{term --> [sequent] --> [sequent]}
Term S -> ((rule let PTerm/X (replace-by X Term P)
PTerm/X, (all X P) >> Q;
____________________
(all X P) >> Q;) S))

FPQi devotes a hundred pages to the exploration of this 
powerful construction.

переводи сам, чай не маленький

***** ()
[#] Ответ на: Re: Вышел Qi II от Bioreactor 03.12.2008 18:13:43  

Re: Вышел Qi II

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

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

anonymous ()
[#] Ответ на: Re: Вышел Qi II от Bioreactor 03.12.2008 18:13:43  

Re: Вышел Qi II

> "Замыкания по правилам (rule closures)" (с)

может быть, "замыкания правил"? Ну как там канторовы множества с замыканиями, супремумами и инфинумами. В математическом смысле: "какой ты компактный, то есть, замкнутый и ограниченный"(c) :) -- в смысле, "транзитивное замыкание операции, это .. итд итп".

anonymous ()
[#] Ответ на: Re: Вышел Qi II от jtootf 03.12.2008 18:19:40  
Bioreactor

Re: Вышел Qi II

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

*** ()
[#] Ответ на: Re: Вышел Qi II от anonymous 03.12.2008 18:23:29  
Bioreactor

Re: Вышел Qi II

Ну это простые смертные считают, что "замыкания правил". А Вы-таки новость прочитайте - цитаточка-то оттуда.

Функциональные язычки программирования - это дело доброе, они ЧСВ "до больше 9000" (с) повышают, даже если их адепты пишут "замыкания по правилам" вместо "замыкания правил". "Рунглиш" (the Runglish language) рулит!

*** ()