February 2026

S M T W T F S
1234567
891011121314
15161718192021
22232425262728

Style Credit

Expand Cut Tags

No cut tags
Friday, February 12th, 2010 12:13 am

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

1. Почему ваш любимый язык такой крутой? Т.е. чем он разительно отличается от других динамических языков (с C просьба не сравнивать, чем динамические языки отличаются от C я кагбэ в курсе) и намного их превосходит. Ссылки на библиотеку и модуль antigravity кошерны, но с оговорками - т.е. укажите, полагаете ли вы, что подобный модуль невозможен у конкурентов, или же просто что есть, тем и пользуемся?

2. Что следует читать, чтобы писать на этом языке как правильные пацаны, а не как лох? Подчеркну, меня интересует не мануал и не список синтаксических конструкций, а идиоматика - т.е. какие конструкции считаются правильными/эффективными/одобряемыми обществом, как принято делать разные вещи. Пример для питона.

Friday, February 12th, 2010 10:46 am (UTC)
Самый крутой язык для скриптов — Perl. No kidding.

Почему:

1) Для перла есть CPAN (search.cpan.org), в котором уже сделаны практически все библиотеки. Даже чтобы кофе варить;

2) На перле можно всё. Хочется функционального программирования? Оно есть там. Хочется объектно-ориентированного программирования? Оно есть там, причём пятью разными способами на выбор (включая шедевральный Moose и Class::MOP). Там нет «писать как правильные пацаны», потому что твой стиль, если он выдержанный и красивый, автоматически будет считаться правильным (хотя, конечно, это не освобождает от соблюдения perldoc perlstyle).

3) Я люблю лаконичные языки. :)
Friday, February 12th, 2010 06:45 pm (UTC)
С тех пор многое изменилось. :) В перле сейчас благодаря Moose одна из лучших систем OOP в природе. Что до сахара — любители отсутствия синтаксического сахара пишут на джаве, где всё ручками. Но кто бы знал, как мне надоело писать Map<Integer, String> myMap = new HashMap<Integer, String>(), когда во всех нормальных языках есть type inference. Я уж не говорю о геттерах и сеттерах.
Friday, February 12th, 2010 11:11 pm (UTC)
пользуйте синтаксический инсулин:

public class C {
public static <K,V> Map<K,V> getHM() { return new HashMap<K,V>();}
}

(или что-то в этом духе)

Sunday, February 14th, 2010 04:40 pm (UTC)
Я таки могу читать свой код на перле через полгода после его написания. Потому что я опытный тёмный ситх, и блюду perlstyle. :)