Здравствуйте, VladD2, Вы писали:
INT>>Ну, в Caml все практически так же... И без извратов с identами
VD>Уж Окамл точно не стоит в качестве первого языка брать.
Возможно. Это в значительной степени зависит от того, чему ты хочешь научить. А начинать можно хоть с Исполнителя Черепашки Или с bash, если идти по пути пользователь — продвинутый пользователь — программист.
И еще, не стоит, все-таки, давать нетипизированный язык в качестве первого "профессионального" языка.
Здравствуйте, VladD2, Вы писали:
INT>>Я не уверен, что хочу начинать с объектного. И тем более не уверен, что я хочу останавливаться на объектах в том виде, в котором их представляет C#.
VD>Ну, сам понимашь, что на Окамле точно никто начинать учить не будет.
VD>И кстати, что тебе не нравится в Шарпе с точки зрения ООП?
То же, что и в Яве, то, что в нем объектом приходится делать даже то, что объектом не является. Из-за этого в нэокрэпшем мозгу ученика искажается само понятие объекта.
Здравствуйте, INTP_mihoshi, Вы писали:
VD>>И кстати, что тебе не нравится в Шарпе с точки зрения ООП?
INT>То же, что и в Яве, то, что в нем объектом приходится делать даже то, что объектом не является. Из-за этого в нэокрэпшем мозгу ученика искажается само понятие объекта.
P.S. Вообще, пожалуй, это и может быть критерием: язык (или языки) для обучения должен позволять обучать концепциям и методам программирования, а не своим личным языковым квиркам (т.е. особенностям).
Здравствуйте, INTP_mihoshi, Вы писали: INT>То же, что и в Яве, то, что в нем объектом приходится делать даже то, что объектом не является.
Во как интересно. Например, что? INT>Из-за этого в нэокрэпшем мозгу ученика искажается само понятие объекта.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, LaptevVV, Вы писали:
LVV>>
главный язык программирования — т.наз. C# — смоделирован во многом, в том числе и в отношении безопасности программирования, по образцу Оберона.
LVV>>
VD>Да тут ничего смешного то нет. И слова эти чистая правда. Шарп и Оберон действительно языки в которых типобезопасноать выведена на первое место. Разница межу ними только в том, что Шарп жив, а Оберон остался научным эксперементом. Как результат этого научного эксперемента тот же Шарп получил прекрасную систему типов и принцыпы работы с ними. Заслуга ребят из МС в том, что они сумели совместить удобство и типобезопасность.
Не, заслуга ребят из MS только в том, что они из MS — был бы Вирт в MS, еще неизвестно, какой язык был бы живым, а какого даже в проекте не было б.
С# жив только потому, что его не в академических кругах написали, а самая мощная корпорация — так с любым языком будет. Возьмется MS Oberon продвигать, и куда остальные с подводной лодки денуться?
Потому и смешно.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, Зверёк Харьковский, Вы писали:
ЗХ>>>Кстати, если серьезно. Есть идея написать "сравнительную" статейку по куче языков. Причем сравнительную не в смысле "язык А лучше тем что ..., а язык Б вообще говно", а, скажем так, расширяющую сознание. Идея — ответить на вопрос "я уже знаю то, это и еще вот это вот, на что еще можно посмотреть?"
ЗХ>Но про статью эту я думаю давно. И в первой части хотел рассмотреть только языки императивной парадигмы — но такие, что отличаются от C++/Java/C#, Pascal/Delphi/Modula/Oberon и VB — с этими, вроде как, большинство из нас сталкивалось.
ЗХ>>>Каково? Я бы взялся... если бы ее в бумажный журнал... "Очень я это богатство люблю и уважаю" (с) Падал прошлогодний снег ЗХ>Вот на эти вопросы я и хотел (очень вкратце) ответить в статье.
ЗХ> ЗХ>Языки примерно такие думал брать: ЗХ>Ada ЗХ>Eiffel ЗХ>Forth ЗХ>Oz ЗХ>Smalltalk ЗХ>(что еще подкинете, может быть?) ЗХ>+ ЗХ>скриптовые, в которых есть интересеные (для меня) подходы: ЗХ>Perl ЗХ>Python ЗХ>Tcl ЗХ>+ ЗХ>есть такое желание, но пока не копал — всякое старье, с которым я, за малостью лет, не сталкивался: ЗХ>PL/I ЗХ>Fortran ЗХ>Simula
Отнюдь! Fortran достаточно широко используетс, даже в России. Книжки в Диалог Мифи вышли несколько штук. А по Simula советую просто прочитать — понятно станет, откуда у С++ ноги классов растут. Я дома посмотрю — книжка в старой Библиотечке программиста выходила по Simula-67.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, VladD2, Вы писали:
VD>В общем, если что готов помочь в создании тулзов для урощения обучения или советом.
Большой Катта рахмат! Если что — непременно!
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, Зверёк Харьковский, Вы писали:
ЗХ>Здравствуйте, VladD2, Вы писали:
ЗХ>>>Кстати, если серьезно. Есть идея написать "сравнительную" статейку по куче языков. Причем сравнительную не в смысле "язык А лучше тем что ..., а язык Б вообще говно", а, скажем так, расширяющую сознание. Идея — ответить на вопрос "я уже знаю то, это и еще вот это вот, на что еще можно посмотреть?"
VD>>Для начал нужно познакомить массы с мало извесными им парадигмами. А то ведь как можно сравнивать, если даже на сам принцип смотришь как баран на новые ворота. Вот тут Предлагаю запутить статью — "введение в функциональный стиль
я предлагаю всем миром создать статейку цель которой знакомство людей с функциональной парадигмой. Думаю, что как побочный эффект может получиться и знакомство с разными языками. На примерах всегда учиться было удобно. Так что присоеденяся. ЗХ>То само собой. Я, что характерно, вроде присоединился ЗХ>Но про статью эту я думаю давно. И в первой части хотел рассмотреть только языки императивной парадигмы — но такие, что отличаются от C++/Java/C#, Pascal/Delphi/Modula/Oberon и VB — с этими, вроде как, большинство из нас сталкивалось.
ЗХ>>>Каково? Я бы взялся... если бы ее в бумажный журнал... "Очень я это богатство люблю и уважаю" (с) Падал прошлогодний снег VD>>Как бы не вышел просто флэйм. Ну, и см. выше. ЗХ>Так я специально уточнил, что не собираюсь сравнивать. Просто (лично мне, как минимум) интересно копаться в незнакомых языках, в попытках понять: что это? почему он такой? чем он хорош? какие он дает новые возможности/ограничения? ЗХ>Вот на эти вопросы я и хотел (очень вкратце) ответить в статье.
ЗХ> ЗХ>Языки примерно такие думал брать: ЗХ>Ada ЗХ>Eiffel ЗХ>Forth ЗХ>Oz ЗХ>Smalltalk ЗХ>(что еще подкинете, может быть?) ЗХ>+ ЗХ>скриптовые, в которых есть интересеные (для меня) подходы: ЗХ>Perl ЗХ>Python ЗХ>Tcl ЗХ>+ ЗХ>есть такое желание, но пока не копал — всякое старье, с которым я, за малостью лет, не сталкивался: ЗХ>PL/I ЗХ>Fortran ЗХ>Simula
ЗХ>вот где-то так. ЗХ>
ЗХ>Предложения, ясен корень, приветствуются. Крики "нахрен это надо?" и "да пошел ты, умник!" — игнорируются.
Т.е. берём только императивщину?
Однобокий взгляд будет, имхо
VD>Кстати, интересно а эта программа "ИНФОРМАТИКА-21" кем была запущена? И кто ее развивает? Ну, не часная же это инициатива? А то на сайте ничего тайти не удается. Так же интересно как это все связано с министерством образования?
Здравствуйте, LaptevVV, Вы писали:
ЗХ>>есть такое желание, но пока не копал — всякое старье, с которым я, за малостью лет, не сталкивался: ЗХ>>PL/I ЗХ>>Fortran ЗХ>>Simula LVV>Отнюдь! Fortran достаточно широко используетс, даже в России. Книжки в Диалог Мифи вышли несколько штук.
Вот как знал, как чувствовал, что кто-то сейчас это скажет!
Да знаю я. А отнес его к старью несколько произвольно — концепции-то все древние.
Вы, Валерий Викторович, лучше еще языков присоветуйте
LVV>А по Simula советую просто прочитать — понятно станет, откуда у С++ ноги классов растут.
Ну, в Дизайне-Эволюции об этом, кажись, совершенно однозначно сказано.
LVV>Я дома посмотрю — книжка в старой Библиотечке программиста выходила по Simula-67.
Да вообще хорошо бы литературы где-нибудь надергать про древние языки... Тем более для книжки мне это точно понадобится.
А то начал давеча в инете про PL/I рыть — дык фигушки, в общем-то...
Здравствуйте, Курилка, Вы писали:
VD>>>...Для начал нужно познакомить массы с мало извесными им парадигмами.... ЗХ>>...в первой части хотел рассмотреть только языки императивной парадигмы
К>Т.е. берём только императивщину? К>Однобокий взгляд будет, имхо
Здравствуйте, VladD2, Вы писали:
VD>Это что ящик? Нет? Ну, тогда будет тяжеловато показать пальцем. А вот на пространство имен легко. Оно же выражается синтаксической конструкцией.
А это что:
MODULE MyModule;
END MyModule.
не синтаксическая конструкция? Модуль вполне можно локализовать как синтаксически, так и физически (единица компиляции и единица исполнения). А пространство имен локализовать нельзя, оно размазано по куче файлов. А для того чтобы показать пальцем надо именно локализовать.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Сергей Губанов, Вы писали:
СГ>>Между модулями и классами-то?
VD>Да. Для начального понимания разницы почти не какой. Та же область определения методов и переменных.
Ну вот, правильно, типичный принцип сокрытия "сокровенных знаний"....
А разница между прочим на столько громадна, что даже не смешно. Перво-наперво надо объяснить КУДА писать исходный код программы. Модуль — это и есть то самое место куда надо писать исходный код программы, в том числе код классов надо писать внутрь модуля. Но Вы, будучи воспитанными на немодульных языках программирования, этого не знаете и код программы Вы пишите просто в текстовый файл.
Здравствуйте, Сергей Губанов, Вы писали:
СГ>Оберон#1 — это ОО ассемблер. Вы же не будете говорить, что ассемблеры это убожества.
Я просто не понимаю, какой именно язык ты пытаешься противопоставить C# вот в этой ветке
Здравствуйте, Сергей Губанов, Вы писали: СГ>Ну вот, правильно, типичный принцип сокрытия "сокровенных знаний"....
СГ>А разница между прочим на столько громадна, что даже не смешно. Перво-наперво надо объяснить КУДА писать исходный код программы. Модуль — это и есть то самое место куда надо писать исходный код программы, в том числе код классов надо писать внутрь модуля. Но Вы, будучи воспитанными на немодульных языках программирования, этого не знаете и код программы Вы пишите просто в текстовый файл.
Гм. А можно критерии отличия текстовых файлов от модулей? А то я может, по незнанию, совсем не туда код-то пишу...
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Sinclair, Вы писали:
S>Не факт, что это достоинство. Фактически, это означает необходимость везде использовать Fully Qualified Names. В среде с развитыми библиотеками это привело бы к идентификаторам кошмарной длины. Как вам имя класса System.Data.SqlClient.SqlConnection?
Фигня. Бывает и покруче. Например:
System.Runtime.Remoting.Channels.Tcp.TcpServerChannel
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
System.Runtime.InteropServices.CustomMarshalers.EnumeratorToEnumVariantMarshaler
System.EnterpriseServices.CompensatingResourceManager.ApplicationCrmEnabledAttribute
И, наконец, рекордсмен в 1.1
System.Windows.Forms.ComponentModel.Com2Interop.GetTypeConverterAndTypeEditorEventHandler
2.0 в этом плане естественно более продвинут
Microsoft.Internal.Deployment.Isolation.Manifest.CMS_ASSEMBLY_REFERENCE_DEPENDENT_ASSEMBLY_FLAG
Здравствуйте, Sinclair, Вы писали:
S>Здравствуйте, Сергей Губанов, Вы писали:
СГ>>Оберон#1 — это ОО ассемблер. Вы же не будете говорить, что ассемблеры это убожества. S>Я просто не понимаю, какой именно язык ты пытаешься противопоставить C# вот в этой ветке
? На каком именно из этих плодов гибридного скрещивания ты предлагаешь обучать детей?
На Component Pascal естественно, даже не просто на нем, а на нем в (бесплатной) компонентной среде разработки и исполнения программ BlackBox от Oberon Microsystems, исходный код который обещали открыть к концу 2004 года. Именно Компонентному Паскалю посвящен проект Информатика 21
Здравствуйте, Зверёк Харьковский, Вы писали:
ЗХ>Да знаю я. А отнес его к старью несколько произвольно — концепции-то все древние. ЗХ>Вы, Валерий Викторович, лучше еще языков присоветуйте
Давай, я в воскресенье посмотрю — и список пришлю. LVV>>А по Simula советую просто прочитать — понятно станет, откуда у С++ ноги классов растут. ЗХ>Ну, в Дизайне-Эволюции об этом, кажись, совершенно однозначно сказано.
Не, одно дело сказано, а другое — посмотреть синтаксис и конструкции. LVV>>Я дома посмотрю — книжка в старой Библиотечке программиста выходила по Simula-67. ЗХ>Да вообще хорошо бы литературы где-нибудь надергать про древние языки... Тем более для книжки мне это точно понадобится. ЗХ>А то начал давеча в инете про PL/I рыть — дык фигушки, в общем-то...
Еще помотри PL/C и PL|86
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, LaptevVV, Вы писали:
ЗХ>>Вы, Валерий Викторович, лучше еще языков присоветуйте LVV>Давай, я в воскресенье посмотрю — и список пришлю.
Буду спасибо.
LVV>>>А по Simula советую просто прочитать — понятно станет, откуда у С++ ноги классов растут. ЗХ>>Ну, в Дизайне-Эволюции об этом, кажись, совершенно однозначно сказано. LVV>Не, одно дело сказано, а другое — посмотреть синтаксис и конструкции.
Не спорю. Я просто к тому. что откуда ноги растут — я и так примерно прикидываю
LVV>>>Я дома посмотрю — книжка в старой Библиотечке программиста выходила по Simula-67. ЗХ>>Да вообще хорошо бы литературы где-нибудь надергать про древние языки... Тем более для книжки мне это точно понадобится. ЗХ>>А то начал давеча в инете про PL/I рыть — дык фигушки, в общем-то... LVV>Еще помотри PL/C и PL|86
Угу, спасибо. Но это наверное уже не для статьи (там не хочется особо на ископаемых зацикливаться)
А для книжки посмотрю обязательно. Хотя информация, которую надо просмотреть, растет в геометрической прогресии...