Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет Yuriy Al. Shirokov ([info]yushi)
И тем не менее, отличаются, судя по тому, что домохозяйки не пишут перловых скриптов.

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

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

К этому, и к домохозяйкам. В очередной раз повторюсь: упрощать интерфейс имеет смысл ровно до тех пор, пока он не начинает скрывать существенные для пользователя свойства управляемого объекта. Unix shell в этом отношении — практически максимальное возможное упрощение, все более "дружественные" среды на самом деле не самодостаточны или предельно неудобны. Вы сами привели хороший пример с автомобилем — никто не жалуется, что приходится крутить руль и давить на педали вместо того, чтобы сообщить адрес назначения и предоставить машине делать всё остальное.

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

Как альтернатива шелл-скриптам, а также sed'у с awk — очень хорош.

С точки зрения ad hoc программирования, язык программирования должен существенно совпадать (по крайней мере, быть изоморфным) языку повседневных действий. Т.е., программа это то, что я итак делаю, только сохраненная и готовая к повторному использованию.

Я бы предположил, что в полноэкранной программе (гуевой или текстовой, не суть важно) такое вот ad hoc программирование должно начинаться от клавиатурных макросов. Т.е. сделал что-то, понравилось, получил это в виде программы (только все же уже не в терминах нажатых кнопок, а в терминах совершенных действий), обобщил - получилась програмка.


Между прочим, и это реализовано в нелюбимом вами Emacs.

Но Вы получили удовольствие, посетив этот сайт? Я лично получил.

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

Emacs мне лично кажется очень неудобным. И язык программирования у него, на мой взгляд, достаточно неудобный. Дело не в его функциональной природе, дело в том, что в нем 2 + 2 по-человечески не напишешь.

Я про Emacs могу сказать примерно то же, что Черчилль про демократию — это отвратительный текстовый редактор, но лучшего не существует.

А вот про Emacs Lisp вы странные вещи говорите. Emacs — это текстовый редактор. У вас часто внутри текстового редактора возникает потребность в сложении чисел? А для обработки текста Lisp предлагает очень естественный синтаксис (не говоря уже об огромном преимуществе единообразной записи всех операций).

Вообще, должен сказать, что как раз по красоте и понятности синтаксиса Lisp, особенно в инкарнации Scheme — один из самых удачных среди распространённых языков программирования. Сравните

#include <iostream>

using namespace std;

int main(int argc, char* argv[]) {
    cout << "Hello. world" << endl;
    return 0;
}

и

(display "Hello, world!\n")


(я готов привести и более сложные примеры).


(Читать комментарии)

Добавить комментарий:

Как:
(комментарий будет скрыт)
Identity URL: 
имя пользователя:    
Вы должны предварительно войти в LiveJournal.com
 
E-mail для ответов: 
Вы сможете оставлять комментарии, даже если не введете e-mail.
Но вы не сможете получать уведомления об ответах на ваши комментарии!
Внимание: на указанный адрес будет выслано подтверждение.
Имя пользователя:
Пароль:
Тема:
HTML нельзя использовать в теме сообщения
Сообщение:



Обратите внимание! Этот пользователь включил опцию сохранения IP-адресов пишущих комментарии к его дневнику.