URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 116911
[ Назад ]

Исходное сообщение
"Microsoft опубликовал Pyright, систему проверки типов для яз..."

Отправлено opennews , 24-Мрт-19 10:24 
Компания Microsoft открыла исходные тексты проекта Pyright (https://github.com/Microsoft/pyright), в рамках которого развивается система для применения статической типизации в приложениях на языке Python. Для разработчиков предлагается утилита командной строки для проверки типов и плагин для интегрированных сред разработки, поддерживающих протокол LSP (https://www.opennet.me/opennews/art.shtml?num=44682) (Language Server Protocol), такими как Visual Studio Code, Nuclide и Atom. Код написан на языке Typescript (диалект JavaScript со статической типизацией), использует Node.js и открыт под лицензией MIT.


Информация о типах может определяться в коде через добавление дополнительных аннотаций к переменным (PEP 526 (https://www.python.org/dev/peps/pep-0526/), например "# type: List[int]"), TypeVar-подсказок в стиле mypy (http://mypy-lang.org/) (PEP 484 (https://www.python.org/dev/peps/pep-0484/), например "def greeting(name: str) -> str:") и  определение структурных подтипов (https://en.wikipedia.org/wiki/Structural_type_system) (PEP 544 (https://www.python.org/dev/peps/pep-0544/)). Pyright  поддерживает вывод типов для возвращаемых функциями значений, локальных переменных, переменных классов и глобальных переменных. Системой также применяются умные ограничители типов, учитывающие ветвления в коде с использованием операторов if/else.

Pyright работает примерно в пять раз быстрее  mypy и других систем проверки типов, написанных на языке Python. Высокая проихводительность позволяет использовать Pyright  для очень крупных кодовых баз, в режиме непрерывного отслеживания при редактировании и для быстрого инкрементального обновления при изменении файлов. Для работы Pyright не требуется установка Python-окружения, но необходимо наличие Node.js.


Кроме инструментов для анализа и проверки кода в состав также входит подготовленный проектом Typeshed (https://github.com/python/typeshed) набор stub-файлов (".pyi"), содержащих информацию о типах для стандартных библиотек stdlib. Плагин для IDE поддерживает вывод всплывающих подсказок с информацией о типе, переход к позиции с определением переменной и обеспечение обратной связи во время редактирования.


URL: https://news.ycombinator.com/item?id=19473631
Новость: https://www.opennet.me/opennews/art.shtml?num=50383


Содержание

Сообщения в этом обсуждении
"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено nc , 24-Мрт-19 10:26 
Сначала одни делают языки с динамической типизацией, а затем другим приходится придумывать к ним разные костыли, чтобы как-то прикрутить нормальную статическую типизацию.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено A.Stahl , 24-Мрт-19 10:30 
Зато в Питоне нет скобочек, олицетворящих гегемонию Си. Вот!

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено microcoder , 24-Мрт-19 10:45 
> Зато в Питоне нет скобочек

Это пока нет. Гвидо отошёл от борорьбы принятия решений и сейчас кто знает куда развитие уйдёт когда рак, лебедь и щука (желания и хотелки одних и других пользователей) потянут в разные стороны проект и сколько лет будут эти трое разрывать его на части.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 17:08 
пробельчики считать глаза уже натренировались?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 17:53 
Бедный, целыми днями считает пробельчики, пока люди пишут код. :(

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено EnemyOfDemocracy , 24-Мрт-19 19:07 
как будто вы всю память освободили, за указателями последили и за границы массива даже на пол-фитульки не вылезали

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено commiethebeastie , 24-Мрт-19 21:57 
Попробуй вместо notepad.exe поставить что-нибудь получше.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Vkni , 25-Мрт-19 07:51 
Их много где нет. Например, в Хаскеле, у которого, кста, похожий же двумерный синтаксис.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:32 
Хоспади опять откопали это ...

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено annual slayer , 24-Мрт-19 12:24 
это как коробка-автомат

теперь и с подрулевыми лепестками


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 16:18 
В случае с питоном аналогия неверная. Скорее, коробка автомат, к которой кочергу приделали для ручного переключения и масло слили, чтобы не плавало...

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 14:38 
Некоторым платят за количество строчек в тестах.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:33 
Да недавно видел на биржа фриланса обьявление куплю говнокода на 1000000 строк.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Vkni , 25-Мрт-19 07:50 
Просто людям, которые используют языки с динамической типизацией там, где это не стоит делать, надо вправить мозги.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Попугай Кеша , 25-Мрт-19 09:26 
Ну как так? В одной крупной организации используется TypeScript, ибо JS - боль (так утверждают архитекторы). Просьбы дать аргументацию не увенчались успехом.

На своем проекте удалось отстоять JS и выжать максимальную скорость из команды.

В новом проекте - TypeScript (от нашей любимой Microsoft). Теперь вместо работы разработчики ругаются матом на интерфейсы, типы, наследование. Чтобы победить TS с его глупейшими ошибками нужно over 9000 действий сделать. Ну и чего добились? Скорость команды просела. Те же действия требуют раза в 2-3 больше кода. Визуального шума больше. Тьфу блин...

Доигрались. А архитекторы? А что архитекторы - сказали надо - делаем. Модно, хипстерски, молодежно зато.

Так что идите лесом, господа. Где-то нужна статическая типизация, где-то не нужна. От задач и области применения зависит. И не надо тут синдром молотка включать.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Vkni , 25-Мрт-19 10:32 
> Просьбы дать аргументацию не увенчались успехом.

Ну, собственно, после этого можно не продолжать.

> Так что идите лесом, господа. Где-то нужна статическая типизация, где-то не нужна. От задач и области применения зависит. И не надо тут синдром молотка включать.

При чём тут синдром молотка?


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Попугай Кеша , 25-Мрт-19 11:06 
Синдром молотка в том, что человек ранее разрабатывал на C# / Java, не смог осилить JS. Пришел в чужой аул со своим барахлом и принципами. Появился TS. Занавес.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:35 
Я не в курсе конечно, а не то что в Java тоже все отнаследовано от какого-то абстрактного Object?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Попугай Кеша , 26-Мрт-19 09:21 
JS вообще не ООП-язык, ни разу. Где-то прикидывается, но нет. У него больше с LISP/Scheme общего, чем с Java. Отсюда проблемы

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Vkni , 28-Мрт-19 05:41 
> Синдром молотка в том, что человек ранее разрабатывал на C# / Java,
> не смог осилить JS. Пришел в чужой аул со своим барахлом
> и принципами. Появился TS. Занавес.

Так сложно судить со стороны, но всякая бизнес-логика очень хорошо работает со статически типизированными языками. И, в общем, формочки шлёпать на всяких Elm вполне приятно и легко.
Ну и работа с большими системами на динамически типизированных языках обычно сравнительно трудоёмка и требует серьёзной дисциплины. (по моему опыту - достаточно надёжную программу средних размеров написать на Хаскеле значительно легче для мозгов, чем на Питоне)

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


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 25-Мрт-19 13:53 
как-то вы неправильно его готовите. TS позволяет настроить необходимость типизации  и использовать ее там где она действительно нужна.
А писать на JS крупный проект это боль, когда вместо использования подсказок редактора ты каждый раз лазишь в документацию или в код, а потом еще и ловишь ошибки в рантайме.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 26-Мрт-19 12:43 
>теперь вместо работы разработчики ругаются матом на интерфейсы, типы, наследование.

Лол, жс-макаки не могут даже в такие простые абстракции.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 10:28 
> Для работы Pyright не требуется установка Python-окружения, но необходимо **наличие Node.js**

Что, простите???


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено A.Stahl , 24-Мрт-19 10:31 
>Код написан на языке Typescript (диалект JavaScript

Что именно тебе не ясно?


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено anonymous , 24-Мрт-19 10:49 
Он вообще то про что почему не на самом Питоне раз нужен еще один интерпретатор ?
Написали бы тогда уж на си или го, а тут какой то маразм, следующий раз им понадобится и руби :(

P.S. Хотя если ограничивать юзание этой штуки редакторами vscode или атом то тогда понятно, там ноде уже внутри :(


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено microcoder , 24-Мрт-19 10:59 
Видимо потому, что IDE для которой писалось рпсширение работает на JS/TS:

> This is especially useful when used with the VS Code editor, which uses node as its extension runtime.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено anonymous , 24-Мрт-19 13:08 
Ну это понятно.
Просто не нужно было в новости писать :
> Для разработчиков предлагается утилита командной строки для проверки типов и плагин для
> интегрированных сред разработки

Написали бы просто, плагин для редакторов юзающих ноду и сразу все понятно.

P.S. И кстати скорость тут не причем, на GO поди еще быстрее бы было. Про СИ я молчу даже ...


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 11:04 
> Он вообще то про что почему не на самом Питоне раз нужен еще один интерпретатор ?

А целиком новость прочесть?

> Pyright работает примерно в пять раз быстрее mypy и других систем проверки типов, написанных на языке Python.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 24-Мрт-19 11:39 
наверно потому что js быстрее и удобней Питона.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 12:07 
Может и быстрее. Но вот насчёт удобней...

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 24-Мрт-19 12:18 
Ну, скажем так, нынче Питон кажется замшелым валенком. Не знаю откуда у питона такая популярность, видимо просто в силу возраста и отсуствия вменяемых альтернатив на то время.
Да, по сравнению с es5 питон сильно выигрывает, но по сравнению с современным ts Питон уныл.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено annual slayer , 24-Мрт-19 12:27 
так ts или js? ты сначала сам определись

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 24-Мрт-19 12:51 
а что есть разница? можно писать на js, описывая типы и проверяя тайпскриптом

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 12:52 
TS - лишь сахар для JS

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 15:14 
Лол, с некоторых пор тс почти совсем сабсет, а не суперсет жса. Т. к. там нет и долго не будет множества модных фич типа паттерн матчинга, пайплайнов, старых новых декораторов, новых новых декораторов, частичного применения и прочего сахара. Сам тс не предоставляет ничего, что не будет работать в бровсере/ноде после простого удаления типов.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Илья , 24-Мрт-19 19:51 
Не знаю почему, но у меня нет большого желания писать на ноде.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:37 
Дык каждому индейцу свое перо.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено mkusher , 24-Мрт-19 21:41 
Это не так, все доступное в стандарте реализовано в тс и плюс некоторые фичи из stage до 4. Плюс в тс есть енамы, сахар для параметров конструктора, которые не просто вырезаются

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Илья , 28-Мрт-19 22:39 
> Это не так, все доступное в стандарте реализовано в тс и плюс
> некоторые фичи из stage до 4. Плюс в тс есть енамы,
> сахар для параметров конструктора, которые не просто вырезаются

Вы про те параметры, которые собой определяют поля?, такое себе решениеё


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 10:30 
Дай угадаю, Cython им не подошел из-за слишком высокой скорости?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 12:09 
Там нет node.js

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 16:20 
Синтаксис Cython то видели? Даже в нотации типов он C-подобен. А современные скриптовые языки, включая питон 3.6 имеют указание типа в паскалевском стиле.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено vitalif , 24-Мрт-19 20:50 
Поскакалеподобен

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 20:53 
кстати, у скалы тоже такой же синтаксис типизации

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 10:36 
>Pyright работает примерно в пять раз быстрее mypy и других систем проверки типов, написанных на языке Python.

Жабаскриптеры унижают питонистов на собственной территории :)


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 13:02 
Очередная история отношений земноводных и змей.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено _ , 24-Мрт-19 22:37 
зришь! (С)

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено cutlass , 25-Мрт-19 02:12 
Точняк бро!

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 10:37 
нормальную перегрузку функций это фигня дает?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено microcoder , 24-Мрт-19 10:47 
Какие перегрузки? Это просто "online" анализатор типов -> "утилита командной строки для проверки типов"

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 15:17 
Обычные, с ручным выбором нужной. Объявляется несколько сигнатур без имплементации + имплементация совместимая со всеми сигнатурами (иногда приходится через any), в ней уже ручками всё разруливаешь. Но при вызове функции/метода для тайпчекера это выглядит как перегрузка.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено microcoder , 24-Мрт-19 10:39 
Что-то он у меня не взлетел на VS Code. Жрет CPU и ничего видимого не происходит, всплывающие подсказки перестают работать.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 10:50 
В текущем модуле typescript есть баг, может в следующем обновлении Code его заменят на более свежий.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено microcoder , 24-Мрт-19 10:53 
Ок. Спасибо за информацию!

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 11:00 
https://github.com/Microsoft/TypeScript/issues/29598

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено myhand , 24-Мрт-19 11:12 
Это он питон так уделывает, вы просто чего-то не поняли.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 10:59 
Что только не придумают, лишь бы не уговаривать людей изучать язык, на котором пишут.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:39 
Это какой например?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 24-Мрт-19 11:36 
о, это же отлично.
Как стал изучать Питон сразу возник вопрос, а где typescript для питона, с типами же тут еще хуже чем в js.
А тут прямо идеально, еще бы работало.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 16:21 
> Как стал изучать Питон

А зачем?.... Работать то где на нём?


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 24-Мрт-19 17:14 
для собственного кругозора. Насчет работать не знаю, js не хуже в этом плане, только поднадоел.
Хочется куда-то, где построже и побогаче.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 19:17 
Для расширения кругозора полезно смотреть то, что кому-нибудь нужно. Питон в продакшене никому не нужен. См. рейтинг языков по доступным вакансиям:

https://spectrum.ieee.org/view-from-the-valley/at-work/tech-...


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 20:28 
скала и руби на втором и третьем месте? не смешите мои ботинки, это не рейтинг, а посмешище

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 20:55 
правая колонка - хотелки разработчиков. Левая - за что деньги готовы платить. Скала там потому, что много успели написать. То есть некому поддерживать. Руби - ну так он до сих пор популярен для веба вне отдельно взятой этой страны. Быстрее - ни на чём не напишите.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено microcoder , 24-Мрт-19 21:27 
HTML выше на 2 пункта, чем Python. Забавный рейтинг.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 21:57 
> HTML выше на 2 пункта, чем Python. Забавный рейтинг.

Забава в чём? Что питон никому не нужен? Или в том, что HTML-верстальщиков нужно мало?


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено microcoder , 24-Мрт-19 22:12 
первое

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено _ , 24-Мрт-19 23:45 
>Руби - ну так он до сих пор популярен для веба вне отдельно взятой этой страны.

Я не "в этой стране" я в NA\GL-area. Позиция ребе-программер у нас тоже большая экзотика...
>Быстрее - ни на чём не напишите.

Уже придумали *оно повонючее: на ноде ещё быстрее одноразовка делается :-Р И почти бесплатно. Даже пыхеров подвинули 8-о
Так что ты устарел, тебя пустят на переработку :)


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 24-Мрт-19 22:55 
Не столь интересен сам питон, он учится очень быстро, сколько django. Вакансий довольно много.
Да я и не говорю что собираюсь прям на питоне и остановиться. C# и Go на очереди, возьму что понравится. Только для Go мало вакансий и там хотят сразу готовых сеньоров, поэтому он кажется не сильно актуальным для изучения.
Наверно выбор будет между C# и Java.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 23:07 
> django. Вакансий довольно много

Go см. Или Rails, если интересует веб-бакенд. Без практики и изучения, явно не получится стать квалифицированным разработчиком.

> C# и Java

Java. Иначе тот же вопрос - кому нужна винда сейчас?


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 24-Мрт-19 23:19 
какие-то у вас странные представления о бэкенде.
rails умирает, та же django встречается чаще. Плюс Питон более универсален, чем Руби.
А причем тут винда? C# для бэка уже давно винду перерос. Дотнет фреймворк вышел удачным и тоже получил свою долю пирога.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено _ , 24-Мрт-19 23:49 
>А причем тут винда? C# для бэка уже давно винду перерос. Дотнет фреймворк вышел удачным и тоже получил свою долю пирога.

Козюльский! Кому вы таки парите мозги?! (С)

Любая девочка знает что доднед хоть как то работает только в M$(C)  WЫndoуЗЪ(Tm) :-) Шаг влево - вправо и тебя пристрелили. Вне винды его только у ямумкихакир-ов увидеть можно ...


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 06:49 
> rails умирает, та же django встречается чаще. Плюс Питон более универсален, чем Руби.

Rails ещё долго будет умирать. А вот с питона и django, все кто прикоснулись, мигрируют на Go.

Питон, может быть, "более универсален", чем Руби, но плох везде, где бы его ни использовали. К тому же, имеет постоянные проблемы с совместимостью и полную неопределённость в развитии после ухода Гвидо.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Антон , 25-Мрт-19 10:02 
ну хорошо, уговорили.
Меня и самого Питон выбешивает своими разными версиями, отстуствием объявления переменных, плясками с virtualenv и дубовостью.
Выбор сузился до Java vs Go. Тем более под деньгам оно самое привлекательное.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 10:36 
> Меня и самого Питон выбешивает своими разными версиями, отстуствием объявления переменных,

А что в этом плохого? Со статичным типизированием понятно, объявляешь переменную и указываешь тип, а в динамике зачем?


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено cutlass , 25-Мрт-19 02:15 
Для веб-бекенда нужно знать ПХП

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 04:05 
сгинь, ирод

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:42 
На кой для бэкенда знать PHP? Опять таки как и для django это знание нужно только для уровня дизайн студий подвально чердачного типа.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено fontpath , 25-Мрт-19 08:59 
Для веб-разработки и прототипирования за пределами нашего чебурнета Ruby популярен. Вот недавняя статистика по вакансиям, а не по всяким непонятным рейтингам, в Кремниевой долине: https://medium.com/@yoelblum_45935/demand-for-ruby-on-r...

Просто переводной литературы по Ruby было очень мало и к тому же сильно протухшей, поэтому в России популярность его гораздо ниже, плюс с английским в нашем регионе всегда было худо, в веб-разработка имеет относительно низкий порог вхождения, в итоге все, кто в нулевых начинал с условного "Освой PHP и MySQL за 7 дней" даже набравшись опыта и выучив для работы английский так и остались на этом стеке, у адептов Python, к примеру, появилась Джанга и т.д. Не зная хорошо английский влиться в разработку на Ruby (в актуальном её состоянии практически невозможно), в то время как по PHP, Python, Java, C# литературы на русском навалом.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Vkni , 25-Мрт-19 07:54 
Статически типизированный Питон - это Ocaml.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено th3m3 , 24-Мрт-19 11:52 
А зонды от мелокмягких, как всегда в комплекте?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 12:13 
export PYRIGHT_TELEMETRY=OFF :)

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено th3m3 , 24-Мрт-19 13:05 
> export PYRIGHT_TELEMETRY=OFF :)

Давно известно, что зонды от мелкомягких, на самом деле - настройками не отключаются ;)


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 15:33 
>We couldn’t find any code matching 'PYRIGHT_TELEMETRY' in Microsoft/pyright

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено YetAnotherOnanym , 24-Мрт-19 11:54 
Это что же получается, теперь на Питоне нельзя будет фигачить код, не задумываясь о значениях переменных и рассчитывая на то, что интерпретатор сам как-нибудь там разберётся?
Проклятые мелкомягкие!

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 12:32 
Надеюсь вменяемым разработчикам хватит мозгов не вестись на этот EEE.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Анонимус154 , 24-Мрт-19 13:07 
Тайпхинтинг не вчера придумали

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 14:04 
Хм, а зачем писать на языке с динамической типизацией, если потом  нужно подключать статику? Может кто просветить, какие реальные юзкейсы?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Анонимус154 , 24-Мрт-19 14:17 
Потому что набор типов, с которым работает какая-то функция или метод, в реальной жизни обычно ограничен. И тайпхинтинг здесь позволяет находить ошибки, когда в функцию, ожидающую на входе int, вдруг подают list.

Вообще, на Ютубе есть запись доклада Григория Петрова про тайпхинтинг, там все очень подробно и доступно изложено.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено anonymous , 24-Мрт-19 14:27 
Что за бред ?
А почитать к примеру PEP484 не судьба что ли :(

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Анонимус154 , 24-Мрт-19 14:39 
Так речь про PEP484 и идёт.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено anonymous , 24-Мрт-19 15:28 
Ладно спрошу по другому. Если мы первый раз вызываем скрипт python, когда еще нет pyo почему сам интерпретатор не проверит это дело если мы в тексте указали все как нужно ?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено анонимумуму , 24-Мрт-19 22:23 
Потому что это не статическая типизация. Интерпретатор эту информацию просто отбрасывает. Эта информация используется статическими анализаторами вроде mypy, pyre, pyright и пр.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:50 
> Интерпретатор эту информацию просто отбрасывает

Так давайте разбираться в этом термине. Интерпритатор Python на самом деле транслятор и виртуальная мащина. У него есть две стадии компиляция (трансляция с языка Python в Python Bytecode) и вторая стадия интерпритация в вирутальной машине байткода.

Почему не ввести разновидность трансляции с проверкой типов, так называемую strict трансляцию. Напомню, что подобного рода трансляция (strict) есть в Visual Basic и JavaScript.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено GreyFox , 24-Мрт-19 14:28 
Статика в Python не подключается, это не возможно. Типы аннотируются, т.е. указываются для статического анализа (можно сказать, что в виде мета информаций). В редакторе можно подсвечивать ошибки (к примеру при присваивании, при вызове функции, ...), статистический анализ как одна из стадии проверок в CI (непрерывной интеграции), можно использовать для валидации в реальном времени (удобнее описывать, идемпотентный код, ...), ...
В итоге писать код в реальных средних и больших проектах значительно удобнее. По той же причине аннотирование есть в Typescript

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 18:51 
А ещё удобнее было бы сразу писать на языке со статической типизацией.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 19:13 
Вот да, этот вопрос меня и интересует больше всего. Если пишешь на динамике ради каких-тотее плюсов (скорость разработки и прототипирования?), то смысл в привлечении элементов отвергнутой статики. Совместить лучшее из двух миров?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено анонимумуму , 24-Мрт-19 22:27 
Я давно хочу статически типизированный Python)

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено _ , 25-Мрт-19 00:08 
Это только до тех пор, пока его и вправду не сделают. Правдо _это_ уже Питоном не будет :)
Но к тому времени у тебя появятся новые пи**тые идеи, не волнуйся. Работать снова будет некогда :)

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Vkni , 25-Мрт-19 07:58 
Ближе всего к этому Ocaml.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 20:38 
Не зачем, а почему. Потому что до некоторых долго доходит, что на языке без статической типизации писать не стоит.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено _ , 25-Мрт-19 00:09 
Смотря что, смотря для чего. Но чего это я? Раз Ыгспёрд сказал, то фсио ...

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено cutlass , 25-Мрт-19 02:17 
Баш норм и без нее

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 26-Мрт-19 11:00 
Так там и типов никаких нет кроме строк. Разве что массивы в 4 версии добавились.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 24-Мрт-19 16:10 
Для меня лично больше подхолит утилита PYLEFT.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено InuYasha , 24-Мрт-19 19:16 
М-да... если выкинуть из питона все пробелы и безтипность, то что останется?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним3 , 25-Мрт-19 01:15 
не питон. ясно ведь)) и да странно что один скриптовый язык проверяет другой на наличие типов. тем более в языке динамической типизации. я конечно понимаю некоторым не отойти от тех же плюсов, но питон как раз и делали таким. время было такое , такие и идеи. если что то не нравится возьмите другой язык. в любом случае сейчас наплодили их столько, что диву даешься, а си как был стандартом , так и остался)))

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Онаним , 24-Мрт-19 19:59 
Visual Studio - TypeScript - Node.JS - и всё это для Python

Шиза косит стройные ряды.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аркадий , 24-Мрт-19 20:46 
Почему я чувствую, что в чём-то здесь подвох?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним3 , 25-Мрт-19 01:17 
с МС всегда подвох. )) так что просто остерегайтесь данайцев дары приносящих.))

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено economist , 25-Мрт-19 09:48 
Обосную почему динамическая типизация рулит мне и вероятно не только мне. 90% py-проектов - консольные скрипты на 50 килобайт, из которых 50% - комментарии и строковые "константы", которые взять больше неоткуда (типа ФИО директора в дательному падеже, типа Айрам Жовкету Асан-Оглы Хуажашеву). И этот "говнокод" пишется быстро, скажем за 2 дня, но окупается за неделю, поскольку убирает рутину и для обычных офичных людей является чистой магией.

Когда заказчик в ТЗ пишет "все переменные типизировать в коде", - то код пишется уже 3 дня. Но стоит в... - Правильно, в 2 раза дороже. Т.к. "правильность" и "неправильность" в наше время определяет его величество рынок, тот кто платит, а не то кто умничает - то таких ТЗ и заказов всё меньше. Достаточно лишь поговорить с тов. Хуажашевым. Ему-то всё равно - лишь бы работало правильно. А для этого есть тесты.

Радует что Питон типы и все эти Pyright дает как опцию, печалит что скорости работы программы они все равно не добавляют. Но знаете ли вы что слишком быстро работающая программа на С выглядит не так дорого, как медленная на Python? Теперь знаете.          


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 10:32 
> печалит что скорости работы программы они все равно не добавляют.

Вы это где то прочитали, либо сами столкнулись с "медлительностью"? На каких задачах вам не хватает python?


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено economist , 25-Мрт-19 11:43 
"не добавит" != "медлительность". Стат-типизация сабжем - скорости Питону не добавит.

Скорости обычного питона мне хватает на всех задачах. Она и так в 3-5 раз быстрее прочего IT-окружения на предприятиях-клиентах (это я про 1С, Excel, COM-автоматизации, сетевые базы данных итп).

Cython, nuitka, asyncio и прочие "ускорялки" пока не нужны. То что нужно быстро - итак уже кем-то хорошо ускорено (модули sqlite3, numpy, pandas итд).  


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 11:47 
Примерно всё это делаю на фрипаскале, включая регулярки. :) И статическая типизация там изначально. И ООП, и графика если надо... и скорость конечно. Единственный недостаток блоки выделяются не отступами, отсюда синтаксический мусор. Блоки отступами - это единственное чем питон захватил мир, этим прорывом во второе измерение в эргономике кода. Что снизило количество синтаксического мусора.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Анонимчжан , 25-Мрт-19 18:03 
не только этим. но скорости и впрямь хватает для простых задач. а крупные на питоне редко делают. скорее обертки вокруг того же си/с++. так что да в большинстве возможностей чистого питона за глаза. nympy и прочие это уже некоторые попытки сделать питон языком чисто системно-прикладного уровня как си, но помоему это глупо. он задумывался именно для максимальной переносимости и чисто внешних применений . никак не язык системного уровня. там где нужна скорость компилируемые языки всегда будут лучше, хотя бы потому , что они пропускают этап компиляции еще на пути сборки.ну а питон и ему подобные как известно компилятся в байт код. и этим все сказано. так называемое изначальное преимущество в скорости у компилируемых языков, зато в переносимости сильно отстают. что то одно. пусть сделают язык с синтаксисом питона и возможностью компиляции. вот там и посмотрим.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:54 
Слушай не нужно страдать херней. Пишу я на Питоне управляющий код, а когда совсем ясно, что не тянет, то перевожу модуль на C/C++ и все хорошо и замечатлеьно. Хотя конечно сейчас документация Python начинает уже раздражать, так как многое приходитсья изучать прямо в коде Python-а. Я это все к чему, ну вот и зачем делать еще один какой-то Cython когда вроде и так все хорошо?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено myhand , 25-Мрт-19 12:18 
> Т.к. "правильность" и "неправильность" в наше время определяет
> его величество рынок, тот кто платит, а не то кто умничает

Во-во.

The planet is fine. The people are f*cked. (ц)

> Ему-то всё равно - лишь бы работало правильно.
> А для этого есть тесты.

Если бы программисты строили дома...


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 20:58 
Платят обычно тому кто умничает за то что он умничает, так как ума у тех у кого есть деньги на это не хватает.

Так что тут палка о двух концах.


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Anon_Erohin , 25-Мрт-19 14:43 
Мелкомягкие как всегда закидывают в свой репозиторо-помойник очередную ненужную вещь. Не понимаю зачем СПО обществу подобное...

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 15:48 
Что значит зачем? SoftwareNazi?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 28-Мрт-19 18:33 
Ой, тебя спросить забыли

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 16:05 
Ну не нравиться вам питон, ну не пишите на нем, кто заставляет ???
Откуда столько ненависти ?

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 16:17 
Ненависть от навязывания, идёт бешеная глобальная реклама этого довольно рядового, но постепенно усложняющегося до плюсплюсной монструозности языка. Люди чувствуют что их загоняют в интеллектуальное гетто, не любят насилия, даже если их насильно шоколадом кормят.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 25-Мрт-19 21:00 
Дык кто мешает берите какой-нибудь Lua и пишите на нем. Я думаю, что проблемы в целом нет. А спорящие это просто засланцы из других религиозных групп всякие шарпойды жавройды и прочие пхпешеры.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено economist , 26-Мрт-19 12:45 
Реклама всегда кем-то оплачивается, тут же - просто "добрая молва", которая да, идет сильно впереди развития языка. Учить Питон - бросаются пенсионеры в глубокой деменции, Навальный, школота, малинщики, студиозусы и теперь еще и радиолюбители - "STM-щики". Я это горячо одобряю и как начальник, потому что вижу пользу у коллег.

В 97-2005 гг. похожим образом увлекательный мир программирования открыли для себя больше 2 млн. человек во всем мире с макросами VBA в Excel. Экономический эффект этого "вливания" - измеряется миллиардами долларов, так что не вижу причин топтать Python - он тот же VBA, только шире и лучше. Прогнозирую взрывной рост числа макросов на нём в MS Office и AOO/LO в ближайшие 2 года.      

Python с его 173k+ бесплатными библиотеками может всё и имеет, наверное, ну самый простой человекочитаемый синтаксис. Кривая обучения - прямая. Все парадигмы - в наличии. Вакансии - есть. Насилия - нет.    


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено brbrbr , 26-Мрт-19 13:17 
Вот именно, бизнес получает профит от распространения Питона, т.к. каждую макаку можно ему обучить,
и платить ей едой.
Я лично такой макакой быть не хочу, и мне осточертели зазывания на курсы макак.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено economist , 26-Мрт-19 14:57 
Бизнес, который получает профит от использования СПО и массового макросописательства - платит в перспективе зарплат/премий больше, и имеет возможность платить их больше (за счет экономии на СПО и профита).

Бизнес, который сидит на проприетарщине, будучи зависим от вендора и узкоспециальных IT - платит зарплат/премий меньше, т.к. тратит весь свой профит на вендора и дорогих специалистов IT. Последние, к слову, имеют сильную тягу к перемене мест, их частенько перекупают, и с т.зр. ROI - платить премии питонирующим макросописателям - выгоднее.

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


"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Попугай Кеша , 26-Мрт-19 15:23 
Вообще начальник прав. А если вы не хотите быть макакой - не будьте! Учитесь лучше ;)

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 26-Мрт-19 05:03 
Питон хорош как клей, как выполняемый псевдокод. Его ниша где-то между башем и 'настоящими' языками. Рано или поздно скрипты на питоне достигают предела, где выгоднее или удобнее использовать более строгую типизацию. В Lua это свойство выражено ещё сильнее.

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено Аноним , 28-Мрт-19 18:30 
В качесте клея perl по-удобнее будет (и не надо шутить про "Момент")

"Microsoft опубликовал Pyright, систему проверки типов для яз..."
Отправлено economist , 28-Мрт-19 21:44 
Смотря что нужно клеить. PY-библы pywin32, win32com, xlsxwriter итд - дают такой уровень интероперабельности, выше которого даже сложно что-либо придумать. Обертки "по над уси" - типа D3.js - в принципе позволяют не изучать документацию родительского приложения и помогают с рендером, парсингом аргументов, лезут всюду со своей помощью и очень помогают. Самое удачное и известное прикладное ПО из свободного или почти бесплатного - имеют или Python внутри, или API на нем с очень хорошей поддержкой объектной модели приложения, часто в 2-3 раза превышающей доступную пользователю интерактивно (OpenOffice|LibreOffice, GIMP, Blender, Maya, InkScape, Scribus, Reaper - всех и не упомнишь). У Perl тоже много всего, но меньше и ощутимо. Комьюнити змеелюбов сейчас просто прёт вверх, и уже нет нужды читать документацию на сам питон, можно "спрашивать Алису". Вот уж действительно "высокоуровневость" в чистом виде. Особенно в ML/AI/CV. И плевать что это все часто обертки над другими ЯП. Пусть будет "клей".