LINUX.ORG.RU
ФорумTalks

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

 


0

2

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

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

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

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

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



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

И Столяров больше не учит. Его уволили с началом СВО.

Совпало так или есть связь?

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

А есть ссылки на драму и на кучи гостевых с ютубом? А то я кроме http://www.stolyarov.info/guestbook и не знаю.

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

Ага, и рекурсия ещё хороший детектор

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

Навязывание питона школоте это неслыханное вредительство и вандализм.

Бейсик когда-то примерно тоже самое.

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

Банальное

File.open(...).each_line { |line|
line =~ /(re)(ge)(xp)/
$1...условия...$2...обработка...$3...
}
...
hash.sort_by(|k,v| k).reverse.each{...}


Можно конечно где-то grep/sed/awk выкрутиться (терпеть не могу), или однострочниками. А мне вот так нравится, когда надо текстовый файл разобрать на поля, подсчитать что-то с условиями, формат строк поменять на лету и т.п..

yu-boot ★★★★★
()

смотря с какого уровня учиться..если совсем-совсем школа, то

  • pascal (базовое программирование вообще),

  • matlab/scilab (чтобы потом считать/чертить/моделить) - большой численный калькулятор для смежных предметов.

  • опционально maxima - аналогично большой символьный калькулятор

всякие JavaScript Python C/C++/C# под большим вопросом. Они большинству в жизни нафик несдались и нигде не пригодятся

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

Можно. Но, в С обёрток над асмом понапридумывали, можно без вставок. Прерывания, например, дёргать. Но, со вставками проще.

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

Pascal хорош, но он научит только структурному и модульному программированию. Сегодня этого мало.

Поэтому python - в рамках одного языка можно научится структурному, модульному, ооп, функциональному программированию.

Си, asm тоже надо учить но не сразу. :)

cylon17
()

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

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

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

Поэтому python - в рамках одного языка можно научится структурному, модульному, ооп, функциональному программированию.

В питоне своё уличное ООП, а уж от ФП только сахар для передачи функций (которые не функции). Научиться тут можно только антипаттернам и основам быдлокодинга.

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

Немецкий.

Почему? Я бы выбрал французский, но не выберу ибо сложный шо сибирский пушистик. На основе французского много языков появилось, поэтому имхо он более актуален нежели немецкий. Ну и дополнительный бонус «уважение со стороны носителей»

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

Здесь, в Берлине, немецкий нужнее.

Есть такая буква.

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

10 лет назад тут на 300т русских было 70т арабов. Количество арабов с тех пор увеличилось. Так ведь и русских тоже.

ugoday ★★★★★
()

ЛОР овец выбирает питончик

Goury ★★★★★
()

Для обучения

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

Какое значение это может иметь для обучения?

поддерживать shebang

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

Короче, бери для обучения Python или C (не C++). Если хочется хардкора, можно ассемблер, если пофиг на де-факто мёртвость, можно Pascal. А уже после того, как выучишь, поймёшь, какие требования тебе на самом деле нужны, а не вот этот вот карго-культ.

P.S. Haskell тоже можно. Ничего в нём сложного для изучения нет, просто тем, кто уже выучил императивщину и ООП, функциональщина может казаться какой-то странной и чужеродной. Если мозг заточен хорошо под математику (функан, матан, теория множеств и т.д.), то Haskell будет учить как раз легко и приятно.

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

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

Контрпример:

$ cat script.cl 
#!/usr/bin/env -S sbcl --script
(write-line "😻")
$ ./script.cl 
😻
ugoday ★★★★★
()
Ответ на: комментарий от ugoday

Ну да, я добавил «скорее всего».

Просто эта совокупность требований довольно странна, особенно для обучения.

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