LINUX.ORG.RU
ФорумTalks

ЯП


0

0

Мой первый язык был Pascal, потом C++, потом Perl, на выходных выучил основы Python - мне он понравился больше, чем Perl. Более простым синтаксисом, большей объектно-ориентированностью, удобной обработкой исключений. Только жаль, что нет аналога perl -MCPAN -e shell. Ещё я смотрел Ruby - тоже неплохой язык, но там проблемы с либами, даже биндинг к curl заброшен четыре года назад и не компилится. :( От Visual Basic меня воротит. С Java я особо не пытался разбираться, но она слишком перегружена, для простейших вещей приходится кучу кода писать. Lisp - не моё. PHP - видел чужой код, сам не писал, но мне язык и его концепции не нравятся, да и либ маловато. Думаю, что в ближайшие годы буду писать в основном на Python (где мне предоставляется выбор). Кто чего посоветует?

anonymous

Re: ЯП

Посмотри еще Tcl (для чего-то простого или расширений), Lua (для расширений), OCaml (для чего-то серьезного), Ada (для чего-то очень серьезного ;)), Haskell (для чего угодно). Еще можно Forth, Smalltalk и Eiffel ради интереса ;)

AiLr ★★ ()
Ответ на: Re: ЯП от AiLr

Re: ЯП

Это всё классно, но меня больше интересует, для какой задачи какой язык является лучшим.

anonymous ()
Ответ на: Re: ЯП от AiLr

Re: ЯП

Блин, опередил:) Хотел сказать почти тоже самое. Ну и ессно посоветовать всё-таки посмотреть Схему и Common Lisp. Да и Ruby оочень советую поучить. Может либ не так много как для питона и тем более перла, но сам язык лучше.

CrazyPit ★★★ ()
Ответ на: Re: ЯП от anonymous

Re: ЯП

Ещё я не понимаю, почему большинство веб-кодеров пользуется PHP. У меня в конторе трое пых-пыхеров (и ещё один на васике пишет), слова "input validation", "sql injection", "cross site scripting", "race condition" для них пустые звуки.

anonymous ()
Ответ на: Re: ЯП от anonymous

Re: ЯП

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

OCaml - универсальный язычок, одновременно функциональный, императивный и оо. На нем кстати mldonkey и advi написаны, первым я постоянно пользуюсь.

Haskell - чисто функциональный, так что баг на нем сделать практически нереально (либо переполнением стека (что не так-то просто), либо использованием низкоуровневых средств). Достаточно быстрый (см shootout.alioth.debian.org). Отлично подходит для всякого ии, да и просто для быстрой разработки.

AiLr ★★ ()
Ответ на: Re: ЯП от anonymous

Re: ЯП

> Это всё классно, но меня больше интересует, для какой задачи какой язык является лучшим.

Ruby+Rails для малых и средних не сильно оригинальных (с архитектурной точки зрения) веб-проектов один из лучших (если не лучший...)

Common Lisp - лучший если нужно сделать что-нибудь что ещё никто не далал:)

Perl лучший если нужно своять что-то очень быстро (т.к. очень много либ) - ну это ты должен знать.

Python - для всего что не тянет руби но на перле писать не хочеться.

Haskell - действительно для всего:) тока не так просто освоить чтобы можно было легко длать действительно всё что захочешь. Вот трансляторы точно теперь только на нём буду писать...

CrazyPit ★★★ ()
Ответ на: Re: ЯП от AiLr

Re: ЯП

> Ada - юзается если нужна высокая надежность. В нее встроены потоки, есть собственная распределенная система, много фич типа генериков, типов с фиксированной точкой и тд. Часто юзается во всяком бортовом по, например во франции в метро на какой-то ветке поезда управляются софтом на ней.

А как Ada vs Erlang насчёт распараллеливания? не сравнивал?

CrazyPit ★★★ ()
Ответ на: Re: ЯП от CrazyPit

Re: ЯП

Мда, все преведы и бабруйски съели мой моск...

Читаю ЯП... цуп-цоп!

Teren ()
Ответ на: Re: ЯП от Teren

Re: ЯП

бабруйск ф бабруйск!

anonymous ()
Ответ на: Re: ЯП от CrazyPit

Re: ЯП

Слышал что в Erlang распределенный софт удобнее писать тк там всё это дело прямо в язык встроено, и не важно на какой машине находятся объекты (отя сам не пробовал). Потом у Erlang'а свои потоки, которые он может держать внутри одного процесса, а может и разбить на системные потоки (как и хаскель/ghc), поэтому в shootout erlang вроде как быстрее по chameneos и cheap-concurrency. Но параллелить проще всего всеже хаскель, ибо без побочных эффектов ;) Жаль только у него распределенной системки нету какой-нибудь...

AiLr ★★ ()
Ответ на: Re: ЯП от CrazyPit

Re: ЯП

AFAIK, erlang интерпретируемый ЯП так что сравнивать его с ada не совсем корректно.

free_serj ★★ ()
Ответ на: Re: ЯП от CrazyPit

Re: ЯП

> Ruby+Rails для малых и средних не сильно оригинальных (с архитектурной точки зрения) веб-проектов один из лучших (если не лучший...)

"для малых и средних не сильно оригинальных", почему ?

halflife ★★ ()

Re: ЯП

Есть ещё прикольный язык Clean, чисто функциональный, как Хаскель, но другой. =) Правда развивается он аццки медленно, т. к. его пишут чуваки из какогой-то лабы какого-то голландского университета, получают под это дело гранты и зарплату, ездят на конференции пиво пить, и торопиться им сцукам некуда. К тому же они все злостные виндузоиды и макофилы, и это накладывает отпечаток. Но язык, несмотря ни на что, прикольный.

http://www.cs.ru.nl/~clean/

anonymous ()
Ответ на: Re: ЯП от free_serj

Re: ЯП

> erlang интерпретируемый ЯП

нет. компилируемый в байткод.

CrazyPit ★★★ ()
Ответ на: Re: ЯП от AiLr

Re: ЯП

> Но параллелить проще всего всеже хаскель, ибо без побочных эффектов ;)

В erlang тоже нет побочных эффектов.

anonymous ()
Ответ на: Re: ЯП от CrazyPit

Re: ЯП

> > erlang интерпретируемый ЯП

> нет. компилируемый в байткод.

Или в натив (для x86 и спарков).

anonymous ()
Ответ на: Re: ЯП от halflife

Re: ЯП

> для малых и средних

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

> не сильно оригинальных

важно "с архитектурной точки зрения"

Ну архитекутра приложения на РоРе будет достаточно стандратная. Если нужно куча баз, разные виды кэша и.т.д РоР нужно будет некисло патчить.

CrazyPit ★★★ ()
Ответ на: Re: ЯП от CrazyPit

Re: ЯП

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

Всеже рельсы тут причем ? Это же никак не относится к ЯП и рельсам в частности.

> Ну архитекутра приложения на РоРе будет достаточно стандратная.

Это плохо или всетаки хорошо ? :)

> Если нужно куча баз, разные виды кэша и.т.д РоР нужно будет некисло патчить.

Ну и список баз данных внушительный. Если речь о нескольких разных базах одновременно, то насколько я знаю вполне возможно юзать establish_connection самому.

Лучше посоветуйте, что еще кроме рельсов глянуть для ццц ?

halflife ★★ ()
Ответ на: Re: ЯП от halflife

Re: ЯП

имхо там где не подходят рельсы в большинстве случаев пишеться что-то своё...

CrazyPit ★★★ ()
Ответ на: Re: ЯП от AiLr

Re: ЯП

Haskell язык красивый. Да вот одна большая (я бы сказал очень большая - 200 мегов так) проблема - ghc.

Midael ★★★★★ ()
Ответ на: Re: ЯП от CrazyPit

Re: ЯП

А чем Ruby лучше Python'а? Тем, что там чисто ООП?

anonymous ()
Ответ на: Re: ЯП от hatefu1_dead

Re: ЯП

whitespace

Xellos ★★★★★ ()
Ответ на: Re: ЯП от anonymous

Re: ЯП

> А чем Ruby лучше Python'а?

Нормальные итераторы, корявостей меньше. Метапрограммирование естественнее и удобнее. Ну ООП без питоновских извратов.

CrazyPit ★★★ ()

Re: ЯП

системная разработка - С (без плюсов), все остальное рекомендуется Common Lisp/Haskell

мое мнение конечно же субъективное, но тем не менее ...

alphex_kaanoken ★★★ ()
Ответ на: Re: ЯП от anonymous

Re: ЯП

>> Но параллелить проще всего всеже хаскель, ибо без побочных эффектов ;)

>В erlang тоже нет побочных эффектов.

Erlang is a functional language. It inherits benefits such as pattern matching for selecting between alternate function clauses, _minimal side-effects_ which greatly simplify analysis and testing of code, and dynamically typed symbolic data representation.

AiLr ★★ ()
Ответ на: Re: ЯП от AiLr

Re: ЯП

> _minimal side-effects_

Угу - minimal.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.