LINUX.ORG.RU
Ответ на: комментарий от upcFrost

Она в спецтехнике используется просто потому что для этого изначально создавалась. А так это очень качественный язык высокого уровня. Но он и для обучения будет хорош. Получаемые тексты программ как и средства разработки кроссплатформены. «Первая программа» по сложности такая же как на Паскале. Необъяснимых строк класса «так надо» практически нет. Синтаксис паскалевский. По большому счёту даже упражнения в учебниках особо переписывать не надо. Местами ключевые слова переименовать и всё. А строгая типизация сразу приучает программировать алгоритмически правильно и задумываться над тем, что пишешь. К тому же в !стандарт! включена куча всяких вкусностей от работы с командной строкой и матричных операций на основе BLAS/LAPACK до многозадачности (модель рандеву, защищённые модули) и аналога STL. В общем при решении не узкоспециальных задач (школьных, вузовских, научных, околопромышленных) с помощью Ады вряд ли упрёшься в какое-нибудь ограничение со стороны применяемого инструмента, что при обучении очень важно. Вообще Ада, как и Паскаль - такой ЯП, изучение которого по сложности не превратится в самоцель, но при этом его возможностей хватает для решения очень широкого круга задач. При обучении реально не хватает только паскалевских CRT и GRAPH с их очень низким порогом входа в графику и украшательства. Можно конечно биндинги использовать, но это уже чревато необъяснимыми конструкциями в коде и «скопируйте с сервера вот эти файлы себе в каталог».

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

>как раз С думать разучает

Ну хорошо, тогда ассемблер. Под какую-нибудь хитровыделанную архитектуру.

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

>Попытка зделать язык более высокого уровня да такой что порой на C легче написать чем на нём.

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

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

>Да посмотри на типичного сишника - думают об указателях и стеках а не об алгоритмах и данных

*с сомнением посмотрел на себя* =)

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

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

>Ну хорошо, тогда ассемблер.

Ассемблер хорош только в самом начале, для детей до 15 лет. Мышление у детей конкретное так что ассемблер хорошо пойдет

Под какую-нибудь хитровыделанную архитектуру.


в деццтве писал под мк-61, обратная польская нотация, память 115 байт для программ, 16 регистров для данных, стек на 5 регистров

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

>Ассемблер хорош только в самом начале, для детей до 15 лет

Ну вот мне он сейчас на работе пригождается. ЧЯДНТ?

в деццтве писал под мк-61


Я под пикмикро писал когда-то.

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

>В школе надо обучать алгоритмам, а не конкретным языкам.

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

DNA_Seq ★★☆☆☆
()

В сознании 99% школьников CS - это не Computer Science, а Counter Strike. Отсюда вывод: никакой. 12летняя школьная программа придумана как раз для этих даунов. Вообще я предлагаю им до пенсии в школе сидеть. Глядишь, работодатели начнут ценить труд нормальных специалистов.

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

>Што? В питоне строгая типизация. Строгая и динамическая.

epic. Что посоветуете почитать, кроме википедии и страницы с объяснением why Python is a strongly typed dynamic language?

Имелось в виду что. Переход C/java => перл/питон легко дается, а обратно?

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

>брейнфак чтоб понимали как машина тьюринга работает

Тогда уж симулятор МТ с лентой.

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

>> Что посоветуете почитать, кроме википедии и страницы с объяснением why Python is a strongly typed dynamic language?

Не знаю, я это читал в Dive Into Python :)

Имелось в виду что. Переход C/java => перл/питон легко дается, а обратно?

Не для всех :) После строгой статической типизации альтернативы могут вызвать неприязнь — у меня так и было.

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

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

Какой бред, причём тут PDP-11? Попробуй написать на паскале unix ядро, причём под современную архитектуру, может тогда до тебя дойдёт что язык это совсем другого уровня.

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

>Попробуй написать на паскале unix ядро

А попробуй написать на си, время пошло =)

может тогда до тебя дойдёт что язык это совсем другого уровня.


что есть в си такого что нет в паскале? Указатели есть, прямой доступ к памяти есть, структуры есть и тд и тп

DNA_Seq ★★☆☆☆
()

Паскаль ничем не плох для старта. Можно бэйсик.

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

Я помню свою ломку при переходе с Паскаля на Си, но эта ломка немало дала. Сейчас синтаксис меня заморачивает куда меньше, чем используемые алгоритмические вещи и структуры данных.

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

Perl combines the power of sh, the clarity of sed, and the performance of awk with the simplicity of C

Нельзя соединить противоречивые вещи. И perl тому яркое подтверждение.

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

> а если серьезно, то схема по первым главам SICP была бы отличным вариантом

а до этого «маленький схемер» того же автора.

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

я бы предложил не до пенсии в школе, а с 6 класса трудовую практику на производстве. ВАЗ все равно трудно испоганить сильнее, а так хоть научатся

upcFrost ★★★★★
()

В школе нужно делать упор на алгоритмы

Голова новичка кроме алгоритмизации больше ничем не должна быть занята. Ни типами, ни указателями, ни выделением памяти, ни разнообразием механизмов.

Элементарный очеловеченный синтаксис и динамическая типизация.

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

задача N1: запросить имя у школоло (Вася) и сказать ему «Привет, Вася!»
задача N2: запросить два числа и вывести их сумму
задача N3: запросить 5 любимых имен и вывести их отсортированные по алфавиту, хранить имена в базе
задача N4: реализовать прыгающий мяч, при ударе о «землю» мяч должен издавать звук

Попробуйте написать код на Бейсике, Паскале, Си, Лиспе, Питоне, Руби и других своих любимых языках. А теперь представьте что я - школьник, которому похрен ваще на все, и попробуйте мне объяснить :)

Имхо, проще всего для школьника материал будет даваться на Ruby или Бейскике.

P.S. А вот если ребенок уже всерьез заинтересуется, то давать ему Паскаль, Си, Питон. И эти языки уже преподавать после школы.

Novator ★★★★★
()

Python:
1. Он простой
2. Он логичный
3. Он приучает к правильному форматированию кода
4. Он современен и развивается
5. Он вполне может пригодиться

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