Вы не можете оставлять посты и комментарии еще 30 минут
13:01
Программирование: Паскаль 
Многие пишут что паскаль устарел. Кто-то может подробно и доходчиво обьяснить, в чем это выражаеться?
13:07
 
В реальной разработке его никто не применяет. Если сразу начнёшь учить питон или С, получишь возможность сразу применить свои знания.
13:13
[ОП]  
Хотелось бы понять почему не применяют. Он чем-то неудобен? Не способен решить какие-то задачи? Пробую в питон, после попыток в паскаль его синтаксис не радует.
13:30
 
У питона самый приятный синтаксис. <div class="quote">Он чем-то неудобен? Не способен решить какие-то задачи? </div> Дело не в языке, а в его экосистеме: сколько библиотек, фреймворков и прочей хуерги на нем написано. Паскаль изначально придуман как язык для обучения студентов.
13:33
 
<div class="quote">Не способен решить какие-то задачи? </div> Начни решать любую задачу и поймёшь, что надо брать другой язык. Можешь потратить несколько лет на изобретение велосипеда на Паскале или обнаружить, что на другом языке умные дядьки уже сделали 90% работы за тебя, осталось только допилить.
12:17
 
в паскале для создания переменной пусть это будет "а", необходимо было: var a:(и указать тип переменной) Далее следует пример из питона number = 15 for a in range(101): if a is number: print(a, "is your number") Есть переменная "а" правильно ли я понимаю, что её вот так просто вписали и она автоматом добавилась и что не нужно указывать её тип?
17:04
 
Вот ещё: _____________________ Питон: def name1(euro): usd = euro*1.06115 print(usd) _____________________ Паскаль: var a,b,c:real; begin a:=1.06115; readln(b); c:=b*a; writeln(b,' euro = ', c, ' usd '); end. __________________________ В паскале я ввожу переменные, указываю их тип как дробные числа, всё предельно понятно. В питоне я создаю функцию, присваиваю ей имя name1(euro), где в скобках имя переменной. Далее создаю переменную usd которая равна указаному далее условию, в котором переменная euro равна указаному мной числу. Ну и вывожу на экран результат. Вопросы у меня такие: 1) Как определился тип переменной euro 2) Куда делся readln и как программа поняла, что мне необходим этот оператор? Я написал это, потому что сформулировав вопрос, над ним лучше думать самому. Но я буду благодарен, если кто-то подскажет.
17:08
 
Да. Тип переменной ты не указываешь, оно само догадывается. Int или float - понимает из контекста. Заебись, да? <div class="quote">number = 15</div> Здесь ты тоже не указывал тип
17:21
 
Бывает приходится указывать тип. Самый простой пример: тебе надо добавить число в строку. stroka = "число партнеров моей мамаши " stroka += str(10000)
17:39
 
Вообще-то я не указал тип, а поменял его на ходу. readln(b) в питоне - это input(b), насколько я понял <div class="quote">Вопросы у меня такие: 1) Как определился тип переменной euro</div> Никак. В приведённом тобой примере евро ещё не приняло никакого значения. <div class="quote">2) Куда делся readln и как программа поняла, что мне необходим этот оператор? </div> Приведеная тобой функция заточена под то, что ее будут вызывать программно, передавая ей переменную евро. Чтобы ввести ее значение из командной строки, можно сделать так: euro = int(input("Enter a number: ")) Если не конвертировать в Int, подучишь строку
17:44
 
Короче типы переменных не указываются. Если интерпретатор не может обработать код из-за разных типов переменных, выдаёт ошибку Попробуй вместо euro = int(input("Enter a number: ")) написать euro = input("Enter a number: ") И поймешь
11:44
 
Выражается в том, что на Паскаль всем похуй
23:29
 
Все тут за синтаксис начали, но дело то совсем не в этом. Сейчас вкратце распишу. 1. Назначение. Паскаль изначально создавался как язык для обучения программированию, для чего, имхо, он отлично и подошел, особенно в семидесятых. Но потом его на нем начали пилить и научные расчеты, и коммерческий софт, а с появлением делфи так и вообще (привет сбертеху). Но для этого он, мягко говоря, не подходит изначально, но писать то можно на всем, хоть на 1с, на брейнфаке, или на петухе. 2. Проприетарность. Инкарнации этого яп как Турбопаскаль и Делфи неразрывно связаны с компанией Борланд, которая постоянно вставляет палки в колеса и вымогает деньги за это говно <s>Вирта</s> мамонта. Серьезно, сегодня так никто не делает, это ненормально, ограничивать разработчиков подобным. Разве что какие-то внутренние языки разработки странных продуктов, как 1С или SAP. 3. Актуальность. Помимо прочего, он морально устарел. Серьезно, он очень устарел, никто сегодня не имеет столько boilerplate кода. Да и IDE у него уродские и ущербные. 4. Парадигма. Язык ориентирован на функциональную парадигму. Она, в принципе, еще кое-как работает на научных вычислениях или на низком уровне (для которого паскаль никто не использует, так как есть c). А для задач бóльшего масштаба требуются более абстрактные и комплексные подходы, основанные, обычно, на объектной парадигме. 5. Синтаксис. Как я уже сказал, в языке невероятно много boilerplate кода. Оно и понятно - он создавался для обучения, а для этого подобная характеристика наоборот <u>нужна</u>, так как учащийся должен понимать внутреннюю "кухню" программы. Хотя он это унаследовал от других не-c-подобных языков того времени, которые тоже отличались подобным дерьмом. В сегодняшних же языках вся низкоуровщина убрана в либы, а многие нефункциональные конструкции убраны внутрь реализации синтаксиса. Многие из них также реализуют различные обертки и синтаксический сахар, что сильно упрощает процесс <u>набора</u> кода, именно его печати, а не разработки. Отличные примеры - python, coffeescript. Это реально печально тратить день-два на написание кода, который просто <u>нужен</u>, чтобы на его основе реализовать нужный тебе бизнес-функционал. По хорошему, должна быть легкая возможность сразу же вынести это в либы или в обертки, в идеале - уже быть реализовано в языке. Опять же пример как <u>надо</u> - python 6. Сообщество. Его нет. Ну, в привычном для нас смысле, если рассматривать физическое существование людей. Если ты столкнешься с проблемой в паскале, то ни гугл, ни stackoverflow, ни сам аллах не помогут тебе найти ответ. Разве что на форуме ветеранов въетнама ты узнаешь, что твоя версия пакета не поддерживается уже 30 лет Как-то так. Если кратко - паскаль был хорош лет 30 (а может и 20) назад, когда хороших и при этом популярных языков было всего несколько, и они все были функциональными. Сегодня это кал, о котором не стоит даже говорить. Я кончил
00:53
 
Паскаль вполне норм язык, просто раньше на нем и на сях писали все подряд, потом прикладной софт и веб разрослись и эволюционировали так что теперь большую часть того и другого пишут уже не на сях и не на паскале, а на каких-то других языках. Си остались в микроконтроллерах и системном программировании, паскаль остался в головах погромистов-математиков как удобный язык для реализации их алгоритмов которым нахуй не вперлась совместимость с современными зоопарками осей и фреймворков. А как язык паскаль очень хорош и сам по себе мощнее питона из-за некоторых низкоуровневых тем, в которые паскаль может а питон нет. Просто для прикладных задач на питоне написано 9000 и портировано столько же библиотек для всего, а паскаль отжил свой золотой век во времена когда про md4 проще было почитать и реализовать самому чем пытаться в тогдашнем интернете гуглить готовое пасквилянтское решение.
08:11
 
Не надо смешивать в кучу строго типизированные компилируемые языки программирования (с++, паскаль) и нетизированные интерпретируемые языки сценариев (питон, яваскрипт). Задачи у них совершенно разные. Паскаль в свое время выгодно выделялся тем, что был единственным ООП языком программирования с полностью контекстно-свободной грамматикой без конфликтов. Это благодаря тому, что он был изначально спроектирован таким образом, а не слеплен из говна и палок, либо мутировал из чего-то совершенно другого, как например с++. Именно это качество делало его таким привлекательным для первоначального обучения. Но на данный момент этим качеством обладают многие мэйнстримные языки программирования, вроде С# и Явы. Так что да, Паскаль устарел.
10:10
 
Спасибо за столь развёрнутые ответы. Прочёл с большим интересом. У меня есть вопрос: def dumb_sentence(name='Bucky', action='ate', item='tuna'): print(name, action, item) dumb_sentence() Ничего не выводит на экран. Хотя я его точно скопировал из учебного материала. Что я делаю не так?
10:10
 
На капче кстати был даун...
14:37
 
После перезагрузки компьютера проблема ушла.
14:53
 
<div class="quote">После перезагрузки компьютера проблема ушла.</div> В следующий раз переустанавливай Шindoшs. Всегда так делаю.
19:28
 

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