LINUX.ORG.RU
ФорумTalks

Для обучения, подходящий язык программирования

 


0

2

Собственно требования:

  • язык должен быть написан на самом себе
  • поддерживать shebang
  • REPL

из быстрогугла вынес Racket/Scheme/SBCL, Haskell, OCaml, D - первый вроде отлично подходит для обучения, но синтаксис ужасный, хаскел кажется более читабельным, но везде говорят мол сложный язык, не для простолюдинов. По окамлу и ди мало литературы, с математикой не особо дружу(

А какой бы ты, ЛОРовец, выбрал язык для обучения, помимо анлийского, на заре своей карьеры?

ПС: киньте книгой-ссылкой на материал относящийся к теме, безотносительно самого языка программирования



Последнее исправление: coceg (всего исправлений: 2)

язык должен быть написан на самом себе

Да, это очень важно, особенно для обучения

goingUp ★★★★★
()

Чё тут думать, схема для обучения тащит. SICP, How to Design Programs, Little Schemer, Seasoned Schemer, Reasoned Schemer — учись не хочу, и знания эти потом пригодятся, на каком бы лиспе языке ты потом ни писал.

В разных императивно-объектных болотцах, конечно, тоже придётся поплюхаться, для общего понемания.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 4)

А какой бы ты, ЛОРовец, выбрал язык для обучения, помимо анлийского, на заре своей карьеры?

Немного Ассемблера, потом Си, потому что самые кросс-платформенные. Полирнуть Лиспом для расширения кругозора и для REPL.

Этого достаточно. В большинстве все языки, что вы перечислили, написаны не на самих себе, а либо на Сишке или на Лиспе.

киньте книгой-ссылкой на материал относящийся к теме, безотносительно самого языка программирования

Переиздание книг Столярова по программированию

mydibyje ★★★★
()

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

Syncro ★★★★★
()
Ответ на: комментарий от alex1101

Только читать надо Страуструпа, а не всяких индусов

alex1101
()
Ответ на: комментарий от alex1101

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

coceg
() автор топика
Последнее исправление: coceg (всего исправлений: 1)
Ответ на: комментарий от coceg

Ну тогда хз, только Python, хотя по мне он только пудрит мозги синтаксическим сахарком. Если начнёшь с Питона, скорее всего долго будешь воспринимать программирование как набор малопонятных ритуалов.

alex1101
()
Ответ на: комментарий от alex1101

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

coceg
() автор топика

хаскел кажется более читабельным

Если для тебя это так, бери его, не пожалеешь.

ddidwyll ★★★★
()
#!/usr/bin/mono /utils/shilo/csslinux.exe
Imports System
Module MainModule
    Sub Main()
        dim EtoTamGgeDim as new ImennoTakClass("The BEST PL.")
        Console.WriteLine("Hello World from VB.NET!")
    End Sub
End Module
sanyo1234
()
Ответ на: комментарий от sanyo1234

Сейчас уже вроде даже есть вариант без Module и Sub типа как в питоняко-баше.

sanyo1234
()
Ответ на: комментарий от sanyo1234

Btw., REPL в VB появился еще в середине 90-х, т.е. примерно 30 лет назад.

sanyo1234
()

болт на требования высосанные.

учи flutter.

olelookoe ★★★
()
Ответ на: комментарий от coceg

дамаю Lua посмотреть, слышал что простой

Правильнее было бы сказать – убогий.

pr849
()

подходящий язык программирования

Русский + математика, всё остальное ChatGPT делать должОн .

quickquest ★★★★★
()

Вообще говоря, сначала лучше перетыкать как можно больше всего — языков, систем сборки, докеров-шмокеров и прочего —хотя бы на уровне хеллоуворлдов (не забывая, конечно, складывать результаты куда-нибудь на гитлаб, чтобы всегда можно было вернуться и освежить понемание). Теория без практики заходит туго и ненадолго.

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

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)

JavaScript он везде, все им пользуются, REPL включается по Ctrl+Shift+I в любом браузере.

MOPKOBKA ★★★★★
()

Массово бы учил Python, факультативно C, C++, Ocaml. Просто потому, что большинство учеников всё равно не станет программистами, а с питоном хоть какой-то полезный для жизни навык останется. Можно сразу Jupyter как продвинутый калькулятор показать.

snizovtsev ★★★★★
()

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

Сначала определяем область применения и задачи, а потом всё-равно для обучения выбираем что-то из тройки pascal, js, python. И это серьёзно, на js даже функциональную парадигму изучают.

vvn_black ★★★★★
()

Си, потом Луа. Можно и наоборот.
Но у меня карьеры нету, тут это стоит уточнить. Удобные языки для себя, для всего и вся.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)

Я буду банален, нужно начинать с Pascal, у него есть структура: блок объявления переменных и блок реализации, В C++ этого нет и может быть хаос и неразбериха в процессе обучения.

xwicked ★★☆
()
Ответ на: комментарий от alex1101

Столяров сам работает программистом или он только учит?

Только учит. Рекомендую посетить его сайт) Там есть всякое интересное http://www.stolyarov.info/guestbook/archive/2#comment-1535

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)

Scheme

И книга «Структура и интерпретация компьютерных программ» (Абельсон, Сассман)

sn4il
()

Интересно откуда эти требования? Сам обучаться хочешь или обучать кого-то?

А какой бы ты, ЛОРовец, выбрал язык для обучения, помимо анлийского, на заре своей карьеры?

Когда-то мне казалось под влиянием адептов функциональщины, что только SICP, только вот это все.

Сейчас думаю, что не надо забывать о том, что все компьютеры, с которыми мы работаем внутри себя императивные. И все в конечном итоге в них сводится к императивщине.

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

Так вот, из этих соображений выбрал бы или Си или Паскаль (современные диалекты конечно). Си - практичнее, но изучать сложнее, особенно если захотеть еще и ООП прихватить, т.е. фактически C++ знать. Паскаль - академичнее, легче в обучении, но сейчас мало востребован. Я бы таки с Паскаля в инкарнации FreePascal обучал. При этом походу обучения еще и вкратце с ассемблером познакомил, чтобы знали что под «капотом», в конце-концов находится. В отличие от Си в Паскаль все-таки проще въезжать, меньше грузит мозг абсолютно ненужными на этапе обучения подробностями.

А SICP с Lisp/Scheme или Python и после этого можно. Хотя некоторые считают, что оно первым языком лучше всего зайдет.

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

praseodim ★★★★★
()
Последнее исправление: praseodim (всего исправлений: 1)

А какой бы ты, ЛОРовец, выбрал язык для обучения

Васик, однозначно и не имеет.

anc ★★★★★
()
Ответ на: комментарий от aiqu6Ait

Pascal уже писали?

Вроде нет, но годный вариант!

anc ★★★★★
()
Ответ на: комментарий от vvn_black

Сначала определяем область применения и задачи

Судя по посту ТС, основное применение - троллинг на ЛОРе.

seiken ★★★★★
()

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

chenbr0
()
Ответ на: комментарий от alex1101

Столяров не работает программистом и никогда им не работал. У него есть пара пет проектов (начала-середины 90х годов), которые он почему-то называет промышленным программированием. А еще у него есть (был?) интернет-магазин микроконтроллеров, к которым он собственноручно писал каких-то пару софтин, которые вместе с контроллерами и поставляются, но только в виде исходных кодов (по законам жанра, эти софтины невозможно собрать без танцев с бубуном в полную луну).

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

И Столяров больше не учит. Его уволили с началом СВО. Сейчас он только сходит с ума в своих гостевых и на своем ютуб канале (который у него тоже переехал в его вторую гостевую).

javascript
()
Последнее исправление: javascript (всего исправлений: 4)
Ответ на: комментарий от praseodim

И встречал мнение, что если программист не может в указатели, это не программист и ему лучше, чем-то другим в жизни заняться.

Ага, и рекурсия ещё хороший детектор. Поэтому функциональщина имеет смысл при обучении, а про питон и т.п. лучше сразу забыть. Навязывание питона школоте это неслыханное вредительство и вандализм. Вероятно это делают ради инклюзивности, чтобы альтернативно одаренные тоже могли приобщаться к IT. Вот только заодно и нормальным студентам мозги засирают.

bread
()

Ассемблер же.

tiinn ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)