Создатель Python говорит о Rust, Go, Julia, TypeScript
Голландский программист и автор Python Гвидо ван Россум в недавней Q&A-сессии поделился своими мыслями о некоторых языках программирования. Ниже — фрагменты его ответов.
Rust:
— Кажется, это отличный язык — для определённых вещей. Rust действительно превосходит С++ в кое-каком моменте: в нём намного сложнее обойти проверки в компиляторе. И, конечно, в нём почти идеально решена проблема распределения памяти… Если написать что-то на С++, то нельзя быть настолько же уверенным, как если бы вы писали это на Rust, что вы правильно реализовали всё связанное с распределением памяти и управлением памятью. Поэтому Rust — интересный язык.
Go и Julia:
— Я думаю, что Go — тоже очень интересный язык. Среди всех новых языков Go, наверно, больше всего подобен Python — или по крайней мере среди новых языков общего назначения. Есть ещё Julia — интересное воплощение чего-то Python-подобного. В нём столько деталей, которые очень напоминают Python, что когда вы осознаёте: «Ох, индексация же начинается с единицы, а диапазоны включают начальное и конечное значение», — то думаете: «Аррр!». Нельзя кодить и на Julia и на Python в один день.
В моём понимании Julia гораздо более нишевой язык, и если вы в этой нише, то он имеет преимущество, потому что компилятор оптимизирует ваш код так, как Python, вероятно, не будет никогда. С другой стороны, он намного более ограничен в иных областях, и я бы не ждал, что кто-нибудь когда-нибудь напишет на Julia веб-сервер и получит от этого много проку. И я уверен, минут через пять это уже будет Hacker News с опровергающим примером.
TypeScript:
— TypeScript — это замечательный язык. Вы, должно быть, обратили внимание, что последние шесть или семь лет мы добавляли в Python опциональную статическую типизацию, также известную как постепенная типизация. На самом деле, я не знал о существовании TypeScript, когда мы начинали этот проект, поэтому не могу сказать, что изначально это он вдохновлял нас. В TypeScript, поскольку он из одной компании с JavaScript, и поскольку Андерс — действительно умный парень [Андерс Хейлсберг — датский программист, создатель TypeScript, Turbo Pascal, Delphi и C#. — прим. пер.], решены некоторые вещи, которые в Python ещё только предстоит решить. Поэтому сегодня мы однозначно подглядываем в TypeScript за образцами. У нас есть группа по типизации, где мы обсуждаем синтаксис и семантику типизации и в целом систему типов Python, и иногда мы предлагаем новые функции, потому что знаем, что определённых функций в TypeScript тоже изначально не было, потом по просьбам пользователей их добавили, и они пользуются большим успехом. И здесь, очевидно, как раз такая ситуация.
Поскольку JavaScript и Python относительно схожи — намного больше чем Python и, скажем, C++, Rust или Java — мы учимся у TypeScript. А порой, исходя из моих бесед с Андерсом, кажется, что TypeScript тоже учится у Python. Как и JavaScript тоже кое-что почерпнул у Python в некоторых областях.
Читать на dev.by