metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2012-11-29 10:20 am
Entry tags:

"Читать код, не зная языка"

Основной критерий выбора технологий программирования: "Чтобы вас можно было заменить на васю, не знающего языка и он мог прочесть код": http://ugenk.livejournal.com/188023.html

[identity profile] ugenk.livejournal.com 2012-11-29 08:55 am (UTC)(link)
awk, sed, bash
python
очень отлично обрабатывают текст

[identity profile] metaclass.livejournal.com 2012-11-29 09:08 am (UTC)(link)
Ты понимаешь, что из этого языком можно считать только питон, а остальное - дичайшего образца рукожопие, которое поддерживаемо даже хуже хаскеля с перлом?

[identity profile] ugenk.livejournal.com 2012-11-29 09:10 am (UTC)(link)
для задачи "обработать текст" оно подходит лучше.

[identity profile] metaclass.livejournal.com 2012-11-29 09:21 am (UTC)(link)
Однострочники да. В целом, не очень гуманно.

[identity profile] enternet.livejournal.com 2012-11-29 09:26 am (UTC)(link)
Обработка текста - это задача писателя.

[identity profile] avnik.livejournal.com 2012-11-29 02:58 pm (UTC)(link)
Берете питон, nltk и обрабатываете

[identity profile] enternet.livejournal.com 2012-11-29 03:06 pm (UTC)(link)
Это как вообще понимать?
У разработчика ПО в принципе не может такой быть такой задачи как обработка текста. Это работа писателя, верстальщика, корректора, редактора и т.д. Коим боком тут разработчик ПО вообще?

[identity profile] avnik.livejournal.com 2012-11-29 03:17 pm (UTC)(link)
индексация (для поиска, каталогизации по тегам, etc)
(де)синонимизация
Детект всякого спама типа "заходите на сайт помойка ком" (дада прямо так, русскими буквами)

Я вот в данный момент пытаюсь накорябать что-то для вычленения в фидах конструкций "ролик оппозиции будет по $(этому урлу) через час" (ну так, в порядке иллюстраций к нлтк)

[identity profile] enternet.livejournal.com 2012-11-29 03:27 pm (UTC)(link)
Так это узкоспециализированный анализ, а не "обработка". "awk, sed, bash" с которых начиналась ветка тут не помощники.

[identity profile] avnik.livejournal.com 2012-11-29 03:34 pm (UTC)(link)
А вот где кончается обработка и начинается анализ? )

[identity profile] enternet.livejournal.com 2012-11-29 03:36 pm (UTC)(link)
Хороший вопрос. Я всегда полагал, что "обработать" - значит приложить к объекту некоторые усилия, которые изменят объект.

[identity profile] eternal-leave.livejournal.com 2012-11-29 03:42 pm (UTC)(link)
Речь идет не про тот текст, который в ворде

[identity profile] http://users.livejournal.com/_slw/ 2012-11-29 10:16 am (UTC)(link)
на sed есть тетрис.

[identity profile] metaclass.livejournal.com 2012-11-29 10:36 am (UTC)(link)
Ну, интерпретаторы befunge на брейнфаке тоже наверно бывают :)

[identity profile] nealar.livejournal.com 2012-11-29 11:28 am (UTC)(link)
Был пример у кого-то в комментах, на тему того, что однострочник на awk гораздо понятней, чем на perl. Причём, не факториалы, а из жизненной задачи выскочило, админской. А многострочники лучше вообще на write-only языках не пейсать!

[identity profile] besm6.livejournal.com 2012-11-29 09:51 am (UTC)(link)
awk и sed еще страшнее перла по синтаксису, а их комбинация с шеллом, особенно с bash, страдает как минимум в части обнаружения, не говоря уже об обработке, ошибок. И главное, этот комплекс довольно плохо справляется с частью "сводится к" тексту. Готовый текст - да, можно, но на перле как-то проще.

sed'ом я, кстати, часто пользуюсь там, где он лаконичнее перла. awk забросил, освоив perl. И да, конечно, zsh, а не bash. У баша тараканы.

python же не тянет по параметру "лаконично", и как следствие, "быстро". Хотя да, тоже можно. Рассчитанные на долгую жизнь скрипты такой обработки я бы и писал на нем... если бы не одна засада. Почему-то, не могу понять, почему, все виденные мной программы на питоне, включая мной же и написанные, страдают внезапной ненадежностью на ровном месте. Не то чтобы она совсем не работает, зачастую повторный запуск помогает, но вот этот странный результат... Похоже не на проблемы рантайма, а на проблемы именно программистов. Но настолько тотальные, что приходится эмпирически констатировать проблему языка.

[identity profile] norguhtar.livejournal.com 2012-11-29 10:17 am (UTC)(link)

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

Пробелы и табы? :]

[identity profile] tzirechnoy.livejournal.com 2012-11-29 12:42 pm (UTC)(link)
Скорее исключения -- которые вроде как редки, но обязательны. Адская смесь.

[identity profile] besm6.livejournal.com 2012-11-29 01:10 pm (UTC)(link)
Не исключу, но вряд ли. Своё, во всяком случае, ломалось уже после починки пробелов и табов :)

[identity profile] avnik.livejournal.com 2012-11-29 03:02 pm (UTC)(link)
Не ну бывает.
У меня с рубе вот не складвается, вроде не плохой язык -- а в моих руках -- как петон у айседа.
И питон таки достаточно лаконичен.