LINUX.ORG.RU

[Лиспофлейм]Реализации common lisp и пакеты


0

0

Вот не пойму.

Вы хотите написать программу, использующую сторонние библиотеки в C, вы пишите

#include <foo.h> // препроцессор вставляет сдесь содержимое foo.h

В пистоне: import foo // Создается неймспейс foo, читается код из foo.py, все переменные/функции запихиваются в этот неймспейс.

В лиспе же вообще нет единой системы. Когда я сидел под дебианом в clisp'е там было что-то типа:

(require 'common-lisp-controller)
(common-lisp-controller:clc-require 'foo)

В sbcl для установки(!!) пакетов (вернее «систем», которые определяются с помощью defsystem) используется asdf-install:

(asdf-install 'foo)
(require 'foo)

Так вот вопрос: почему реализация берет на себя установку пакетов, контроль путей к пакетам итд.? Почему установку не доверить, например, пакетному менеджеру операционной системы?

Почему везде нельзя как в emacs (идеальный вариант):

(setq load-path (append load-path '(#p"/foo/bar" #p"/foo/buz")))
(require 'bar)
(require 'buz)

Или тупо (load «/foo/bar/buz»)?

Вопрос не совсем технический, поэтому в talks

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

В win95 никакой встроенной поделки не было. Бесплатный софт того времени, (который не был открытым) да и современный, требует серъёзного допиливания текста. Фактически обычный plain-text они синтезировать в голос не в состоянии. festival в этом плане приятно удивил. Качество оставляет желать лучшего, но ошибок не делает в отличие от закрытых конкурентов.

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

я о твоей непоследовательности, а не об том куда ты ткнул мышкой

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

> Фактически обычный plain-text они синтезировать в голос не в состоянии.

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

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