На работе мне иногда надо писать простенькие скрипты, для повседневных нужд. Я в последнее время решил, что буду их писать на Питоне или Руби, если возможно, чтобы таким образом потихоньку осваивать эти два языка.
Я думаю, меня читает некоторое количество людей, которые на этих языках (одном из или сходном или комбинации) пишут регулярно и с удовольствием. Поэтому хочу спросить:
1. Почему ваш любимый язык такой крутой? Т.е. чем он разительно отличается от других динамических языков (с C просьба не сравнивать, чем динамические языки отличаются от C я кагбэ в курсе) и намного их превосходит. Ссылки на библиотеку и модуль antigravity кошерны, но с оговорками - т.е. укажите, полагаете ли вы, что подобный модуль невозможен у конкурентов, или же просто что есть, тем и пользуемся?
2. Что следует читать, чтобы писать на этом языке как правильные пацаны, а не как лох? Подчеркну, меня интересует не мануал и не список синтаксических конструкций, а идиоматика - т.е. какие конструкции считаются правильными/эффективными/одобряемыми обществом, как принято делать разные вещи. Пример для питона.
Tags:
no subject
Почему:
1) Для перла есть CPAN (search.cpan.org), в котором уже сделаны практически все библиотеки. Даже чтобы кофе варить;
2) На перле можно всё. Хочется функционального программирования? Оно есть там. Хочется объектно-ориентированного программирования? Оно есть там, причём пятью разными способами на выбор (включая шедевральный Moose и Class::MOP). Там нет «писать как правильные пацаны», потому что твой стиль, если он выдержанный и красивый, автоматически будет считаться правильным (хотя, конечно, это не освобождает от соблюдения perldoc perlstyle).
3) Я люблю лаконичные языки. :)
no subject
1. Структуры данных в Перле сделаны кошмарно. До такой степени, что те же структуры часто проще на C писать - по крайней мере, не надо помнить, где какой префикс и какой формы скобки писать. C хотя бы не стыдится своих указателей :) в Перле же они вылезают в самых неожиданых местах, как из мешка, доверху набитого шилами.
Это, кстати, включает и ОО, которое - по крайней мере в built-in виде - ПМСМ представляет собой злобную насмешку над пользователями. Возможно, с тех пор многое изменилось, но это то, что я помню.
2. Чрезмерное пристрастие к синтаксическому сахару, которое превращается в натуральный синтаксический диабет. Это прикольно, что можно писать сложные программы в 1 строчку и что пользователям рекомендуют писать именно в таком стиле, но этот код совершенно невозможно reuse - он write-only!
no subject
no subject
no subject
public class C {
public static <K,V> Map<K,V> getHM() { return new HashMap<K,V>();}
}
(или что-то в этом духе)
no subject
no subject