(no subject)
Nov. 24th, 2008 10:01 pmСобственно, возвращаясь к посту про настоящего программиста. Там в комментах
cmike высказал мнение, что Java - это такой нишевый язык.
Я задумался, и понял, что ниши для Java я не представляю. Возможно, сейчас не представляю - потому что уже есть C#.
Посему вопрос: какие задачи могут быть удачнее, чем на каком-либо другом языке, решены на чем-нибудь из списка: Java, Smalltalk, Haskell, Erlang? Меня устроит, если будет какой-то другой язык близкого класса, который это позволит сделать (кроме Java - там я хотел бы видеть четкие преимущества).
Желательно - чтобы с этими задачами было реально столкнуться на не сильно извилистом пути программиста (то есть если, чтобы к такой задаче подступиться, надо 15 лет учиться на микроэлектроника, то пример не канает).
Я задумался, и понял, что ниши для Java я не представляю. Возможно, сейчас не представляю - потому что уже есть C#.
Посему вопрос: какие задачи могут быть удачнее, чем на каком-либо другом языке, решены на чем-нибудь из списка: Java, Smalltalk, Haskell, Erlang? Меня устроит, если будет какой-то другой язык близкого класса, который это позволит сделать (кроме Java - там я хотел бы видеть четкие преимущества).
Желательно - чтобы с этими задачами было реально столкнуться на не сильно извилистом пути программиста (то есть если, чтобы к такой задаче подступиться, надо 15 лет учиться на микроэлектроника, то пример не канает).
no subject
Date: 2008-12-15 12:41 pm (UTC)Для меня Smalltalk -- это прежде всего язык экспериментальной разработки, exploratory programming. Т.е. я люблю решать на нём задачи вида "сделай то, не знаю, что".
Пример: вот хочу сделать необычную визуализацию для данных, лежащих в файле не вполне известного мне формата. Допустим, я знаю структуры, в которых лежат данные в файле, но не вполне понимаю семантику полей этих структур в пограничных случаях. И вот, я описываю эти структуры и пишу однострочник, который считывает содержимое файла. Дальше некоторое время лазаю по нему инспектором, иногда делая выборки, свертки и проч.
Потом я пишу опять-таки однострочник, который прямо на графическом контексте текущего окна рисует какие-то графики. Экспериментирую, подбираю, развлекаюсь. И когда, наконец, результат начинает меня удовлетворять, завожу класс и сваливаю мои однострочники в его методы.
Другой пример -- создать COM-объект и начать дергать его за разные методы, чтобы понять, как он себя ведет. Естественно, в процессе всё часто рушится или приходит в неправильное состояние, но при соблюдении минимальной аккуратности у меня всегда имеется на руках код, выполнив который после перезапуска я воспроизведу то состояние, с которым работаю.
no subject
Date: 2008-12-15 12:54 pm (UTC)no subject
Date: 2008-12-15 01:13 pm (UTC)no subject
Date: 2008-12-15 01:15 pm (UTC)Нишевый язык для внутренних разработок
Date: 2008-12-15 04:57 pm (UTC)Re: Нишевый язык для внутренних разработок
Date: 2008-12-15 05:30 pm (UTC)