Первый язык

Модератор: Модераторы разделов

Аватара пользователя
kernel_mode
Сообщения: 347
Статус: infinity++
ОС: Gentoo(desktop)/Arch(laptop)

Re: Первый язык

Сообщение kernel_mode »

Zeus писал(а):
04.05.2007 08:30
Какая поучительная притча :)
А на чём, интересно, были написаны команды, участвовавшие в "конвеере"? :D
Это всё-равно, что ВижуалБасикёр, накидавший на формочку ActivX'ов и написавший пару функций отклика на события будет заявлять, что C++ - отстой с лишними наворотами - вот, ВижуалБасик нужно использовать!

Поддерживаю. У каждого языка есть свои цели и задачи. Если человек, к примеру, собрался писать ту же командную оболочку, напишет ли он её на лиспе?
А на ассемблере вообще можно написать всё :), но это в какой-то степени сложно и занимает много времени, и именно поэтому люди придумали другие языки, но задачи, которые без него (ассемблера) решить тяжело все ещё остаются. Так же и с С/С++.
Всё вышесказанное есть моё личное мнение, и я не отрицаю, что оно не является истиной :)
Спасибо сказали:
v04bvs
Сообщения: 636
ОС: Debian GNU/Linux

Re: Первый язык

Сообщение v04bvs »

DEATH писал(а):
04.05.2007 17:28
Если человек, к примеру, собрался писать ту же командную оболочку, напишет ли он её на лиспе?

M-x eshell <Ret>
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Первый язык

Сообщение sash-kan »

DEATH писал(а):
04.05.2007 17:28
Если человек, к примеру, собрался писать ту же командную оболочку, напишет ли он её на лиспе?
вряд ли. там ведь писать-то нечего. например, интерпретатор лиспа на самом лиспе занимает несколько строк. емнип.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
kernel_mode
Сообщения: 347
Статус: infinity++
ОС: Gentoo(desktop)/Arch(laptop)

Re: Первый язык

Сообщение kernel_mode »

v04bvs писал(а):
04.05.2007 18:47
M-x eshell <Ret>

sash-kan писал(а):
04.05.2007 20:27
вряд ли. там ведь писать-то нечего. например, интерпретатор лиспа на самом лиспе занимает несколько строк. емнип.

Ну, вы же не будите утверждать, что на лиспе (или на любом другом языке программирования) можно написать абсолютно всё, причём самыми удобными методами. Ещё раз повторюсь: если бы был такой язык, то просто небыло бы необходимости создавать другие. О том, какой язык лучше спорить бесполезно, а и к тому же незачем: каждый выбирает для себя и для своих (ну, конечно, не всегда для своих) нужд.
По теме: начинать следует с того, что понятнее и ближе конкретному человеку. Идеала для всех людей не подобрать, мы же ведь не все одинаковые, не на заводе сделаны :). Какому-то человеку более знакома матчасть, у кого-то более развито логическое мышление и т.п.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Первый язык

Сообщение sash-kan »

DEATH писал(а):
04.05.2007 20:42
написать абсолютно всё
ну вот, чего ж растекаться мыслью по древу?
название топика-то как звучит?
вот я в этом самом аспекте функциональные языки лисповского направления и рекомендую. говорят, очень способствуют.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
kernel_mode
Сообщения: 347
Статус: infinity++
ОС: Gentoo(desktop)/Arch(laptop)

Re: Первый язык

Сообщение kernel_mode »

sash-kan писал(а):
04.05.2007 20:55
ну вот, чего ж растекаться мыслью по древу?
название топика-то как звучит?
вот я в этом самом аспекте функциональные языки лисповского направления и рекомендую. говорят, очень способствуют.

Может быть, вполне может быть, я не стану спорить, т.к. с лисповскими языками не знаком.
P.S. Просто тема начала потихоньку отходить от своего названия, вот я и решил хоть какой-то итог этому подвести :)
P.P.S Как уже говорилось, все мои посты выше моё личное мнение
Спасибо сказали:
sanchez
Сообщения: 223
Статус: Меркантильный жлоб...
ОС: Ubuntu&openbox

Re: Первый язык

Сообщение sanchez »

Прочёл я тут 5 страниц и тоже захотелось:).
В принципе, мне как и афтору топика, "чисто" для себя надо...
Хочу попробовать Питон, посоветуйте какую-нить ХОРОШУЮ книжечку на русском, чтоб с азов усё было :)
Спасибо !
Зачем нужны крылья, если ты не можешь чувствовать ветер...? ©"City of Angels"
Спасибо сказали:
NoMad
Сообщения: 92
ОС: Debian 4.0

Re: Первый язык

Сообщение NoMad »

Народ, короче взял я книжку How To Design Programs, взял DrScheme и уже к концу второй главы понимаю, что просто влюбился в синтаксис! Это ж даже лучше чем обычная математическая запись! Скобочки и связанная с ним последовательность выполнения операторов - просто сказка! Любовь началась как только они показали работу с функциями - все делается чуть ли не в одну строчку, при этом нет никакой "шифрованности" в стиле perl! Короче, посмотрим, как оно будет дальше, но пока мне очень нравится!
Спасибо сказали:
NoMad
Сообщения: 92
ОС: Debian 4.0

Re: Первый язык

Сообщение NoMad »

sanchez писал(а):
05.05.2007 00:08
Прочёл я тут 5 страниц и тоже захотелось:).
В принципе, мне как и афтору топика, "чисто" для себя надо...
Хочу попробовать Питон, посоветуйте какую-нить ХОРОШУЮ книжечку на русском, чтоб с азов усё было :)
Спасибо !

http://www.python.ru/
Тут были две хорошие книги (перевод Россума и Чаплыгин). Как правило отсылают на них. Но вообще, зря ты на английском не хочешь брать, там всегда выбор больше и книги новее.
Спасибо сказали:
Аватара пользователя
Alexanderska
Сообщения: 66
ОС: Linux Mandriva 2007.1 Final

Re: Первый язык

Сообщение Alexanderska »

(какая есть толковая графическая среда разработки С++?)
Linux Mandriva 2007.1
HP Vectra :
PIII 863MHz /DIMM 2x256MB/HDD 120GB/GeForce4 MX440 64MB/
AMD-K6 450MHz /DIMM 2x128MB/HDD 20GB/GeForce4 MX440SE 64MB/
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Первый язык

Сообщение Zeus »

Alexanderska писал(а):
05.05.2007 03:23
а какая есть среда разработки (с++) похожая на с++ билдер под винь ?

тынц

Alexanderska писал(а):
05.05.2007 03:23
+ какие есть книги, которые б очень помогли в начале (чтобы было доступно написано "- чем пользуетесь")
+ где можно это всё скачать ?

тынц
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Первый язык

Сообщение t.t »

Skladnoy писал(а):
04.05.2007 01:28
Кстати, раз уж тут зашли такие разговоры про функциональное программирование, то может участники подскажут хорошую литературу на эту тему. Хочется изучить, а с чего начинать непонятно.
Так ведь уже давали ссылки и на упомянутую мною книгу финнов по лиспу, и на основательный англоязычный труд по схеме.

NoMad писал(а):
04.05.2007 12:27
Мне программирование нужно как хобби, мозги поломать - задачи порешать. А вы тут: asm
Кстати, если с такой позиции, то об асме вы как раз зря так скептически. Канонические упражнения: берём любую сколь угодно простую задачу (даже лучше _достаточно_ простую) и пытаемся соптимизировать максимально по одному из трёх параметров:
а) длина программы в байтах;
б) время выполнения в тиках;
в) общий объём одновременно используемой памяти в байтах.
Интереснее всего, конечно, наперегонки. И очень даже можно параллельно с лиспом -- совершенно другой категории упражнения. Кстати рекомендую книгу Генри Уоррена "Алгоритмические трюки для программистов": http://www.ozon.ru/context/detail/id/1458852/
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Первый язык

Сообщение t.t »

DEATH писал(а):
04.05.2007 17:28
Если человек, к примеру, собрался писать ту же командную оболочку, напишет ли он её на лиспе?
sash-kan писал(а):
04.05.2007 20:27
вряд ли. там ведь писать-то нечего. например, интерпретатор лиспа на самом лиспе занимает несколько строк. емнип.
Кстати, одна из задач, где фп бьёт всех по простоте реализации и краткости кода -- это таки синтаксический анализ любого рода. Это классика, лисп изначально в том числе под эти задачи писался.

DEATH писал(а):
04.05.2007 20:42
Ну, вы же не будите утверждать, что на лиспе (или на любом другом языке программирования) можно написать абсолютно всё
Кстати шутка: "Языки делятся на две категории: широкопрофильные и узкоспециальные. Поклонники вторых говорят, что есть такие задачи, которые можно решить только на одном языке. Поклонники первых -- что есть язык, на котором можно решить все задачи." ((с) мой) Шутки шутками, но теоретически да: на лиспе можно написать абсолютно всё. Вопрос только в производительности; на сях она, естественно, для многих задач будет выше, а иногда и сильно выше. Если, конечно, речь идёт не о лисп-машинах :) (но где сейчас есть железные лисп-машины?...).

NoMad писал(а):
05.05.2007 00:51
Народ, короче взял я книжку How To Design Programs, взял DrScheme и уже к концу второй главы понимаю, что просто влюбился в синтаксис! Это ж даже лучше чем обычная математическая запись! Скобочки и связанная с ним последовательность выполнения операторов - просто сказка! Любовь началась как только они показали работу с функциями - все делается чуть ли не в одну строчку, при этом нет никакой "шифрованности" в стиле perl! Короче, посмотрим, как оно будет дальше, но пока мне очень нравится!
Я и говорю: на аксиоматическую теорию похоже :-) Чем мне в первую очередь и понравилось фп: строго говоря, необходимых атомарных понятий там -- два (собственно атом и список), а необходимых функции -- четыре: car, cdr, cons и cond (получение "головы" и "хвоста" списка, объединение списков и условная конструкция). Всё остальное, строго говоря, реализуемо через эти шесть базовых понятий. (Другой вопрос, что ту же арифметику, примером, особенно не-целочисленную, так реализовывать невыгодно; но -- возможно.) Разве есть ещё хоть одна концепция программирования со столь же компактной базой?..

NoMad писал(а):
05.05.2007 00:51
Народ, короче взял я книжку How To Design Programs, взял DrScheme и уже к концу второй главы понимаю, что просто влюбился в синтаксис! Это ж даже лучше чем обычная математическая запись!
Кстати о математике. Единственная "взрослая" открытая система символьной математики -- Maxima -- полностью написана на лиспе; правда, возможно, что и потому, что когда она начинала писаться, других существующих и поныне языков ещё в природе не было :)
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Первый язык

Сообщение Uncle_Theodore »

t.t писал(а):
06.05.2007 00:01
Шутки шутками, но теоретически да: на лиспе можно написать абсолютно всё.

Все. Не вынесла душа поэта!... :)
Вот тебе задача.
Задача На входе -- алгоритм (закодированный любым способом, какой сам выберешь) и данные, которые будут скормлены этому алгоритму. Определить, закончит ли алгоритм работу на этих данных за конечное время или ему потребуется бесконечное время работы.
Как напишешь (на Лиспе или не на Лиспе), позвони... :D :tongue:
Спасибо сказали:
v04bvs
Сообщения: 636
ОС: Debian GNU/Linux

Re: Первый язык

Сообщение v04bvs »

t.t писал(а):
06.05.2007 00:01
Вопрос только в производительности; на сях она, естественно, для многих задач будет выше, а иногда и сильно выше.

Здесь можно поспорить. Для той же схемы существуют очень сильные компиляторы, которые оптимизируют вещи, на сях не оптимизируемые принципиально. Схема - очень интересный язык, он хоть и лисп, но очень дружественный к компилятору.
Спасибо сказали:
Аватара пользователя
DaemonTux
Сообщения: 1480
Статус: Юный падаван
ОС: Gentoo

Re: Первый язык

Сообщение DaemonTux »

v04bvs писал(а):
06.05.2007 02:20
Здесь можно поспорить. Для той же схемы существуют очень сильные компиляторы, которые оптимизируют вещи, на сях не оптимизируемые принципиально. Схема - очень интересный язык, он хоть и лисп, но очень дружественный к компилятору.

Если на сях чтото нельзя оптемезировать существуют асемблерные вставки
Vladivostok Linux User Group
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Первый язык

Сообщение t.t »

Uncle_Theodore писал(а):
06.05.2007 00:04
Все. Не вынесла душа поэта!... smile.gif
Вот тебе задача.
Задача На входе -- алгоритм (закодированный любым способом, какой сам выберешь) и данные, которые будут скормлены этому алгоритму. Определить, закончит ли алгоритм работу на этих данных за конечное время или ему потребуется бесконечное время работы.
Как напишешь (на Лиспе или не на Лиспе), позвони...
Ну зачем так буквально понимать-то?.. Естественно, под "абсолютно всё" имелось ввиду "...что вообще можно написать хоть на чём-нибудь".

DaemonTux писал(а):
06.05.2007 15:29
Если на сях чтото нельзя оптемезировать существуют асемблерные вставки
Ну, на асме теоретически тоже можно абсолютно всё написать. А практически -- умаешься.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
Phobos
Сообщения: 87
ОС: Debian GNU/Linux Lenny

Re: Первый язык

Сообщение Phobos »

Perl, можно попробовать, имхо очень неплохой язык, немного освоив сразу можно применять на практике, отличная литература на русском (lama book, camel book), многие говорят что у него синтаксис непонятный, а по мне так очень даже ничего :rolleyes: , к тому же ТимТоуди позволяет решить проблему различными методами, что несомненно плюс :rolleyes:
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Первый язык

Сообщение t.t »

Phobos писал(а):
06.05.2007 21:02
многие говорят что у него синтаксис непонятный
И правильно говорят. См. пример выше. Основной недостаток ситаксиса перла, что он не просто позволяет, а прямо-таки подталкивает писать малопонятные программы. Справедливости ради добавлю, что сам я пишу небольшие программки для анализа и обработки текста как раз на перле. Но для _первоначального изучения_ это один из самых неподходящих языков.

Zeus писал(а):
04.05.2007 08:30
Какая поучительная притча smile.gif
А на чём, интересно, были написаны команды, участвовавшие в "конвеере"? biggrin.gif
Это всё-равно, что ВижуалБасикёр, накидавший на формочку ActivX'ов и написавший пару функций отклика на события будет заявлять, что C++ - отстой с лишними наворотами - вот, ВижуалБасик нужно использовать!
Не достигнете вы просветления с таким подходом :) Причём к духу Unix "на чём написаны"? Грепы и сплиты можно при желании на чём угодно переписать, а вот _концепция_ конвейеризации -- это и есть тот самый дух: именно благодаря этой концепции отдельные утилиты становятся независимы друг от друга, и в том числе от того, на каком конкретно языке какая из них написана.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Первый язык

Сообщение diesel »

t.t писал(а):
07.05.2007 15:03
И правильно говорят. См. пример выше. Основной недостаток ситаксиса перла, что он не просто позволяет, а прямо-таки подталкивает писать малопонятные программы.

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

Почему подталкивает тоже слабо пониманию - и в Lama/Camel books внимание акцентируется на вменяемом форматировании, да и на практике чаще всего используется что-то похожее на K&R or Kernel-style форматирование. Спиральки, верблюды, бутылки пива - это for fun, как и перловая "поэзия"
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Первый язык

Сообщение Zeus »

t.t писал(а):
07.05.2007 15:03
Не достигнете вы просветления с таким подходом :) Причём к духу Unix "на чём написаны"?

А причём тут "дух Unix" и вообще языки программирования? =)
Спасибо сказали:
Аватара пользователя
Skladnoy
Сообщения: 90
ОС: Debian

Re: Первый язык

Сообщение Skladnoy »

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

Спасибо, проглядел.

Почему подталкивает тоже слабо пониманию - и в Lama/Camel books внимание акцентируется на вменяемом форматировании, да и на практике чаще всего используется что-то похожее на K&R or Kernel-style форматирование. Спиральки, верблюды, бутылки пива - это for fun, как и перловая "поэзия"

Видимо дело в испорченности человеческой натуры. :rolleyes: Если он сможет написать нечитаемый код, он это сделает. Хотя я вообще не понимаю как вообще можно так писать, я запутываюсь уже на следующий день.
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Первый язык

Сообщение t.t »

diesel писал(а):
07.05.2007 15:13
Почему подталкивает тоже слабо пониманию
Скажем так: на перле значительно проще написать совершенно нечитабельный код, чем, скажем, на питоне. Особенно, не здорово умеючи. Потому и не советую как _первый_ язык.

Zeus писал(а):
07.05.2007 18:34
А причём тут "дух Unix"
При притче. А что?..
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Первый язык

Сообщение diesel »

t.t писал(а):
08.05.2007 16:30
Скажем так: на перле значительно проще написать совершенно нечитабельный код, чем, скажем, на питоне. Особенно, не здорово умеючи. Потому и не советую как _первый_ язык.

а ну да :) поддерживаю в не-совете :)
перебирая в памяти первое прочитанное про Linux вспомнил тут еще одну классику:
http://www.catb.org/~esr/faqs/hacker-howto.ru.htm
там и о последовательности изучения языков неплохо сказано.
Спасибо сказали:
elf74
Сообщения: 482
Статус: Линуксоид-Самовар :)
ОС: Mandriva Power Pack 2008.0 LCE

Re: Первый язык

Сообщение elf74 »

Xenon писал(а):
02.05.2007 20:32
edranovdenis, кстати бытуют мнение, что лучше начинать от сложного к простому asm->C++->C :) Кстати, на мой взгляд лучше начать уж с С++ и не обязательно сразу хвататься за обобщенное программирование и вообще ООП - просто в С++ работа с той же памятью куда гуманнее, чем оная в С (malloc и прочее с указателями void). А тут new и delete - куда понятнее для новичка :) Потоки - тоже проще, на мой взгляд, чем механизм ввода/вывода в С.

Полностью согласен...Сунулся недавно в С (нужно было как раз показать кое-кому кое-какие различия в реализации кое-чего:-))) ), потом сам пожалел о сделанном... чуть не опозорился...
Все же С++ (написан на "более человеческом" (как это ни парадоксально звучало бы) языке...
Это даже не ИМХО - это констатация факта...
Спасибо сказали:
Аватара пользователя
Voice
Сообщения: 1073
Статус: столлманист
ОС: Debian GNU/Linux

Re: Первый язык

Сообщение Voice »

elf74 писал(а):
08.05.2007 21:43
Все же С++ (написан на "более человеческом" (как это ни парадоксально звучало бы) языке...

:)

А я вообще ООП не люблю.
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
Спасибо сказали:
Аватара пользователя
Skladnoy
Сообщения: 90
ОС: Debian

Re: Первый язык

Сообщение Skladnoy »

elf74 писал(а):
08.05.2007 21:43
Полностью согласен...Сунулся недавно в С (нужно было как раз показать кое-кому кое-какие различия в реализации кое-чего:-))) ), потом сам пожалел о сделанном... чуть не опозорился...
Все же С++ (написан на "более человеческом" (как это ни парадоксально звучало бы) языке...
Это даже не ИМХО - это констатация факта...

Так С это всего лишь портабельный ассемблер. Его придумали как замену ассемблеру.
Спасибо сказали: