Размышления о программизме
Apr. 6th, 2007 03:46 pm
Сейчас буду сильно неоригинален и скажу: никак не могу решить, какой язык программирования изучить. Потому что ведь надо же вроде какой-то изучить. По работе больше всего нужен Python. Уделил ему час - всё понятно, чего там изучать неизвестно. Отступления вместо скобок раздражают.
Посмотрел Ruby, какой-то сильно популярный язык в последнее время. Изучать его я бы стал только по одной причине - уж больно хорош у них tutorial. Но кроме этого, чем он отличается от Пайтона тоже не совсем ясно.
Причём поклонники каждого из языков говорят, что в этом языке, наконец, удалось воплотить самый ясный синтаксис без излишеств и программы читаются как романы какие-то просто.
А я вот думаю, что всё это примеры "умножения сущностей без необходимости". Поэтому всё это изучать совершенно не хочется.
И, кстати, нашёлся всё-таки язык, который мне очень понравился и который как-то совсем мало кем замечен - Erlang. Я думаю, многих пугает тот факт, что его придумал Ericsson для каких-то телефонных систем. Но вот, однако же, и Forth тоже придумали для управления телескопами, и ничего.
В общем, я почитал немного книжку про Erlang и тут же захотелось на нём программировать. Потому что это просто какой-то параллельный и распределённый Пролог, а это, я вам скажу, уже кое-что!
В общем, если кто-то в таких же сомнениях, то очень рекомендую Erlang.
no subject
Date: 2007-04-06 05:57 pm (UTC)Я бы тут наверное уточнил, что, по-моему, самыми низкоуровневыми примитивами должны быть что-то вроде mutex'ов и condvar'ов как в pthreads, выше -- примитивы для асинхронного обмена сообщения (message'и, mailbox'ы), а сверху какой-нибудь RPC.
Собственно, я сам всегда так стараюсь системы строить.
Но теперь интересно было бы посмотреть на concurency model с continuation. Из мейнстримовых языков continuation'ы вроде есть в джаваскрипте, может надо попробовать.
Уже в Occam была сходная система, только там уж больно много параллелизма было.
Я Occam не знаю