Кто какие языки программирования любит

Missi4ka

С++... Это сложный язык, причем сложность его в ширину, а не в глубину
Даже Java и то лучше
полностью согласен. Я тоже НЕ ЛЮБЛЮ С++. Про СТЛ упомянул лишь потому, что это более либо менее стандартная вещь (сам предпочитаю QT). В С++, если уж на то пошло, нет нормальной работы с исключениями (нет finally а джавовская объектная система делает шаблоны практически ненужными — это так, но, увы, Джава всё ещё считается "медленным языком" и применяется не так широко, как С++. Хотя, я уверен, будущее именно за объектными языками.

amkharchenko

Вот я не люблю C++ и предпочитаю Python standard library. Ты как-то неправильно не любишь C++.

apl13

А я люблю сишный препроцессор.

psihodog

нет нормальной работы с исключениями (нет finally)
в плюсах finally не так критичен.

Helga87

джавовская объектная система делает шаблоны практически ненужными

Ыхыхых, если б и вправду все было так... Шаблоны дают возможность метапрограммирования, говоря человеческим языком, позволяют не писать/не генерить однотипный код. Отсутствие аналогичного средства в Java / C# стало причиной появления целой тучи кодогенераторов.
Лично мне как языки те же Java и C# скорее не нравятся, они хороши лишь сопуствующим рантаймом и библиотекой. Ну, и еще одним качеством — простотой по сравнению с С++.
Вывод: языка, который мне нравится, пока нет. Пока только есть желание иметь язык, позволяющий свои мысли ясно, и который был бы столь же выразительным, как С++.

Papazyan


barbos

Пока только есть желание иметь язык, позволяющий свои мысли ясно, и который был бы столь же выразительным, как С++.

Радуйся, пока такого языка не создали А то потом можешь почувствовать острую нехватку ясных мыслей

Helga87

Да, вероятно это близкий к правде совет

Hastya

C++, Java и C# все-таки сильно страдают от C-шного наследия.
Мне лично нравится Smalltalk и, пожалуй, Ruby.

tamusyav

Почему страдают?

barbos

Имхо, в них слишком много императивности для создания высокоуровневых программ.

Flack_bfsp

С плюсами всё ясно, а какое, простите, наследие от сей в джаве и шарпе?

Dasar

выражение a+b*c также записывается.

Flack_bfsp

В смолтоке не так (не знаю, спрашиваю)? В паскале не так (знаю, стебусь)? В бейсике, аде? Гы, лол.

Elina74

в форте и лиспе не так... гы-гы, они круче

Dasar

> В смолтоке не так (не знаю, спрашиваю)? В паскале не так (знаю, стебусь)? В бейсике, аде? Гы, лол.
разве, что smalltalk выбивается.
остальные перечисленные (если, конечно, брать их сегодняшнее развитие включая java и c# - это один и тот же язык

Flack_bfsp

О! Лисп!
А ещё есть пролог и рефал. Да, это мои любимые языки!

timefim

Nemerle рулит полюбому.

Elina74

А я еще слышал такое модное название R. Просто R. Судя по всему он скоро всех зарулит и все только на нём писать будут. По крайней мере так говорит его создатель.

timefim

Судя по всему он скоро всех зарулит
С таким названием наврятли.

Landstreicher

Зачотная картинка!

Landstreicher

Кстати, как там, в Haskell уже научились решать проблемы из Are applicative language inefficient? или нет.
У кого нет доступа на ACM --- выложил в ftp://tentacle/incoming/

Ivan8209

> Я тоже НЕ ЛЮБЛЮ С++.
А я люблю С++.
---
...Я работаю антинаучным аферистом...

danilov

Отсутствие аналогичного средства в Java / C# стало причиной появления целой тучи кодогенераторов.
А что такое шаблоны? Если это то же самое, что generics, то в java такое есть (в 1.5).
по сабжу: java и python

enochka1145

Чё-то вяло как-то идёт обсуждение! Ни намёка на холи вар! Что за пацифистские настроения преобладают на форуме?!
Самому, что ли, поддать жару?

Dasar

Что обсуждать-то? любовь - дело интимное.

enochka1145

Да, но это форум. Всё анонимно.
Вот, например, "А я люблю С++". Интересно же послушать, как именно, как часто, насколько сильно автор любит С++, и отвечает ли тот ему взаимностью.
Про большое и чистое чувство я и сам допёр, заметив, что автор не называет его более "приплюснутыми Сями".
---
- Поручик, Вы любите томаты?
- Мм... Есть - да, а так - не-а...

Ivan8209

> Вот, например, "А я люблю С++". Интересно же послушать, как именно, как часто
Постоянно, когда не отношусь безразлично.
Как именно?
Пожалуй, сильно.
Может быть, можно сказать очень сильно.
---
...Я работаю антинаучным аферистом...

psihodog

клёво, не знал, что так много любителей питона на форуме =)
+1 к питону

laki

Java - просто прет. хотя сейчас работаю прогером на шарпе. но когда надо реализовать некоторые вещи пользуюсь джавой!

Dasar

а в чем разница?

bobby

В том, что шарп лучше?

bobby

Хотя вот SDK в Java мне больше нравится.
И ещё inner classes клевая штука.
А самое главное, за что мне нравится Java, - это IntelliJ IDEA

Dasar

хз
у обоих платформ есть свои плюсы и минусы
плюсы C# - я знаю лучше.
соответственно сейчас хочу прояснить свое понимание плюсов Java-ы.

wwoland

Скажи что нить про руби

bobby

Ruby --- крутой язык.
Пойдет?

Helga87

Чем --- ?

bobby

--- !

bleyman

Я, кстати, тоже очень люблю питон, но чисто платонически.

Ivan8209

> у обоих платформ
type mismatch
Но даже самым приплюснутым насильникам этого не понять.
---
"Vyroba umelych lidi, slecno, je tovarni tajemstvi."

davidko

О, у меня на компьютере есть IntelliJ IDEA, ура! А что это?

bobby


Это лучшая (hey, !) среда разработки для Java.

laki

+1 идея рулит!

tipnote

+1 за питон

timefim

> среда разработки для Java.
А что круче VS2005 для С# или эта шняга для Java?

evgen5555

В каком смысле круче?

bobby

VS2005 без Resharper'а вообще сосет.
С решарпером её уже можно сравнивать с IDEA, только вот у меня на ноуте VS2005 + Resharper жестоко тормозит, а свеженькая IDEA 6.0 Beta 1 чуть ли не летает.

timefim

>VS2005 без Resharper'а вообще сосет.
Конечно предполагалось с ним.

timefim

>В каком смысле круче?
В том смысле от чего больше кайф ловишь при проганье.

evgen5555

Я вот кайф от MSVS6 ловлю, а удобнее всего, конечно же, Idea

psihodog

а я думал, для жавы эклипс самый популярный =)

enochka1145

Это лучшая (hey, !) среда разработки для Java.
ЧИ-И-ИВО-О-О-О?!?!?!
В Eclipse нет аудита кода (ну, такая штука, даёт ценные указания как писать прогу и позволяет претврорять их в жизнь лёгким нажатием левой пятки по крайней мере, официального. Можно поискать среди community plug-ins, если есть желание.
Eclipse ориентирован на J2SE, SWT/JFace, в IDEA c поддержкой J2EE и J2ME гораздо лучше. Хотя есть какая-то платная штука myEclipse.
Наверно, по совокупности возможностей IDEA круче. Однако мне ОЧЕНЬ нравилось программировать в Eclipse, просто до безумия. Он всё за тебя делает. Даже думает. Я с ним напрочь забыл, что такое закрывающиеся скобки/кавычки, где какой класс лежит, как набирать простейшие конструкции типа for/while/try/main; что ";" ставится в конце строчки; что имена переменных нужно выдумывать самому; что такое grep; что такое одноцветный текст; что такое баги, которые нужно самому выискивать, пакеты, которые нужно самому импортировать и организовывать..... и дофига всего ещё. В общем, обленился до крайности. Большую часть времени жал Ctrl+Space, и время от времени делал рефакторинг. Всё.
Кстати, любители VS2005. Почему в XXI веке я должен помнить где какие опции (настройки) находятся?! В окне Properties до сих пор нет поиска (фильтра).

timefim

Почему в XXI веке я должен помнить где какие опции (настройки) находятся?!
Что бы человечество в конец не обленилось и машины нас не парабатили.

Ivan8209

> Однако мне ОЧЕНЬ нравилось программировать в Eclipse, просто до безумия.
> Он всё за тебя делает. Даже думает.
Заметно.
> Я с ним напрочь забыл,
Это тоже заметно.
> Большую часть времени жал Ctrl+Space, и время от времени делал рефакторинг. Всё.
Ява настолько низкоуровневый язык, что почти весь код создаётся автоматически?
> Почему в XXI веке я должен помнить где какие опции (настройки) находятся?!
А причём здесь 21-й век? У нас это придумали ещё в восьмидесятых.
> В окне Properties до сих пор нет поиска (фильтра).
Не знаю, о каких "properties" ты говоришь, но у нас ко всему есть "apropos".
---
...Я работаю антинаучным аферистом...

enochka1145

Завидно? Я понимаю. Даже ортодоксы, бывает, хотят чувствовать себя людьми.
Кстати, в последнем Eclipse 3.2 ИЩО больше наворотов. Стоит только в общих чертах обозначить свою мысль, а уж среда позаботится о деталях реализации сама.

Elina74

Эээ... а как можно пощупать и понять, что ты не врёшь?
Есть ли аналогичные продукты для с++, к примеру, или для какого-нибудь перла?

Ivan8209

> Завидно?
Нисколько.
Я не программирую на прикидывающихся высокоуровневыми языках настолько низкого уровня.
---
...Я работаю антинаучным аферистом...

kokoc88

Я не программирую
Это, кстати, ключевые слова.

bleyman

Ага! Ага! Именно так!
=)
Только мы тут с мэдом посовещались и решили, что правильней было бы
> Я не программирую
Это --- ключевые слова.

или
> Я не программирую
Это заметно

Ivan8209

> Только мы тут с мэдом
Если у вас у троих вместе взятых воображения недостаток, то чего вы стоите по одиночке?
---
"Верь сводке погоды, но доверяй --- интуиции.
Будь особенно бдителен, когда всё хорошо и нет поводов для тревоги."

amkharchenko

Видимо, взяв Eclipse+CDT.

kokoc88

Если у вас у троих вместе взятых воображения недостаток, то чего вы стоите по одиночке?
Слышать такие слова от тебя - это комплимент.

enochka1145

Эээ... а как можно пощупать и понять, что ты не врёшь?
Ну, насчёт "думает за тебя", я, может, и приврал...
А вообще, на www.eclipse.org всё бесплатно, всё с исходным кодом.
Есть ли аналогичные продукты для с++, к примеру, или для какого-нибудь перла?
Не знаю, не слышал. Вон, VS2005 - большой шаг вперёд, даже можно закрывать все-окна-кроме-текущего. Но до удобства написания кода, ИМХО, всё ещё сильно отстаёт от Eclipse. Нет такого, чтобы я навёл курсор на переменную, и мне бы тут же высветили все остальные вхождения этой переменной. Закрывающиеся скобки надо самому ставить. Про рефакторинг, quick fix, всяческие мелкие вкусности-помощники можно забыть сразу.
Практически для любого языка можно найти (или написать самому - хелпы, статьи, сорцы в качестве образецов есть) плагин, который позволяет с ним удобно работать.
С другой стороны, на Eclipse+CDT серьёзные проекты на C++ писать тяжелее, если вообще возможно и средств отладки очень мало.

pitrik2

а я думал, для жавы эклипс самый популярный =)
не думаю что он популярнее идеи
во всяк. случае на всех трех работах где я работал эклипс был только у одного
потом здесь речь про другое
у идеи ахрененный редактор
такого нету нигде
я вот лично, если бы не идея вряд ли бы долго оставался прогером на джаве

enochka1145

Я пользовался и Идеей, и Эклипсом. Если речь идёт об общем Java-программировании (т.е. не плагины под Eclipse, не приложения-похожие-на-Eclipse - Eclipse RCP то возможности у них почти одинаковые, только горячие клавиши различные. Так что всё это дело вкуса. Я, например, не понимаю, почему в Идее нельзя любое окно расположить так как мне вздумается и любые такие расположения запоминать (как перспективы в Эклипсе). С другой стороны, в Идее можно располагать окна редактирования в несколько рядов.
Короче, рюшечки разные. Не из-за чего ссориться.

pitrik2

(офф: я например не понял как в эклипсе новую перспективу создать
выбирать среди готовых както неудобно)
речь не идет о спорах
просто в идее много вещей (именно на уровне редактора) можно делать таких, что другим ИДЕ просто и не снилось никогда
правда многие из этих вещей заточены именно под джаву и под другой язык такого создать может и не получится
и горячие клавиши тут ни при чем
кстати, я так понимаю в эклипсе таких вещей никогда не появится, потому что эклипс не заточен под джаву а разрабатывается под любой язык

bobby

просто в идее много вещей (именно на уровне редактора) можно делать таких, что другим ИДЕ просто и не снилось никогда
правда многие из этих вещей заточены именно под джаву и под другой язык такого создать может и не получится
Примеры таких вещей приводи сразу.
кстати, я так понимаю в эклипсе таких вещей никогда не появится, потому что эклипс не заточен под джаву а разрабатывается под любой язык
Eclipse JDT - это IDE для Java. Заточенная под Java.

enochka1145

просто в идее много вещей (именно на уровне редактора) можно делать таких, что другим ИДЕ просто и не снилось никогда
Ну не томи, чё за вещи-то?
// как в эклипсе новую перспективу создать
Для этого нужно написать свой плагин. Всё изумительно описано в хелпе. Ещё можно посмотреть на www.eclipse.org/articles (creating new perspective)
// эклипс не заточен под джаву
A Eclipse JDT - zatochen.

pitrik2

Примеры таких вещей приводи сразу.
неохота холивор разводить
ща на любой мой пример будет десять ответов как можно сделать примерно (ну почти совсем примерно) тоже самое
таких холиворов в гугле выше крыши
самый простой пример наверна: действие клавиши ctrl+shift+space
или например пробег по массиву
я пишу itar, жму TAB и мне предлагается список из соотв. переменных, из которого я выбираю тот по которому хочу пробежаться, далее создается for(...
я не знаток эклипса, если не ошибаюсь там можно for-заглушку вставить, но можно ли при этом получить список соотв. переменных? для этого IDE должно уметь парсить целиком некомпилируемый! код
или например в дебагаре я хочу просмотреть значение какой-то переменной
выделяю мышкой переменную, жму alt+f8. открывается окно просмотра переменной
допустим переменная объявлена через интерфейс, а я хочу вызвать метод из класса-реализации
тоесть мне нужно кастинг сделать, а потом вызвать метод, но я в дебагере и откуда я знаю к чему кастинг приводить?
вот тут я жму ctrl+alt+t и моя переменная кастится

enochka1145

Не позорься. Открой для себя Эклипс. Там есть всё это, только гораздо удобнее. Могу расписать поподробнее вечером. До вечера!

Marinavo_0507

для с++, к примеру, или для какого-нибудь перла
это не тру

pitrik2

Там есть всё это, только гораздо удобнее.
ну вот, начался холивор
главное с меня потребовали привести примеры, а сами примеры умалчиваете

bobby

Ура! Холивор!

evgen5555

Удивительно, что он начался именно сейчас, с таким-то заголовком.

davidko

где холивор-то? Скукота, неинтересно. Даёшь больший накал страстей! Ну, для начала...эээ...лучшие языки - фортран и вижуалбейсик! Ура!

pitrik2

я не все языки знаю
но из тех которые знаю больше всего люблю хаскель
ну блин чертовски красивый язык, а главное короткий и ясный
вот, например, калькулятор на хаскеле
calc = foldl f [] . words
where
f (x:y:zs) "+" = y+x:zs
f (x:y:zs) "-" = y-x:zs
f (x:y:zs) "*" = y*x:zs
f (x:y:zs) "/" = y/x:zs
f xs y = read y : xs

*Main> calc "2 3 * 5 +"
[11.0]

Flack_bfsp

Открой для себя Рефал!

Flack_bfsp

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

Ivan8209

Ты считаешь HP48 плохим калькулятором?
---
...Я работаю антинаучным аферистом...

Flack_bfsp

А мне положить на этот калькулятор. Я привык записывать вычилания в инфиксной форме. И даже в начальной школе почему-то префиксной записи не учат. И я не собираюсь извращаться ради того, чтобы программисту было проще отпарсить мои записи.

pitrik2

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

Flack_bfsp

На рефале постфиксный и инфиксный калькуляторы имеют равный по длине код. И изменений там надо минимум. А вот сколько изменений надо внести в твой калькулятор для того, чтобы он стал инфиксным, и насколько изменится размер кода от этого, я не в курсе. Просто интересно.

danilov

А когда-нибудь ты поймёшь, что нет универсального языка, решающего все задачи с наименьшими затратами.
Все здесь очень рады, что придётся изменить всего 3 (! вы только подумайте) строчки, чтобы получить
из ипрефиксного калькулятора инфиксный...
Так что в данный момент спор не о чём - вопроса не стояло, какой язык лучше - их тяжело сравнивать, а
какой нравится. Это немного другое.

Flack_bfsp

А когда-нибудь ты поймёшь, что нет универсального языка, решающего все задачи с наименьшими затратами.
О великий, я в курсе, представляешь?

bleyman

А когда-нибудь ты поймёшь, что нет универсального языка, решающего все задачи с наименьшими затратами.
Как это - нет?
А С++?

pitrik2

а что вы называете затратами?
если затраты времени программиста, то С++ на очень многих задачах сосет

danilov

а тада об чём спор-то?

bleyman

если затраты времени программиста, то С++ на очень многих задачах сосет
Просто на нём очень многие программисты не умеют писать: боятся активно использовать макропроцессор, делают глупые ошибки (утечки памяти, выход за границу массива етс).
Если писать без ошибок, то очень эффективно и быстро получается - спроси у KOHTPы.

enochka1145

// неохота холивор разводить
Ну так и не разводил бы, а познакомился с этой величайшей платформой всех времён и народов - Eclipse, в которой есть JDT, CDT, EMF (Eclipse Modeling Framework GEF (Graphical Editor Framwork Visual Editor и многое, (реально) многое другое! И всё нахаляву! И всё с исходным кодом! И не просто каким-то там ламерским кодом, а от создателей XP (в частности) - что очень позитивно сказывается на культуре программирования!
Так что, сударь, объявляю вам священную войну, возьмите Вашу шпагу.
// ща на любой мой пример будет десять ответов как можно сделать примерно (ну почти совсем примерно) тоже самое
А ты чего ждал? Естественно на любой твой пример заведомо есть пример в Eclipse, где всё тоже самое, только круче.
// таких холиворов в гугле выше крыши
Ну, я тут для безынетных поработаю...
// самый простой пример наверна: действие клавиши ctrl+shift+space
Нет у меня сейчас Идеи. Что это за действие?
// или например пробег по массиву
я пишу itar, жму TAB и мне предлагается список из соотв. переменных, из которого я выбираю тот по которому хочу пробежаться, далее создается for(...
Ну надо же! Умеет ведь! А в Eclipse не нужно помнить какие-то заклинания, достаточно ввести "for" (или просто "fo" - Eclipse у меня пока тоже нет Ctrl+Enter (это ответ на ВСЕ вопросы! Enter. Переменная, по которой я хочу пробежаться, будет уже введена Eclipse (помните насчёт "даже думает"? ). Ес-сно, её можно тут же заменить на другую.
// я не знаток эклипса, если не ошибаюсь там можно for-заглушку вставить, но можно ли при этом получить список соотв. переменных? для этого IDE должно уметь парсить целиком некомпилируемый! код
Офигеть! Не, ну Идея рулит! О, да! Давай-давай, так держать!
Eclipse, к твоему сведению, не просто парсит на ходу, он ещё и компилирует на ходу. Он вообщк всё делает на ходу, а не тратит моё время.
// или например в дебагаре я хочу просмотреть значение какой-то переменной
выделяю мышкой переменную, жму alt+f8. открывается окно просмотра переменной
допустим переменная объявлена через интерфейс, а я хочу вызвать метод из класса-реализации
тоесть мне нужно кастинг сделать, а потом вызвать метод, но я в дебагере и откуда я знаю к чему кастинг приводить?
вот тут я жму ctrl+alt+t и моя переменная кастится
Блин, ну не интересно. Хочу с реальными пацанами покоцаться.
У объекта всегда есть его класс, getClass-ом узнаётся. Нормальная среда должна знать истинный класс объекта, несмотря на то, какой тип имеет переменная. Без всяких там Ctrl+Alt+T.
---
Вот я не плюю на Идею. Я ей просто не пользуюсь (не люблю я этот Swing). Но знаю. Так что советую просто узнать Eclipse. А вдруг понравится?

psihodog

Eclipse, к твоему сведению, не просто парсит на ходу, он ещё и компилирует на ходу.
чего он компилирует? :-o

enochka1145

java -> .class
Не совсем на ходу, правда, а только после того, как файл сохранился. Что, в общем, разумно.

Flack_bfsp

О том, кто какой язык любит

psihodog

а чего спорить? голосовалку надо сделать!

enochka1145

Насчёт отсутствия аудита кода в Eclipse - забираю свои слова обратно.
Если вообще вдруг захочется сказать, что в Eclipse чего нету - добро пожаловать сначала сюда: http://help.eclipse.org/help32/index.jsp
И это при том, что информация там далеко не самая свежая (посвежее - в Eclipse SDK 3.2).

enochka1145

Глянул на What's new in JDT 3.2... Офигеть!.. Вообще уже думать негде.
Теперь Refactoring оперирует такими словами как "similar" (искусственный интеллект уже какой-то): The Rename Type refactoring can now rename variables and methods with names similar to the renamed type. This feature helps to keep method and variable names synchronized with type names.
Или вот: Repeatedly invoking content assist (Ctrl+Space on most platforms) now cycles through different proposal categories.
Т.е. жми Ctrl+Space (ответы на ФСЕ вопросы в Eclipse пока не получишь, что хочешь.
Кстати, насчёт "for",Ctrl+Space я ошибся. Достаточно просто f,Ctrl+Space. Это покороче, чем itar,Tab, не так ли?

enochka1145

А вот пример насчёт "на ходу": The Java compiler is now capable to perform basic null reference analysis for local variables.
Т.е. вы только написали
public void foo(Object arg) {
if (arg == null) {
arg.toString;
}
}
а он уже тычет в arg.toString. Нехило?
А вот для конченных лентяев: You can paste a snippet of code containing a Java type directly into a package or source folder to create a new compilation unit. For example select and copy this source code.
Т.е. берёте исходный код, жмёте Ctrl+V, а Eclipse уже и пакет создаст, и файл, и всё на свете.
Какая среда может всем этим похвастаться, а? Не слышу.

kokoc88

Какая среда может всем этим похвастаться, а? Не слышу.
IDEA 5.0+ : the statement may cause NullPointer exception

bansek

по вопросу: идея это умеет.
я прогал j2ee приложение на идее (полгода)
и на eclipse (вынужден начать сейчас, прошло несколько дней; употребляю слово "вынужден" не потому, что отношусь к эклипсу предвзято, а потому что привык к идее и некоторым ее плагинам)
к сожалению, эклипс умеет не все, что умеет идея (ну или пока я не все нашел). Кроме того, эклипс имхо сильно страдает от того, что он написан кусками. С одной стороны это клево, модульность и все такое. Но эти самые модули не всегда срастаются. В частности, у меня примерно 50% плагинов к эклипсу, которые я хотел поставить не поставились. Можно кончено валить на мою криворукость, но почему-то эта криворукость не мешала мне в идее.
Да, еще по теме вопроса. Все то же самое умеет еще и оракловый JDeveloper 10
А по теме топика: больше всего нравится С++ - на нем получаются очень красивые программы. Удобными считаю джаву, шарп, пхп, дельфи.

Papazyan

Если писать без ошибок, то очень эффективно и быстро получается - спроси у KOHTPы.
Без базара. Если писать без ошибок с весьма скромной скоростью 60 символов в минуту, то можно накодить ядро Линукса всего-то за год. А если как Контра строчить сотнями, то и за месяц можно управиться. Запатентовать что ли это как Typing ed Programming (TOP = TOP is On Top).

bleyman

Запатентовать что ли это как Typing ed Programming (TOP = TOP is On Top).
!

Marinavo_0507

Если без ошибок, то Линукс никак не получится.

slonishka

+1

pitrik2

Так что советую просто узнать Eclipse. А вдруг понравится?
я целый месяц пытался познать эклипс 3.1
мне этого хватило выше крыше
надеюсь больше никогда с ним не столкнусь

pitrik2

Удобными считаю джаву
да дурацкий язык джава
слишком много воды в нем
объявление константы:
public static final int N = 10;
уродство какое то
хорошо есть ИДЕЯ, в которой пишешь psfi и жмешь TAB
(еще раз повторяю если бы не ИДЕЯ я бы на джаве не прогал)

ava3443

не думаю что он популярнее идеи
во всяк. случае на всех трех работах где я работал эклипс был только у одного
Моё скромное мнение - это от того, что ты работал в РФ, где идея почти у всех пи@#$^ная.
На западе Эклипс должен быть даже не в разы, а на порядки популярнее идеи.

Marinavo_0507

хорошо есть ИДЕЯ, в которой пишешь psfi и жмешь TAB
Попробуй сразу вбивать исходник, закодированный gzip, как это делают Настоящие Программисты. Так гораздо быстрее.

pitrik2

Какая среда может всем этим похвастаться, а? Не слышу.
найди на досуге список Intentions в ИДЕА
тебя наверна инфаркт хватит
процентов 20-30 этих интеншенов реализовано в эклипсе в той или иной форме (например через рефакторинг, но рефакторинг это другое, рефакторинг - это когда я хочу чтото сделать, а интеншены - это когда IDE предлагает что можно сделать)

Papazyan

Если без ошибок, то Линукс никак не получится.
У Контры получится. Ему сотни экранов достаточно.

pitrik2

помойму прикол был как раз в том, что линукс без ошибок не бывает, если контра его без ошибок напишет, то это будет не линукс

Ivan8209

> это будет не линукс
Зачем нам всем ещё один линукс?
---
...Я работаю антинаучным аферистом...

Missi4ka

Пару слов невпопад про шаблоны и Джаву.
Имхо, дело обстоит так. Всевозможные контейнеры и прочие инструменты, которые обычно пишутся под разыне типы данных, бывают двух сортов: работающие с примитивными типами данных (в контейнере хранится сам экземпляр) и работающие с сылками. Так вот шаблоны нужны в случае, когда мы хотим описать, например, контейнер для примитивных типов. А для "больших" данных мы пользуемся ссылками.
Но ссылками какого типа? В языке С — ссылка типа void. В С++ — ссылка на базовый класс. Но, к сожалению, в С++ заранее не определен единый для всех базовый класс. Причем мало его просто определить. Надо ещё обеспечить runtime- среду для динамической идентификации типа (на уровне операторв языка, а не функций из библеотеки!) и динамического определения класса (например, поднятие класа из файла) и создания экземпляров вновь поднятого класса.
В Джаве, насколько я помню, это реализовано. Хотя, кажется, динамическое поднятие класса всё же делается средствами библиотеки, а не операторами языка.
На самом деле, языку С (С++) не хватает ровно одного: он не умеет превращать код в даные и данные в код. В самом языке это выражается в отсутствии типа данных функция. Да, да, получается странно: указатели на функцию есть, а функций нет, заметили? Как следствие, функцию нельзя превратить в массив байт и записать на диск. А массив нельзя преобразовать в код функции. Всё же, код с данными уравнен в правах не полностью...
Если бы в С были операторы compile и decompile, переводящие массив байт в функцию и наоборот, то их можно было бы поднять на уровень объектной системы в виде динамического определения класса, ведь именно отсутствие возможности восстановить методы мешает поднимать класс во время выполнения.
Так вот, шаблоны, конечно, нужны и важны. Но только для параметризации по простым типам (грубо говоря, размер которых меньше размра указателя а параметризация классами, ИМХО, — дело лишнее и вредное. Надо просто создавать контейнер (это как пример) элементов типа object.
Вопрос: в языках семейства ML (в частности OCAML) есть возможность преобразовывать данные в код (т. е. обзащаться с функциями, как с остальными данными)? В частности, могу ли я там прочитать функцию из файла или получить класс по сети?

Flack_bfsp

Если бы в С были операторы compile и decompile, переводящие массив байт в функцию и наоборот, то их можно было бы поднять на уровень объектной системы в виде динамического определения класса, ведь именно отсутствие возможности восстановить методы мешает поднимать класс во время выполнения.
Как ты себе это представляешь? Когда один и тот же исходник на разных машинах при компиляции даст разный двоичный код? Или на одной машине, но для разный осей? Или даже на одной и той же машине, с одной осью, но с разными настройками компилятора? То, что было сохранено ранее, уже нельзя будет загрузить при другом запуске.
Далее, шаблоны - это не только контейнеры. String и Complex, скажем - это тоже шаблоны.

Dasar

а параметризация классами, ИМХО, — дело лишнее и вредное
с точки зрения - реализации - да, вредное, потому что код разбухает
с точки зрения - написания программы - полезное, потому что, во-первых, уменьшается время на понимание того, что должно храниться в этой коллекций, во-вторых, уменьшается кол-во ошибок
соответственно, имхо, правильное поведение языка:
1. при написании - параметризовать классами можно
2. при генерации кода - шаблоны, параметризованные классами - приводят к генерации единственного класса работающего с object-ами

pitrik2

Если бы в С были операторы compile и decompile, переводящие массив байт в функцию и наоборот, то их можно было бы поднять на уровень объектной системы в виде динамического определения класса, ведь именно отсутствие возможности восстановить методы мешает поднимать класс во время выполнения.
ну на уровне языка этого нет
хотя подозреваю что в C# это есть
а так, например в CORBA есть маршаллинг и демаршаллинг

Missi4ka

Как ты себе это представляешь? Когда один и тот же исходник на разных машинах при компиляции даст разный двоичный код?
Представляю примерно так. В массив пишется какой-то псевдокод типа джававского байт-кода, который можно компилировать на лету либо интерпретировать (по желанию программиста). Декомпиляция делает обратное: по дополнительной информации в коде формирует байт-код и пишет его в массив. Правда, такие операции могут приводить к потерям времени, скажем, на линковку, но это уже технические детали, как сделать компиляцию быстрее (хотя бы t = О(длина_кода)).

pitrik2

ладно
я умолкаю
бесполезно
последнее ИМХО:
можно попытаться провести аналогию
идея — опера
эклипс - лиса
я в лисе не сижу постоянно, есть некторые вещи которые в ней сделаны гораздо менее удобнее чем в опере, да и тормозная она
но при этом я считаю лису очень достойным продуктом, он совершенно на уровне оперы
а вот эклипс совершенно не на уровне идеи и отставание чересчур большое

Ivan8209

А почему компиляция должна быть обратимой?
---
...Я работаю антинаучным аферистом...

Papazyan

Вопрос: в языках семейства ML (в частности OCAML) есть возможность преобразовывать данные в код (т. е. обзащаться с функциями, как с остальными данными)? В частности, могу ли я там прочитать функцию из файла или получить класс по сети?
Нет, это затруднительно из-за строгой типизации. В скомпилированной программе типы не существуют, поэтому как обеспечить типобезопасность непонятно.

Marinavo_0507

Как раз в оcaml вроде можно подгружать модули, компилированные в байткод.
Наверное, и ещё где-нибудь можно.
Но всё это - низкоуровневые хаки, зависящие от реализации и не относящиеся к сильным сторонам языка. Если реально нужно обращаться с кодом, как с данными, то нужно что-то вроде Lisp, или мб Smalltalk. А на ФЯ имхо более правильно написать сначала интерпретатор какого-нибудь языка, и потом уже грузить на нём код.

Barbie29

perl люблю

pitrik2

вот еще пример за что можно не любить джаву: http://community.livejournal.com/ru_java/273133.html
(постить сюды не буду, текста много)

enochka1145

Термоядерные реакции на Java не пробовал обсчитывать? А то я уж не знаю, за что любить Java.....

Marinavo_0507

perl крут, но очень уж тормозной
тут был мой тред про простые числа...

sakura

Perl рулит!

Missi4ka

Chtoby mozhno bylo preobrazovyvat' kod v dannye i, naprimer, pisat' ego v fajl.

aleks058

А у меня VS2005 без Решарпера не сосет.
Что я делаю не так?

bobby

Неудачнег, чо.

Ivan8209

Необратимость декомпиляции никак не влияет на возможность записать декомпилированное в файл.
---
...Я работаю антинаучным аферистом...

july

+1 к Python
Оставить комментарий
Имя или ник:
Комментарий: