Реліз Python 3.6 — так, тепер він з нами



Минуло 15 місяців, і нарешті світ побачив реліз мови програмування Python 3.6. Нового досить багато, адже не дарма розробники чекали цілих 15 місяців. У релізі додані нові модулі, оновлено стандартні бібліотеки, поліпшені набори різних налаштувань. В цілому, Python 3.6 отримав багато поліпшень, що можна вважати відмінним подарунком до Нового Року. Давайте подивимося докладніше, що приніс нам Дід Мороз новий реліз.

Читати далі →

Персона. Джон Бэкус — творець першої мови програмування високого рівня

image

17 жовтня 1977 року на щорічній конференції АСМ премія Алана Тюрінга була вручена людині, який створив перший високорівнева мова програмування для наукових і технічних цілей.

Премія була присуджена Джону Бэкусу «… за глибокий і важливий внесок у створення практичних систем програмування високого рівня. Особливо – за роботи по Fortran і часті публікації формальних процедур для специфікації мов програмування».

У 50-х роках ХХ століття працю програміста з написання, введення і відладці програм був далеко не легким: спочатку програми писалися на машинній мові.

Для полегшення долі програмістів були придумані підпрограми, а потім перші ассемблеры. Але ефективність програмування від цього суттєво не підвищилась. Якщо б хтось міг написати транслятор, який дозволив би вводити команди з слів і символів, а потім автоматично конвертувати їх в машинний код…
Читати далі →

Пишемо свою мову програмування без мам, тат і бізонів. Частина 0: теорія

Тема написання свого ЯПа не дає мені спокою вже близько півроку. Я не ставив перед собою мету "вбити" CoffeeScript, TypeScript, ELM, тисячі їх, я просто хотів зрозуміти кухню і як вони взагалі пишуться.
До мого неприємного здивування, більшість з цих мов використовують Jison Bison JavaScript), а це не зовсім потрапляло під моє завдання — "зрозуміти", так як по суті справи Jison робить все за вас, збирає AST за заданими вами правилами (Jison як такий чудовий інструмент, який робить за вас левову частку роботи, але зараз не про нього).
зрештою я методом проб і помилок (а якщо сказати точніше, читання статей і реверс інжинірингу) навчився писати свої повноцінні мови програмування від розбиття вихідного тексту на лексеми до його трансляції в JS код.
Варто зауважити, що дане керівництво не прив'язане до JavaScript, він обраний виключно з міркувань швидкості розробки і читання, так що ви можете написати свій "лисп"/"пітон"/"ваш абсолютно новий синтаксис" на якому знайомому вам мовою.
Також до моменту написання компілятора (в нашому випадку транслятора), процес написання мови не відрізняється від процесів створення мов компилируемых ASM/JVM bitcode/LLVM bitcode/etc, а це означає, що дане керівництво не обмежується створенням мови трансляцируемого JavaScript.
Весь код, який буде написаний в даній (і наступних статтях), лежить на Github'е. Тегами позначені початок і кінці статей для зручності.

Читати далі →

Персона. Гвідо Ван Россум — творець Python

image

Гвідо ван Россум відомий як творець мови Python. З моменту створення мови Гвідо багаторазово нагороджувався різними преміями. У 2001 році він отримав нагороду за внесок у розвиток вільного програмного забезпечення від 'Free Software Foundation', а в травні 2003-го удостоївся премії 'NLUUG Award". У 2006 році йому присвоїли звання Видатного Інженера.

Вільний від роботи час Гвідо приділяє сім'ї та самоосвіти. Він великий фанат серіалу 'Літаючий цирк Монті Пайтона' (Monty python's Flying Circus), саме в честь цього шоу і було названо мову програмування Python.
Читати далі →

Персона. Андерс Хейлсберг – творець Turbo Pascal, Delphi і C#


«Я написав величезну кількість корисних програм. І зовсім небагато непотрібних»

У деяких людей є потреба створювати щось нове. Коли ця потреба реалізується повною мірою, з'являються твори мистецтва, наукові відкриття, проривні технології. Такою людиною є Андерс Хейлсберг, творець Turbo Pascal, Delphi і C#.

Для багатьох студентів Вузів Turbo Pascal досі залишається першою мовою, з якого починається знайомство з програмуванням. У свій час він був своєрідним проривом у розробці програмного забезпечення. Недарма «в народ» пішов не Pascal, а саме Turbo Pascal.

Однак Хейлсберг на цьому не зупинився. Завдяки його незгасну потреби створювати нове з'явилися Delphi і C#. Тому для багатьох Андерс є одним з «супергероїв» ІТ-індустрії.
Читати далі →

Hello, езотерика

Хтось заради жарту, хтось щоб довести існування або спростувати гіпотезу, хтось для розминки мізків (подорожуючи по поверхні пляшки Клейна або в чотиривимірному просторі), але сотні людей створили «езотеричні» мови програмування. Я переглянув близько 150 таких мов і більше ніколи не зможу бути колишнім.



«Argh!», «Oof!», «2-ill», «Nhohnhehr», «Noit o' mnain gelb», «DZZZZ», «Ypsilax», «YABALL», fuckfuck — це заклинання, — поезія тільки назви… під катом — приклади коду на самих вырвиглазных мовах програмування.

Кроляча нора глибока.

Читати далі →

Істина, яка народилася в суперечці про рейтинги популярних мов програмування


Изображение сайту zdnet.com

Багато допитливих особистості хочуть знати все. Іноді накопичення знань перетворюється в осягнення, не має практичного застосування. Проте в ІТ-галузі найбільшу цінність мають знання та навички, отримані і перевірені в бою» — на практиці. Тому деякі дискусії, наприклад, про програмування можуть здатися занадто умоглядними.

Проте час показує, що питання про те, яку мову програмування найпопулярніший, має яскраво виражений практичний аспект.

Починаючим програмістам потрібно знати, в якому напрямку починати кар'єрний шлях. Досвідченим програмістам потрібно знати, в якому напрямку рухатися. Виробникам засобів розробки ПЗ потрібно якось прогнозувати попит на свої продукти і враховувати популярні тенденції.

ІТ-підприємцям важливо знати, якою мовою з використанням яких технологій необхідно вести розробку, щоб не було зіткнутися з проблемою найму потрібних спеціалістів.
Читати далі →

Історія мов програмування: як Fortran дозволив користувачам спілкуватися з ЕОМ на «ти»



У 2017 році мові Fortran виповнюється 60 років. За цей час мова кілька разів доопрацьовувався. «Сучасними» версіями вважаються Fortran 90, 95, 2003 і 2008. Якщо спочатку це була мова програмування високого рівня з чисто структурної парадигми, то в більш пізніх версіях з'явилися кошти підтримки ООП і паралельного програмування. На сьогоднішній день Fortran реалізований для більшості платформ.

До появи мови Fortran розробники програмували, використовуючи машинний код і асемблер. Мова високого рівня швидко набрав популярність, так як був простий у вивченні і забезпечував генерацію ефективного виконуваного коду. Це істотно спростило життя програмістам.
Читати далі →

Персона: Денніс Рітчі — творець мови З ОС UNIX



Денніс Рітчі – творець мови програмування Сі. Він разом з Кеном Томпсоном розробив Сі для створення операційної системи UNIX. «У Ньютона є фраза про що стоять на плечах гігантів», – говорить Брайан Керниган. «Ми всі стоїмо на плечах Денніса».

«Практично всі веб створено на основі – Сі та UNIX», – розповів виданню Wired Роб Пайк (Rob Pike), легенда програмування. – «На мові Сі написані браузери. На ядрі UNIX працює майже весь Інтернет, і воно також написано на мові Сі. Веб сервери – написані на мові C. А якщо не на ньому, то на Java або C++. А ці мови похідні від Сі. Python і Ruby також базуються на Сі. Я ручаюся за те, що все мережеве обладнання працює на програмах, написаних на С. Справді важко переоцінити те, що, скільки всього в сучасній інформаційній економіці засноване на роботі Денніса».

«Недаремно ж Windows, коли-то написали на Сі, – додає він. А UNIX лежить і в основі настільної операційної системи Apple, Mac OS X і IOS. Ці системи встановлені в iPhone і iPad».

Читати далі →

Не всі мови програмування однаково корисні



Кожна мова програмування хороший по-своєму. Проте з цим твердженням погодяться не всі. Після прочитання наступного матеріалу ряди незгодних можуть поповнитися. Більше того, є думка, що деякі «конструкції» взагалі не можна вважати мовами програмування.

На думку «Вікіпедії», мова програмування — формальна знакова система, призначена для запису комп'ютерних програм. Мова програмування визначає набір лексичних, синтаксичних і семантичних правил, що визначають зовнішній вигляд програми і дії, які виконає виконавець під її управлінням.

Якісь знакові системи простіше для освоєння, якісь складніше. Однак серед них є й досить химерні. А є настільки складні, що освоюють їх тільки самі хардкорні розробники.
Читати далі →