The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Выпуск языка программирования Python 3.10

05.10.2021 07:23

После года разработки представлен значительный выпуск языка программирования Python 3.10. Новая ветка будет поддерживаться в течение полутора лет, после чего ещё три с половиной года для неё будут формироваться исправления с устранением уязвимостей.

Одновременно началось альфа-тестирование ветки Python 3.11 (в соответствии с новым графиком разработки работа над новой веткой начинается за пять месяцев до релиза предыдущей ветки и к моменту очередного релиза достигает стадии альфа-тестирования). Ветка Python 3.11 будет находиться на стадии альфа-выпусков в течение семи месяцев, во время которых будут добавляться новые возможности и производиться исправление ошибок. После этого в течение трёх месяцев будет проводиться тестирование бета-версий, во время которого добавление новых возможностей будет запрещено и всё внимание будет уделяться исправлению ошибок. Последние два месяца перед релизом ветка будет находиться на стадии кандидата в релизы, на которой будет выполнена финальная стабилизация.

Среди добавленных в Python 3.10 новшеств:

  • Реализованы операторы "match" и "case" для сопоставления с образцом, которые позволяют улучшить читаемость кода, упростить сопоставление произвольных Python-объектов и повысить надёжность кода благодаря возможности расширенной статической проверки типов. Реализация во многом напоминает оператор "match", предоставляемый в языках Scala, Rust и F#, который выполняет сравнение результата выполнения указанного выражения со списком образцов, перечисленных в блоках на основе оператора "case".

    
    def http_error(status):
        match status:
            case 400:
                return "Bad request"
            case 401|403|404:
                return "Not allowed"
            case 418:
                return "I'm a teapot"
            case _:
                return "Something else"
    

    Возможна распаковка объектов, кортежей, списков и произвольных последовательностей для привязки переменных на основе имеющихся значений. Допускается определение вложенных шаблонов, использование в шаблоне дополнительных условий "if", применение масок ("[x, y, *rest]"), маппинга связок ключ/значение (например, {"bandwidth": b, "latency": l} для извлечения значений "bandwidth" и "latency" из словаря), извлечения подшаблонов (оператор ":="), использования именованных констант в шаблоне. В классах возможна настройка поведения при сопоставлении при помощи метода "__match__()".

    
       from dataclasses import dataclass
    
       @dataclass
       class Point:
           x: int
           y: int
    
       def whereis(point):
           match point:
               case Point(0, 0):
                   print("Origin")
               case Point(0, y):
                   print(f"Y={y}")
               case Point(x, 0):
                   print(f"X={x}")
               case Point():
                   print("Somewhere else")
               case _:
                   print("Not a point")
    
       match point:
           case Point(x, y) if x == y:
               print(f"Y=X at {x}")
           case Point(x, y):
               print(f"Not on the diagonal")
    
    
       RED, GREEN, BLUE = 0, 1, 2
       match color:
           case RED:
               print("I see red!")
           case GREEN:
               print("Grass is green")
           case BLUE:
               print("I'm feeling the blues :(")
    
    
    
  • Предоставлена возможность использования круглых скобок в операторе with для разнесения на несколько строк определения коллекции контекстных менеджеров. В том числе разрешено оставлять запятую после финального контекстного менеджера в группе:
    
       with (
           CtxManager1() as example1,
           CtxManager2() as example2,
           CtxManager3() as example3,
       ):
           ...
    
  • Улучшено информирование о местоположении в коде ошибок, связанных с незакрытыми фигурными скобками и кавычками в строковых литералах. Например, при незакрытой фигурной скобке вместо информировании об ошибке синтаксиса в следом идущей конструкции, указатель теперь подсвечивает открывающуюся фигурную скобку и информирует об отсутствии закрывающего блока.
    
       File "example.py", line 1
           expected = {9: 1, 18: 2, 19: 2, 27: 3, 28: 3, 29: 3, 36: 4, 37: 4,
                      ^
       SyntaxError: '{' was never closed
    

    Добавлены дополнительные специализированные сообщения об ошибках синтаксиса: отсутствие символа ":" перед блоком и в словарях, не выделение кортежа скобками, отсутствие запятой в списках, указание блока "try" без "except" и "finally", использование "=" вместо "==" в сравнениях, указание *-выражений в f-строках. Кроме того, обеспечено выделение всего проблемного выражения, а не только его начала, и более явное информирование о контексте ошибок, связанных с неверной расстановкой отступов.

    
       >>> def foo():
       ...    if lel:
       ...    x = 2
          File "<stdin>", line 3
           x = 2
           ^
       IndentationError: expected an indented block after 'if' statement in line 2
    

    В ошибках, вызванных опечатками в названии атрибутов и имён переменных в функции, обеспечен вывод рекомендации с правильным именем.

    
       >>> collections.namedtoplo
       Traceback (most recent call last):
         File "<stdin>", line 1, in <module>
       AttributeError: module 'collections' has no attribute 'namedtoplo'.    Did you mean: namedtuple?
    
  • Для отладочных инструментов и профилировщиков обеспечено указание в событиях трассировки точных номеров строк выполненного кода.
  • Добавлена настройка sys.flags.warn_default_encoding для вывода предупреждения о потенциальных ошибках, связанных с обработкой в TextIOWrapper и open() файлов в кодировке UTF-8 без явного указания опции 'encoding="utf-8"' (по умолчанию используется кодировка ASCII). Также в новом выпуске предоставлена возможность указания значения 'encoding="locale"' для установки кодировки на основе текущей локали.
  • В модуль typing, предоставляющий средства для задания аннотаций типов, добавлен новый оператор, позволяющий использовать синтаксис "X | Y" для выбора одного из типов (тип X или тип Y).
    
       def square(number: int | float) -> int | float:
          return number ** 2
    
    эквивалентно ранее поддерживаемой конструкции:
    
       def square(number: Union[int, float]) -> Union[int, float]:
           return number ** 2
    
  • В модуль typing добавлен оператор Concatenate и переменная ParamSpec, которые позволяют передать дополнительную информацию для статической проверки типов при использовании Callable. В модуль typing также добавлены специальные значения TypeGuard для аннотирования функций защиты типов и TypeAlias для явного определения псевдонима типа.
    
       StrCache: TypeAlias = 'Cache[str]'  # a type alias
    
  • В функции zip() реализован необязательный флаг "strict", при указании которого осуществляется проверка на одинаковую длину перебираемых аргументов.
    
       >>> list(zip(('a', 'b', 'c'), (1, 2, 3), strict=True))
       [('a', 1), ('b', 2), ('c', 3)]
    
       >>> list(zip(range(3), ['fee', 'fi', 'fo', 'fum'], strict=True))
       Traceback (most recent call last):
       ...
       ValueError: zip() argument 2 is longer than argument 1
    
  • Предложены новые встроенные функции aiter() и anext() с реализацией асинхронных аналогов функциям iter() и next().
  • На 30-40% ускорена работа конструкторов str(), bytes() и bytearray() при работе с мелкими объектами.
  • Сокращено число операций импорта в модуле runpy. Команда "python3 -m имя_модуля" теперь запускается в среднем в 1.4 раза быстрее за счёт сокращения импортируемых модулей с 69 до 51.
  • В инструкции LOAD_ATTR задействован механизм кэширования отдельных опкодов, который позволил ускорить работу с обычными атрибутами до 36%, а со слотами до 44%.
  • При сборке Python с опцией "--enable-optimizations" теперь включается режим "-fno-semantic-interposition", позволяющий по сравнению со сборкой с опцией "--enable-shared" ускорить работу интерпретатора до 30%.
  • В модулях hashlib и ssl добавлена поддержка OpenSSL 3.0.0 и прекращена поддержка версий OpenSSL старше 1.1.1.
  • Удалён старый парсер, на смену которому в прошлой ветке пришёл парсер PEG (Parsing Expression Grammar). Удалён модуль formatter. Из API asyncio удалён параметр loop.Удалены методы, ранее объявленные устаревшими. Удалены функции Py_UNICODE_str*, манипулирующие строками Py_UNICODE*.
  • Объявлен устаревшим модуль distutils, который запланирован для удаления в Python 3.12. Вместо distutils рекомендовано использовать модули setuptools, packaging, platform, shutil, subprocess и sysconfig. В число устаревших и намеченных для удаления переведена структура wstr в PyUnicodeObject.


  1. Главная ссылка к новости (https://www.mail-archive.com/p...)
  2. OpenNews: 46% Python-пакетов в репозитории PyPI содержат потенциально небезопасный код
  3. OpenNews: Гвидо ван Россум намерен достигнуть двукратного увеличения производительности в CPython 3.11
  4. OpenNews: Проект Pyston, предлагающий Python с JIT-компилятором, вернулся к открытой модели разработки
  5. OpenNews: Facebook открыл код Cinder, форка CPython, используемого в Instagram
  6. OpenNews: Выпуск языка программирования Python 3.9
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/55907-python
Ключевые слова: python
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (212) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 07:25, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +14 +/
    > Реализованы операторы "match" и "case"

    Не прошло и 30 лет) уря

     
     
  • 2.8, Ivan_83 (ok), 07:43, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Странно что у них не было такой базовой возможности.
     
     
  • 3.38, QwertyReg (ok), 10:01, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +9 +/
    А кто решил, что эта возможность - базовая? Без неё вполне обходились.
     
     
  • 4.79, Аноним (79), 13:08, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Обходиться можно и одним while.
     
     
  • 5.121, Тот_Самый_Анонимус (?), 17:52, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    While? Зачем, когда есть if и goto?
     
     
  • 6.177, Аноним (177), 12:04, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    jmpz хватит всем.
     
  • 6.190, Аноним (190), 20:37, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Goto как раз в нем нет
     
     
  • 7.205, Pupkin (??), 08:57, 08/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Или так


    matching = {<value>: <response>, ... }
    return matching.get(value, 'Something else')

     
  • 3.52, Аноним (52), 11:03, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    у них был elif
     
     
  • 4.58, Аноним (58), 11:49, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Python отличается от низкоуровневых языков.

    В Python акцент сделан на поддержке сложных тыпов данных и операций над ними.

    Оператор выбора в Python не нужен и очень вреден.

    Вместо оператора выбора в Python есть очень развитая поддержка типа "словарь". Оператор выбора заменен действием по выбору значения из словаря.

     
     
  • 5.60, Аноним (60), 11:53, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Так там по-моему словарь вместе с матчем переписали на новую эффективную реализацию. В итоге матч эффективней ифов, не говоря уж о том что полезнее. Что такоего вредного? Более чистый код, более быстрый? Надо чтобы плохо было?
     
     
  • 6.77, Псевдоним (??), 13:03, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Но и сам питон становится более жирным, неоднородным, его становится тяжелее понимать (надо знать и элсифы и кейсы и через словари) и учить и сам интерпретатор питона теперь написать (и поддерживать) сложнее.
    Про дзен питона на который давно забыли, если вообще когда-то помнили, ("должен существовать один и, желательно, только один очевидный способ сделать это") я и вовсе молчу.
     
     
  • 7.100, Простоник (ok), 14:54, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Есть тут сермяжная правда. Даже простое elif окажется по количеству букв и строк короче swith/case/break в с. Код при этом остаётся вполне  читаемым.  Ну и реализация с помощью словаря имеет некоторый смысл в особо сложных случаях, когда условий выбора много и они требуют дополнительных проверок.

     
  • 5.82, Аноним (82), 13:20, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это самовосхвалительная туфта Адепты примерно каждого языка такое о своём языке... большой текст свёрнут, показать
     
  • 5.91, вы про перл или питон сейчас (?), 14:16, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    ко-ко-ко-ко... вы про перл или питон сейчас?
     
     
  • 6.179, OpenEcho (?), 14:21, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Пятоно-свитчу (до 3.10) посвящается

    def pyatono_switch(human):
        aka_switch = {
            1: "Men",
            2: "Women",
            3: "Urod"
        }
        print aka_switch.get(human, "Hren ego znaet...")

     
  • 5.124, анонопитонист (?), 18:03, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Вместо оператора выбора в Python есть очень развитая поддержка типа "словарь". Оператор выбора заменен действием по выбору значения из словаря.

    Упоролся? Вот как словарь заменяет-то? Лямбды в него добавлять, которые тоже вроде ну такие были как минимум до последней пары версий (и это даже, возможно, и фича)

     
     
  • 6.181, OpenEcho (?), 14:23, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот как словарь заменяет-то? Лямбды в него добавлять....

    Пятоно-свитчу (до 3.10) посвящается

    def pyatono_switch(human):
        aka_switch = {
            1: "Men",
            2: "Women",
            3: "Urod"
        }
        print aka_switch.get(human, "Hren ego znaet...")

     
     
  • 7.183, анонопитонист (?), 14:44, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >> Вот как словарь заменяет-то? Лямбды в него добавлять....
    > Пятоно-свитчу (до 3.10) посвящается
    > def pyatono_switch(human):
    >     aka_switch = {
    >         1: "Men",
    >         2: "Women",
    >         3: "Urod"
    >     }
    >     print aka_switch.get(human, "Hren ego znaet...")

    Так а если нам действие сделать нужно? Различающееся в разных ветках.

     
     
  • 8.184, OpenEcho (?), 15:02, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    result getattr some_module, aka_switch get human, undefined some_module ... текст свёрнут, показать
     
     
  • 9.187, Аноним (82), 16:03, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Переусложнённый нечитабельный отстой же получается Модуль ещё отдельный городит... текст свёрнут, показать
     
  • 9.188, анонопитонист (?), 16:12, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Имхо, выглядит кривее лесенки if elif else ... текст свёрнут, показать
     
     
  • 10.193, OpenEcho (?), 21:50, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    100 согласен, а со switch-ем еще нагляднее, даже в шеллах и то есть ... текст свёрнут, показать
     
  • 5.141, Аноним (141), 22:26, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Оператор выбора в Python не нужен и очень вреден.

    Потрудитесь обосновать.

    > Вместо оператора выбора в Python есть очень развитая поддержка типа "словарь".

    В чём её развитость?

    > Оператор выбора заменен действием по выбору значения из словаря.

    Кем и когда заменён?

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

     
  • 5.200, Zulu (?), 16:08, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    словарь не заменит match, потому что match позволяет структурное сравнение:

    match alist:
      case [_, 'word2', *rest]: ...
      case ['word1', _, *rest]: ...

    Через словарь такого не сделаешь.

    Да, это иногда выглядит прямо по Борхесу https://ru.wikipedia.org/wiki/%D0%9A%D0%BB%D0%B0 но иногда это надо.

     
     
  • 6.201, n00by (ok), 19:12, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это называется НАМ (нормальный алгорифм Маркова). Третий вариант формализации после Машины Тьюринга и Стрелки Чёрча. Т.е. одного такого match достаточно для реализации алгоритмов, в отличие от словаря.
     
     
  • 7.222, Аннон (?), 18:50, 17/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Стрелки Чёрча

    стреклу Пирса знаю, Чёрча - нет.

     
     
  • 8.224, n00by (ok), 14:45, 18/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Да, спасибо Правильно было бы написать Лямбда Чёрча Стрелка это жаргон из-за... большой текст свёрнут, показать
     
  • 3.80, Аноним (82), 13:08, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Возможность нужная и полезная, но никак не базовая. В большинстве популярных языков её до сих пор нет, в некоторые, например Java, постепенно, очень уж медленно, добавляют, в Kotlin когда-то обсуждали и решили, что "слишком сложно", так и не добавили.

    Это я про pattern matching with deconstruction, если что, не про простой switch-case.

    Но то, что в Python простого switch-case не было - это фейл, да.

    Кстати, я надеюсь, этот новый match-case хоть значение возвращает, как в других языках?

     
     
  • 4.139, Аноним (79), 21:50, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Через какую дырку он их будет возвращать?
     
     
  • 5.170, Аноним (82), 04:23, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Через такую же, как и в других языках. Например так:

    result = match point:
           case Point(x, y) if x == y:
               f"Y=X at {x}"
           case Point(x, y):
               f"Not on the diagonal"

    Вот как в Scala делается (второй пример посмотрите):

    https://docs.scala-lang.org/overviews/scala-book/match-expressions.html

     
     
  • 6.194, Аноним (79), 00:08, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Как в нормальных языках это делается, я знаю. Только по-нормальному - это не питонично.
     
  • 2.17, Жироватт (ok), 08:28, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну...да.
    Учитывая развитие языка как языка proof of и прототипирования first
     
  • 2.54, Аноним (58), 11:45, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –8 +/
    Это большое зло для Python. Лично не буду использовать Python-3.10 и вам не советую.
     
  • 2.180, evocatus (ok), 14:22, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Если вы думаете, что структурный pattern matching это оператор switch из сишечки, то вы вообще не понимаете о чём идёт речь. А вот те, кто хотя бы трогал функциональные языки типа Haskell и Clojure просекли фишку и сейчас радостно потирают руки.
     

     ....большая нить свёрнута, показать (34)

  • 1.2, Аноним (2), 07:34, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    А после версии 3.11 будут версии NT и 95?
     
     
  • 2.19, Жироватт (ok), 08:32, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    3.12

    Ибо разделяться на ветки:
    -> родненький интерпретатор для домохозяек с хендлерами и бсодами
    -> уворованный у IBM интерпретатор Perl/2 но с питоновым синтаксисом и поведением в первом приближении
    не собираются

     
     
  • 3.61, Аноним (61), 12:01, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А, ну тогда после 3.12 - 4.0. NetWare вспомнилось :)
     
  • 2.29, Аноним (-), 08:57, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Прятно видеть человека сидевшего под маздаевским ДОСом.
     
     
  • 3.204, dd (??), 08:12, 08/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Почему по маздаевским? Был чУдный DR DOS
     

  • 1.3, Аноним (3), 07:34, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    Когда уже питонисты начнут пилить поддержку мобилок и нормального гуя из коробки? Весь потанцевал профукали
     
     
  • 2.5, ET (?), 07:38, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +7 +/
    > и нормального гуя из коробки

    а чем tkinter плох?

     
     
  • 3.14, Аноним (3), 08:08, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Всем
     
  • 3.76, мшефд (?), 12:32, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тем, что устроен, как мысли шизофреника.
     
  • 2.9, COBA (?), 07:46, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Никогда. Потому как цели другие совершенно. И по тому куда и как всё идёт скоро не будет вообще никаких локальных приложений кроме системных. Все будут как сервисы.
     
     
  • 3.15, Аноним (3), 08:11, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Этим влажным мечтам что всё будет в вебе уже столько лет, что даже не смешно. Есть много локальных задач для которых нужны именно локальные приложения, а вебня только вредит и позволяет всё централизованно испортить. Как давеча достали свистеть смузилюбы что их инстамордокниги сдохли
     
     
  • 4.31, bugmenot (ok), 09:03, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Охлади своё траханье
     
     
  • 5.164, Аноним (164), 23:41, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    углепластик.
     
  • 2.11, Аноним (60), 07:48, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    PyQt хватит всем. Pyside не знаю зачем, но они вроде взаимозаменяетмые или около того. Ты предлагаешь им изобретать ещё одни кути? А других фреймворков как известно не существует. На телефонах питону не хватает производительности как по мне, там чем больше нейтива тем лучше.
     
     
  • 3.13, Аноним (3), 08:08, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    У этих сбоку прикручиваемых фреймворков с лицензиями вопросики, плюс ты явно не пытался ничего собрать на мобилки на актуальных версиях, особенно PySide, которые прям так у себя в чатике и сказали что раз питон официально не поддерживает мобилки, то и мы не будем
     
     
  • 4.16, Аноним (60), 08:13, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Других всё равно нет.
     
  • 4.62, YetAnotherOnanym (ok), 12:05, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > собрать на мобилки

    Писать на питоне под мобилки - это примерно как циклевать полы лезвием 110-й забивки.

     
     
  • 5.67, Аноним (3), 12:12, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Только потому что нормальной поддержки не завезли.
    В остальном он воообще ни разу не хуже статыщ жабоскриптоподелок
     
  • 4.63, Аноним (61), 12:06, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это у тебя в Свидетельстве о рождении вопросики с лицензией. А у Qt - GPLv2/GPLv3/LGPLv3.
     
     
  • 5.65, Аноним (3), 12:11, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Читай
     
  • 2.32, Аноним (32), 09:15, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > потанцевал

    Питонисты тоже люди, да и полезно программистам при их сидячей работе.

     
  • 2.78, Псевдоним (??), 13:07, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Может быть когда появятся нормальные мобилки(пуризм?) и нормальный гуй?
    Ну и сам факт наличия таких либ как tkinter в стандартной либе (какая же она тогда стандартная) (офк можно не собирать его при сборке из исходников но все же) вызывает недоумение.
     
  • 2.142, Аноним (141), 22:29, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Весь гуй, какой только возможен, в питоне есть - биндинги у qt, gtk, wx, не считая всякую маргинальщину. Мобилки не нужны, но есть kivy.
     
  • 2.221, Мимокрокодил (?), 15:07, 12/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Если Вы не питонист, то, собственно, какое Вам дело? =)
    А если питонист, то почему в третьем лице? Этот вопрос как раз Вам и должен быть адресован ;-)
     

  • 1.4, Имя (?), 07:37, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    > Предоставлена возможность использования круглых скобок в операторе with для разнесения на несколько строк

    Господь Всемогущий, неужели скобки нужны и добавляют читабельности?! Так можно и до инфаркта довести питонбоев, которые 30 лет доказывали обратное.

     
     
  • 2.7, ET (?), 07:40, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +14 +/
    тут скобки нужны именно для переноса строк кода без использования обратного слэша, насколько я понимаю
     
     
  • 3.12, Аноним (60), 08:04, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Именно, как человек страдающий от семиэтажных ифов и слэшей в строках я всецело поддерживаю данное нововведение (в ифах скобки тоже используются кстати).
     
  • 3.18, Имя (?), 08:31, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +4 +/
    А если немного формализовать, то скобки тут нужны для выделения блока кода. Для этого же нужны и фигурные скобки в нормальных языках. Я не знаю чем питонистам скобки помешали, мне с ними гораздо проще ориентироваться: они явно показывают где блок начинается и где заканчивается. В питоне же блоки кода висят в воздухе, никогда не знаешь закончился он уже или там еще продолжение.
     
     
  • 4.21, Жироватт (ok), 08:41, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, как бы это сделано нарочно, чтобы уйти от лесенки из {begin-end|{-}|.code-} и чтобы молодежь сразу писала не слабочитаемые но формально валидные

    if(zul()){foreach(z in zul().result){if(z<foo()+1){baz++;for(int k;k<baz;k++){snafu.DoThisFuckingWork(arg);}}else{bar+=(int)z.takeThisFuckingObjectStaff(baz);}}}else{baz--;}

    а более читаемое


    if(zul())
       foreach(z in zul().result)
          if(z<foo()+1)
             baz++;
             for(int k;k<baz;k++)
               snafu.DoThisFuckingWork(arg);
          else
            bar+=(int)z.takeThisFuckingObjectStaff(baz);
    else
       baz--;

     
     
  • 5.34, Аноним (34), 09:25, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Для этого еще 20 лет назад в мс бейсике было автоформатирование кода при вводе.
     
     
  • 6.35, Жироватт (ok), 09:37, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Все равно нечитабельно, даже с автоформатом

    begin
       begin
          begin
          end
       end
       begin
          begin
             begin
                begin
                   begin ... end
                end
             end
          end
       end
    end

     
     
  • 7.40, 1 (??), 10:10, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ты забыл поставить ; и .

    По мне так вполне читаемо гораздо лучше. Притом не надо думать поставил ты 3 пробела или TAB

     
     
  • 8.55, Вадик (??), 11:46, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Очень субьективно, если ты придерживаешься pep8 и какого-нибудь we make python s... текст свёрнут, показать
     
  • 8.81, Псевдоним (??), 13:18, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Тебе итак и итак нужно делать пробелы и думать что ты поставил табы или пробелы... большой текст свёрнут, показать
     
     
  • 9.118, Урри (ok), 17:28, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Давным-давно, в бородатые времена, когда программисты были еще молодыми и даже у... большой текст свёрнут, показать
     
     
  • 10.128, n00by (ok), 19:32, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Это так в сказке В реале я попробовал объяснить одному разработчику исходных те... текст свёрнут, показать
     
     
  • 11.150, Урри (ok), 22:49, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это не в сказке, это так в реальном мире взрослых нормальных программистов работ... большой текст свёрнут, показать
     
     
  • 12.166, Прохожий (??), 23:59, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А что не так с ними В чём конкретно проблема Copy-paste не работает Это всё ... текст свёрнут, показать
     
     
  • 13.175, Урри (ok), 11:16, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Во-первых, это плохо а не хорошо читаемый код В этой же теме есть пример с поех... большой текст свёрнут, показать
     
     
  • 14.211, Прохожий (??), 15:31, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Выделю ключевой момент в твоих претензиях И даже без предварительной обработки ... большой текст свёрнут, показать
     
  • 12.172, n00by (ok), 09:18, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Эти методы не подходят да и ума не прибавляют Он сам себе менеджер в хелловор... текст свёрнут, показать
     
     
  • 13.173, Урри (ok), 10:59, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Тогда о чем вообще беспокоится ССЗБ и давай досвидания Чей не любовница же, чт... текст свёрнут, показать
     
     
  • 14.178, n00by (ok), 12:54, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Кто ныне переименовывает master в slave Вот такие буратины Набралась критическ... текст свёрнут, показать
     
  • 10.129, Прохожий (??), 19:38, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Раз уж ты заговорил про инструменты и про их целевое назначение, так и быть, отк... текст свёрнут, показать
     
     
  • 11.153, Урри (ok), 22:57, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ты, надеюсь, пишешь это с монокристалла, на котором распаяна память, питание, гр... текст свёрнут, показать
     
     
  • 12.160, Прохожий (??), 23:29, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ты, надеюсь, когда ешь вилкой или ложкой еду, не думаешь, что она вилка сост... текст свёрнут, показать
     
     
  • 13.174, Урри (ok), 11:01, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Будем считать, что от утверждения Готовый комбайн куда лучше всего этого склада... текст свёрнут, показать
     
     
  • 14.212, Прохожий (??), 15:35, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Будем считать твой вопрос про то, на чём я всё это пишу - совсем некорректным К... текст свёрнут, показать
     
  • 10.223, Псевдоним (??), 13:53, 18/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    gt оверквотинг удален Переведу ваше предложение чтобы вывести яйцо мы сначала... большой текст свёрнут, показать
     
     
  • 11.225, Урри (ok), 19:05, 18/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Тяжело, наверное, живется с межушным ганглием Вы в магазине цены тоже неправиль... текст свёрнут, показать
     
     
  • 12.226, Псевдоним (??), 13:09, 19/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Вижу что аргументы у вас закончились, остались только оскорбления Рад что ответ... текст свёрнут, показать
     
     
  • 13.229, Урри (ok), 14:17, 19/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Аргументы я привел в посте, на который вы невероятно глупо ответили Причем это ... текст свёрнут, показать
     
     
  • 14.232, Псевдоним (??), 11:26, 20/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Еще раз - зачем нужны фигурные скобки, если их функцию итак выполняют пробелы к... текст свёрнут, показать
     
  • 7.94, Урри (ok), 14:40, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы спутали бейсик с паскалем? Ого.
     
     
  • 8.227, Псевдоним (??), 13:13, 19/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ничего не спутал, тогда в вузе преподавали бейсик До сих пор на антресоли тетра... текст свёрнут, показать
     
     
  • 9.228, Урри (ok), 14:11, 19/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    публично обгадиться и две недели спустя обгадиться второй раз Ну чо, поздра... текст свёрнут, показать
     
     
  • 10.230, Псевдоним (??), 21:50, 19/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Вас не смущает что вы смешали комментарии разных людей ... текст свёрнут, показать
     
  • 7.199, anonymizer (?), 15:33, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ты хочешь от говнокода читаемости? Сделай нормально методами класса.
     
  • 5.93, _kp (ok), 14:39, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Только исходник со скобками можно отформатировать в любой стандарт, а исходник на Питоне, если запорол, да он чужой, то... как всё изящно... и как элегантен поиск мест ошибок...
     
     
  • 6.154, Урри (ok), 22:59, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Все эти питоняшки, отстаивающие "такой суперсинтаксис питона" пишут одноразовые программы. Написал, запустил и в мусорку.

    А вы им про "чужой код" и поиск ошибок. Какой поиск? Если не работает - вытер файл и пиши по новой.

     
     
  • 7.231, Псевдоним (??), 21:51, 19/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Все эти питоняшки, отстаивающие "такой суперсинтаксис питона" пишут одноразовые программы.
    > Написал, запустил и в мусорку.
    > А вы им про "чужой код" и поиск ошибок. Какой поиск? Если
    > не работает - вытер файл и пиши по новой.

    Просто ваш возраст похоже не позволил вам видеть perl.

     
  • 4.66, Аноним (61), 12:11, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >никогда не знаешь закончился он уже или там еще продолжение

    Очевидно же, если следующая строка начинается левее, то закончился.

    PS А то на ini-файлы Сыстемды как-то не жалуетесь: закончилась ли текущая секция?

     
     
  • 5.155, Урри (ok), 23:00, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Очевидно же, если следующая строка начинается левее, то закончился.

    У меня шрифт не моноширинный. Так что там про "левее"? Или язык программирования не должен существовать без единственно верного, прибитого к нему гвоздями редактора?

     
  • 3.39, QwertyReg (ok), 10:03, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Не вникайте, у бота просто сработал триггер, на Пистоне оно и строчки не написало.
     
  • 2.49, Аноним (49), 10:53, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Заодно можно ввесть фигурные скобки { вместо говночетырехпробелов и говнотабов.
     
     
  • 3.57, Вадик (??), 11:49, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Покая я заметил, что 90% тех кто хочет где-то там в другом языке менять синтаксис никогда не писали на нем :)
     
     
  • 4.96, Урри (ok), 14:43, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    "Я не толстая, они мне просто завидуют" (с) любой питонист на любое "у питона синтаксис объективно говняный".
     
     
  • 5.116, Вадик (??), 17:23, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А я и не питонист :p
    Go + Java, просто смотришь на умников тут и понимаешь, что чем больше сейчас народу в IT входит тем хуже сообщество становится относительно знаний, опыта и... общения.
     
     
  • 6.119, Урри (ok), 17:31, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А, ну это да. Тут ты 100% прав, не смею спорить.
     
  • 5.131, Прохожий (??), 19:45, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну-ка, ну-ка, как ты докажешь, интересно, ОБЪЕКТИВНОСТЬ говняности синтаксиса Питона. Мне вот для моих целей вполне нормально.
     
     
  • 6.156, Урри (ok), 23:10, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Ну-ка, ну-ка, как ты докажешь, интересно, ОБЪЕКТИВНОСТЬ говняности синтаксиса Питона.
    > Мне вот для моих целей вполне нормально.

    Для соответствующих целей и соответствующий синтаксис нормально подходит.

    Правда, при этом у раста и джаваскрипта все намного хуже. Так что я не так сильно не люблю питон, как может показаться. Убрать отступы, идиотские if __name__ == "__main__": do и вполне можно жить.

     
  • 3.71, Аноним (61), 12:15, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не нужно. Мне и двух пробелов хватает.
     
  • 2.56, Вадик (??), 11:47, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А как ты без скобок будешь ограничевать пространство выражения?
     
     
  • 3.108, Аноним (108), 16:30, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Они хотят больше отступов всевышнему отступов.
     
  • 3.123, Аноним (123), 17:55, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Можно сделать дробные отступы, например. Везде 4, а для круглых скобок - 3. Много есть способов сделать всё через Ж, если откровенно говорить.
     
     
  • 4.157, Урри (ok), 23:11, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Можно сделать дробные отступы, например. Везде 4, а для круглых скобок -
    > 3. Много есть способов сделать всё через Ж, если откровенно говорить.

    Можно добавить юникодные пробелы разной ширины. Тут есть хорошая табличка: https://jkorpela.fi/chars/spaces.html

     

     ....большая нить свёрнута, показать (51)

  • 1.20, Аноним (20), 08:40, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    >Реализованы операторы "match" и "case" для сопоставления с образцом

    Вреднейшее изменение. Единственно верный способ - через ассоциативный контейнер. A if else if else if else if - это говнокод, а match - сахар для него.

     
     
  • 2.25, Жироватт (ok), 08:49, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Которые да, правда, нужно делать
    а) из общего класса "ассоциативный контейнер Х" класс "иммутабельный ассоциативный контейнер Х"
    б) каким-то образом оптимизировать по памяти и времени инициализации.
    в) у еще будет вопрос с областями видимости контейнера.

    В то же время простые константные типы сами по себе неизменяемы сразу и без вопросов, не требуют затрат на создание и кучи меты для хранения и при это явно следуют правилам видимости переменных языка: к примеру, константа заданная в match видна только там и это на деле хорошо.

     
     
  • 3.161, Аноним (164), 23:31, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Вот эти проблемы и надо было решать, а не несуществующие проблемы.

     
  • 2.42, n00by (ok), 10:17, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >>Реализованы операторы "match" и "case" для сопоставления с образцом
    > Вреднейшее изменение. Единственно верный способ - через ассоциативный контейнер.

    Если сопоставление с образцом возможно реализовать через это -- оно неполноценное сопоставление.

    > A if else if else if else if - это [Вырезано Цензурой],
    > а match - сахар для него.

    Сопоставление с образцом первично и позволяет обходиться без этих ваших утрирований.

     
  • 2.69, Аноним (79), 12:14, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ну-ка реализуй пример про Point через ассоциативный контейнер.
     
  • 2.144, Аноним (141), 22:31, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ты тот ламерок что уже выше написал? Продублирую:

    > Оператор выбора в Python не нужен и очень вреден.

    Потрудитесь обосновать.

    > Вместо оператора выбора в Python есть очень развитая поддержка типа "словарь".

    В чём её развитость?

    > Оператор выбора заменен действием по выбору значения из словаря.

    Кем и когда заменён?

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

    > Единственно верный способ - через ассоциативный контейнер

    Ну сделай на нём все примеры испоьзования матча из новости, вместе посмеёмся.

     
  • 2.191, Аноним (190), 20:39, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    If else не проверяет полноту, как и контейнер. Да и типами и статическим анализом засада
     

  • 1.22, Аноним (20), 08:42, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >Предоставлена возможность использования круглых скобок в операторе with для разнесения на несколько строк определения коллекции контекстных менеджеров. В том числе разрешено оставлять запятую после финального контекстного менеджера в группе

    Конечно, круто, но на python 3.4 этого не завезли и не завезут. Ибо они дропнули ХРюшу вместе с 3.4.

     
     
  • 2.26, Аноним (26), 08:54, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >Дропнули двадцатилетнее дырявое говно мамонта.

    Пишаль-бидэ.

     
  • 2.28, Жироватт (ok), 08:56, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > они дропнули ХРюшу вместе с 3.4.

    Как что-то плохое. Учитывая, что последующие три ОС (виста, семень, восемь-без-единицы) уже в состояниях abadoned и out-of-extended-support соответственно, а восемь-один близко к завершению lifecycle.

     
  • 2.146, Аноним (141), 22:33, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    И тут вы... Я когда узнал что поддержка 3.4 нужна для этих хрюшефилов ужаснулся и специально её дропнул в своём приложении. Ещё не хватало вам, паразитам, комфортные условия создавать.
     

  • 1.23, Аноним (20), 08:44, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >В модуль typing, предоставляющий средства для задания аннотаций типов, добавлен новый оператор, позволяющий использовать синтаксис "X | Y" для выбора одного из типов (тип X или тип Y).

    Бэкпортируемо на 3.4

     
  • 1.24, Аноним (20), 08:46, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    >Удалён старый парсер, на смену которому в прошлой ветке пришёл парсер PEG (Parsing Expression Grammar).
    >Мы не осилили LL(*)

    - ситуация называется.

     
     
  • 2.89, анонн (ok), 13:55, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Потому что гладиолус!

    Ясно.


     
  • 2.195, Аноноша (?), 01:56, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    В прошлой новости о новой версии Python писали, почему это было сделано. Ну и вообще зачем и почему делается та или иная фича у Python собрано тут https://www.python.org/dev/peps/pep-0617/
     

  • 1.33, Аноним12345 (?), 09:17, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Живее всех живых
     
  • 1.41, Аноним (41), 10:14, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Python шляпа
     
     
  • 2.106, Аноним (106), 15:49, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Боярского?
     

  • 1.44, Skullnet (ok), 10:40, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    Пока питон будет работать в 25 раз медленнее, чем С++, а не в 1,5-3 хотя бы, применений ему мало. Я уже не говорю о том, что очень нужные в разработке библиотеки (например для многопоточности и async await) написаны нубами.
     
     
  • 2.48, Аноним (49), 10:51, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Что ты собрался делать с такой скорость, ор.
     
     
  • 3.50, Skullnet (ok), 10:53, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Даже обычные десктопные приложения юзающие Qt тормозят, что уж говорить про все остальное.
     
     
  • 4.73, Аноним (61), 12:19, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Которые на C++? 8-) УМВР.
     
     
  • 5.88, Аноним (82), 13:41, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У меня тоже не тормозят. Какой-то миф таскают по форумам уже несколько лет.
     
  • 4.109, Аноним (108), 16:30, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну и куда тебе тогда спешить?

     
  • 3.70, YetAnotherOnanym (ok), 12:14, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вот так и палятся админы локалхоста, которым начальство никогда не задавало вопрос "А почему на нашем неплохом и недешёвом железе всё так адски тормозит даже при небольшой нагрузке?".
     
     
  • 4.74, Аноним (61), 12:20, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Весь ИИ на Питоне и чё? Никто не помер.
     
     
  • 5.86, Вася (??), 13:34, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Жава, фортран, си да плюсы. Где-то может еще лисп\пролог остался, ну если не сеточки а логическое программирование.
    От питона там тока обёртки(типичный кстати "пайтон вэй" - спереть чото, обернуть в пайтон и орать как же быстр(!) и хорош их язык и как же на нем много всего "сделано").
    А по сути он язык-прокладка.
     
     
  • 6.115, Старший аноним (?), 17:13, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Васян, и кто же из нормальных дата сатанистов втыкает в Java или C++ да и зачем им это? А на Python любой школьник и даже Васян могут через недельку начать выдавать нейронки.
     
  • 5.97, Урри (ok), 14:45, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Весь ИИ на С++, деточка. А на питоне только внешняя обвязка для макак, чтобы могли этот С++ вызывать.
     
     
  • 6.110, Аноним (108), 16:31, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А нафига ему быть на питоне?
     
     
  • 7.112, Урри (ok), 16:54, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это не ко мне вопрос, а к анониму 61 выше.
     
  • 6.132, Прохожий (??), 19:56, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Предположу, что вот те учёные, которых ты макаками обозвал, куда более интеллектуально развитее подавляющего большинства программистов на C++.
     
     
  • 7.143, Урри (ok), 22:31, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А с чего ты взял, что я про ученых, а не опеннетных "программистов" на питоне, которые даже не знают что под капотом у пайторча, нумпи и иже с ними?

     
     
  • 8.158, Прохожий (??), 23:22, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Учёные тоже используют Питон И далеко не всегда они готовы вникать в нюансы раз... текст свёрнут, показать
     
     
  • 9.159, Урри (ok), 23:25, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Прочитал Можно Но мы же на опеннете, ресурсе для программеров и иже с ними По... текст свёрнут, показать
     
     
  • 10.162, Прохожий (??), 23:33, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Может быть потому, что учёные здесь тоже могут присутствовать ... текст свёрнут, показать
     
  • 2.117, Вадик (??), 17:25, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Отлично, Андрея назвал нубом за глаза, а чеж не в лицо на конфе какой-нибудь?
     
  • 2.126, PavelBook (?), 18:27, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Просто нужно использовать его не на Pentium 133 Mhz Он объективнее быстрее и го... большой текст свёрнут, показать
     
     
  • 3.185, Аноним (82), 15:44, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Согласен с мыслями в посте, но вот эти обратные слэши вместо прямых

    > компиляцию\дебаг\нахождение багов
    > Python\Ruby
    > Rust \ Go \ C

    выглядят так по уродски, аж рвотный рефлекс появляется. Что это? Escaping? Поклонение винде? Брр

     
  • 2.147, Аноним (141), 22:39, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Открою секрет - он работает в 100-300 раз медленнее, и от этого его применимость ну вообще никак не страдает, и компилируемые языки он вытеснял и продолжает вытеснять. Ассимилировать, точнее, ибо место им - для написания быстрых питоновских модулей.
     
  • 2.167, th3m3 (ok), 01:45, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Приходи через год :) Обещали ускорить в два раза.
     

  • 1.46, Аноним (49), 10:49, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Единственный нормальный язык программирования.
     
     
  • 2.72, YetAnotherOnanym (ok), 12:16, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Единственный язык программирования, который я освоил.

    Пофиксил.

     
     
  • 3.133, Прохожий (??), 19:59, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Если у человека программирование не цель жизни, а просто рабочий инструмент, то и нормально. Я к тому, что прежде, чем выливать накопившийся ядок и презрение - хорошо бы иной раз голову напрягать (при условии, что она имеется, конечно).
     
     
  • 4.145, Урри (ok), 22:33, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    нормальные люди не троллят "единственный нормальный".
     
     
  • 5.163, Прохожий (??), 23:36, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я так понимаю, чел своё субъективное мнение высказывал, не претендуя на объективность. В его мире Питон действительно единственный нормальный язык программирования. Ну и что тут такого? Зачем тут же троллить?
     

  • 1.53, Аноним (53), 11:05, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ожидал увидеть дежурной шутки, что опять придется всё с нуля переписывать, но нет. Наблюдая за раздутием питона теперь и не скажешь, что он легче всего осваивается. Раньше может так и было, но сейчас уже нет.
     
     
  • 2.149, Аноним (141), 22:42, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А ничего не изменилось. Подмножество языка которое "раньше" "легко осваивалось" вообще никак не поменялось - если у вас в голово сверх него ничего не способно поместиться, освойте его и живите счастливо. При этом для остальных появилась возможность по мере надобности освоить и более эффективные "новые" конструкции.
     
     
  • 3.186, Аноним (82), 15:47, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Вот такая же фигня с С++. В новых версиях появляются новые конструкции, упрощающие синтаксис, а тупаки, которые на С++ то и не пишут, орут про усложнение.
     
     
  • 4.210, myhand (ok), 05:42, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Отличия приплюснутого, что это было монстром с рождения.  И следы пьяного буйства папеники языка никто удалять и не почешется - ибо совместимость.  А в питоне есть стандартные механизмы удаления ненужного, неудобного и кривого: см. removed & deprecated секции What’s New.
     
     
  • 5.216, Аноним (82), 21:53, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, попытка перевсти тему обсуждения с новых синтаксических фич на "ах какой плохой этот С++". Про монстров - это субъективное мнение хейтера-неосилятора, можешь других неосиляторов пугать. В С++ просто много фич, недоступных во многих других языках. В Java тоже есть и генерики с <> и доступ к методам класса через ::, однако почему-то не слышно такого же воя про Java-монстра.

    К изначальному тезису про то, что новые синтаксические фичи упрощают разработку, а не усложняют её, возражений нет, как я понимаю?

     
     
  • 6.218, myhand (ok), 05:27, 10/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > "ах какой плохой этот С++" ... неосиляторов пугать

    Плохой в том смысле, что это некрасивый, переусложненный язык.

    > К изначальному тезису про то, что новые синтаксические фичи упрощают разработку, а
    > не усложняют её, возражений нет, как я понимаю?

    Зависит.  С чего вдруг дизайнеры языка стали вдруг лучшими друзьями человечества и перестали совершать ошибки?  Нет, ответ "просто не пользуйтесь" - катит только для уровня хелворлда.  Потому что коллеге Васе вы запретить не можете, а вы будете ковыряться в его коде (ради рецензирования, поддержки, добавление нового функционала).

     
     
  • 7.219, Аноним (82), 13:44, 10/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну то есть конкретно да или нет ответить не можешь? Каких-то абстрактных друзей человечества приплёл... Серьёзно, это уровень твоей аргументации? "Друзья человечества"?
     
     
  • 8.220, myhand (ok), 16:35, 10/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Почему абстрактных Вполне конкретных, например разработчики питона ... текст свёрнут, показать
     

  • 1.68, Аноним (68), 12:13, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Поздравляю питоняшек!
    Язык взрослеет. Авось и вы со смуззей на благородные напитки перейдете. А там, глядишь и код подтянется!
     
     
  • 2.111, Аноним (108), 16:33, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это джаваскриптизеры  заполонили.
     
     
  • 3.120, Аноним (68), 17:31, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Дооо, нода уже не та!
     
  • 2.134, Прохожий (??), 20:01, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Благородные напитки - это коньяк по утрам и пиво с водкой на ужин?
     

  • 1.84, Вася (??), 13:29, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Пока GIL не выпилят - ненужно.
    Многопоточность по сути отсутствует. Ну кроме варианта когда ввод\вывод, тогда GIL не карает потоки.
    Вот это нужно.
    Еще возможность задать тип данных(ну чтоб "сюда класть тока инт"), оно и быстрее без проверок, и будет сразу видно где и почему упало.
    И будет уже вполне кошерный язык погромирования.
     
     
  • 2.99, Аноним (99), 14:48, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Сто раз уже сказали - выпилить GIL нельзя, то что получит ся, будет уже не pythonом.
     
  • 2.189, Аноним (141), 18:18, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    GIL не нужно выпилиывать. На самом деле, гарантированная однопоточность, как ни парадоксально, - это лучшее что может быть в языке на котором предполагается писать многопоточные приложения, потому что сразу заставляет делать эффективную и безопасную синхронизацию (ака передача сообщений), а не дырявую лапшу с кучей контеншона на мутексах и критических секциях.
     

  • 1.87, МояВенда (ok), 13:41, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Клуб любителей посчитать пробелы и половить ошибки в рантайм. Хорошо что от этого непотребства потихоньку отказываются в пользу новых современных языков.
     
     
  • 2.127, Аноним (127), 19:15, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это каких, например?
     
  • 2.135, Прохожий (??), 20:04, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ты хоть раз на TIOBE ходил, тенденцию популярности языков смотрел? Ох уж эти мне газификаторы луж...

    https://www.tiobe.com/tiobe-index/

     
     
  • 3.202, МояВенда (ok), 20:31, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А в чем собственно противоречие-с? Пайтон - язык для школьников и еще не окрепших умом студентов, плюс куча научного легаси, который потихоньку переписывается на Джулию.
     
     
  • 4.215, Прохожий (??), 16:57, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > А в чем собственно противоречие-с? Пайтон - язык для школьников и еще
    > не окрепших умом студентов, плюс куча научного легаси, который потихоньку переписывается
    > на Джулию.

    Ещё раз спрошу, на Тиобе сходил, график увидел? Если да, где ты там усмотрел "потихоньку отказываются"? Если линия вверх идёт - это обозначает, что популярность языка растёт. Вдруг ты не умеешь графики интерпретировать.

    По поводу студентов, не окрепших умом, и "научного легаси". У тебя и статистика есть? Или продолжаем заниматься любимым занятием -  газифицировать лужи?

    Ну и наконец. Вот я окреп умом и очень давно уже не школьник. Но Питон использую в своей рутине, для моих нынешних задач - самое оно. Хотя при этом знаю и другие языки, так или иначе использовал/использую их в своей работе.

     

  • 1.92, Аноним (92), 14:29, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Питон стал слишком фичастый и потерял былую простоту, к сожалению.
     
  • 1.98, Проходящий Мимо (?), 14:45, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вообще питон уходит от своего первостепенного направления, как самый читаемый ЯП.
    Так как они добавили всякие пайпы.

    Это язык, который изначально, чтобы не вводить символы сделал операторы and и or.

    А теперь всё больше и больше становится похож на мутанта с нагромождением всего.

    Лично меня это немного печалит, мне нравилось, что у языка почти всё можно было описать словами.

     
     
  • 2.151, Аноним (141), 22:51, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > мне нравилось, что у языка почти всё можно было описать словами

    Это вам сразу в паскакаль тогда, бэгинэндами обмазываться. В реальном мире т.н. естественные языки сейчас мало применимы даже для своей основной задачи, поэтом и заменяются всяческими эмодзями. Для формальных вещей типа программирования эти избыточные, визуально неотличимые буковки не нужны абсолютно точно.

     
  • 2.196, Аноноша (?), 02:13, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    https www python org dev peps pep-0635 or-patterns Еще 124 в описании типо... большой текст свёрнут, показать
     
     
  • 3.208, Вячеслав (??), 15:14, 08/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Но к python проблема C && и || не относится. Зачем вы это написали?
     
     
  • 4.217, Аноноша (?), 23:31, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Но к python проблема C && и || не относится. Зачем вы
    > это написали?

    В ответ на

    > Это язык, который изначально, чтобы не вводить символы сделал операторы and и or.

     

  • 1.101, Простоник (ok), 15:16, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Отлично. Некоторые фичи спорны, но в целом есть и полезные улучшения.
    Пользуясь случаем напомню известный финт про словарь вместо кейса.
    Мне кажется вполне наглядно.
    Лямбды совсем не обязательны.
    def get_temp_description(temp):
        return {
                   temp < -20: 'Холодно',
            -20 <= temp < 0:   'Прохладно',
              0 <= temp < 15:  'Зябко',
             15 <= temp < 25:  'Тепло',
             25 <= temp:       'Жарко'
        }[True]
    Интересный вопрос. На каких яп  ещё можно такие финты запуливать? На ruby, видимо, можно...
     
     
  • 2.103, Аноним (92), 15:26, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Можно, ну нужно ли? Как по мне, это наоборот минус
     
     
  • 3.105, Простоник (ok), 15:39, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А минус в чём именно? Для скриптов как раз очень выразительно, код читается легко. В чём именно тут минус?
     
     
  • 4.113, Урри (ok), 16:59, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > А минус в чём именно? Для скриптов как раз очень выразительно, код
    > читается легко. В чём именно тут минус?

    В данном случае в том, что из-за немоноширинного шрифта эта программа выглядит кошмарно и в принципе неподдерживаема.

    А словари да, мощная и очень выразительная вещь. Одна из киллер фич языка, которая вопреки идиотскому дизайну таки смогла сделать его популярным.

     
  • 4.138, Аноним (127), 21:44, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Могу предположить, что в том, что просчитываются все выражения, а не до первого True. Плюс, дополнительные аллокации каждой строки-результата и самого словаря в целом.
     
     
  • 5.140, Аноним (127), 22:09, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Хотя тут ещё другая проблема есть.

    В решении со словарём приоритет выполнения идёт с конца, потому что новые элементы заменяют предыдущие. Это сильно отличается от if-elseif-else, где приоритет выполнения идёт с начала.

    Здесь эта проблема решена тем, что все остальные условия выдают False, но если это не обеспечить, то это может выстрелить в ногу.

     
  • 5.171, Простоник (ok), 08:32, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    "Аллокация" тут будет совсем на такая как в С.  Строки инициализируются один раз, словарь также. Избыточный цикл по словарю присутствует.
    Ответ на вопрос нужно ли такой код оптимизировать совсем не очевиден.
     
  • 2.152, Аноним (141), 22:57, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Интересный вопрос. На каких яп  ещё можно такие финты запуливать? На ruby, видимо, можно...

    Такие финты это какие?

    Создать словарь с bool ключём, нааллоцировать элементы, таблицу, в которой будет заполнено не более двух элементов? Везде.

    Сконструировать кучу элементов, зааллоцировать строк, чтобы сразу больше половиных из них выкинуть? Везде.

    Вместо того чтобы посчитать только условия до первого срабатывания как в if/elif/else, посчитать их все условия? Везде.

    Все языки позволяют делать неэффективно, глупо и нечитаемо.

     

  • 1.102, Аноним (102), 15:23, 05/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > значительный выпуск языка программирования Python 3.10. Новая ветка будет поддерживаться в течение полутора лет
    > язык программрования
    > будет поддерживаться в течение полутора лет

    И, судя по новшествам, изначально язык был сляпан кое-как, а затем к нему изолентой прикручивались (часто с потерей совместимости) средства, давно используемые в нормальных языках.

     
     
  • 2.104, Простоник (ok), 15:35, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Потеря совместимости произошла по крупному при переходе от версии 2 к версии 3.  
    А какие яп проектируются заранее один раз и в последствии не изменяются никогда и ни при каких обстоятельствах и обеспечивают при этом совместимость, переносимость на разные платформы. Такого я что-то не припомню...
     
     
  • 3.114, Урри (ok), 17:01, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Такого я что-то не припомню...

    Ansi C тридцатилетней давности (это там, где типы аргументов перечисляются в теле функции после объявления) спокойно компилируется современными компиляторами. С++ двадцатилетней давности. Фортран. Лиспы оба. Ада. Паскаль.

    Да почти все из популярных и бывших оными.

     
     
  • 4.125, Простоник снова (?), 18:20, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вера в Деда Мороза присуща и взрослым. Спецификация ANSI X3.159-1989 и современный компилятор совсем не тождественны. В рамках одного семейства ОС Unix/Linux и одного компилятора(!)  оно и существует.
    С фортранами несколько получше(коих несколько лежит в дедушкином сундуке!),ну  а Паскаль в стандартизированном виде практически не наблюдался никогда.
    В этом смысле python недостижим. Диалекты и сторонние реализации практически редки. Все используют единственную(!) реализацию python2 или python3 вместе с батарейками.Документация описывает не некий стандарт, а реализацию. Тысячи людей переносят свои программы между разными версиями и разными ОС простым копированием файлов. Такой невиданный ранее бедлам, ранее практически не встречался.
     
     
  • 5.148, Урри (ok), 22:40, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> Ansi C тридцатилетней давности (это там, где типы аргументов перечисляются в теле функции после объявления) спокойно компилируется современными компиляторами.
    > Спецификация ANSI X3.159-1989 и современный компилятор совсем не тождественны.

    В огороде бузина, а в городе дядька. Типичный опеннетчик не способен осилить одно предложение, а туда же - комментировать.

    > В этом смысле python недостижим.

    О да. Программы пятилетней давности не работают вообще, все (если, конечно, не вытащшить компилятор той же пятилетней давности). В этом питон выигрывает даже у хруста. Действительно, недостижим.

    > Все используют единственную(!) реализацию python2 или python3 вместе с батарейками.

    Единственную реализацию "реализация 1" или "реализация 2". У-ха-ха-ха-ха-ха. Ну я даже не знаю что тут можно сказать. У меня есть единственный стул - один зеленый и один красный. Пххххххххх.

    > Документация описывает не некий стандарт, а реализацию.

    И это п-ц полнейший. Именно, что П-Ц!

    > Тысячи людей переносят свои программы
    > между разными версиями и разными ОС простым копированием файлов.
    > Вера в Деда Мороза присуща и взрослым.

    Даже добавить нечего.

    > Такой невиданный ранее бедлам, ранее практически не встречался.

    Да, не встречался. Раньше программисты понимали что такое технический долг и думали, прежде чем делать.

     
     
  • 6.207, Вячеслав (??), 11:57, 08/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Пять лет назад вышел python 3.6. Можете сказать какая программа написанная для 3.6 не будет работать на 3.10?
     
     
  • 7.213, Прохожий (??), 15:52, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Пять лет назад вышел python 3.6. Можете сказать какая программа написанная для
    > 3.6 не будет работать на 3.10?

    Он, наверное, имел ввиду версию 2.*. Программы, написанные в ней, действительно не будут работать в 3.*. Вряд ли такой подход можно считать хорошим (с точки зрения разработчиков языка), когда рушится совместимость.

     
  • 3.130, Аноним (102), 19:39, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вот только не надо про
    > никогда и ни при каких обстоятельствах

    Понятно, что развитие идёт.
    Питон делался с оглядкой на С, какие особые обстоятельства помешали сделать аналог сишного switch?
    И эти метания от скобок к табам и обратно к скобкам. Какие чудесные преимущества принёс отказ от сишных скобок?
    Речь о том, что он изначально не был продуман.

     
     
  • 4.136, Прохожий (??), 20:14, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Python делался с оглядкой на ABC programming language. C там и близко не было.
    C-шные скобки плохо читаются в большом коде без корректного форматирования. Выше обсуждение было.
     
     
  • 5.137, Аноним (102), 21:13, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Испытал влияние Алгол-68, АВС, Модула-3, Си, С++, Perl, Java, Лисп, Haskell, APL, Клу, Dylan, Icon и SML.
    (https://ru.wikipedia.org/wiki/Python)
    Табы роднят его с АВС, это верно. Но и в АВС есть select.
     
     
  • 6.165, Прохожий (??), 23:43, 05/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты мне лучше покажи хоть какое-то сходство с C в Питоне. "Испытал влияние" - очень размытая фраза.
    Питон - мультипарадигменный. С - процедурный. Питон - со строгой типизацией. С - со слабой. Питон - с динамической типизацией. C - со статической типизацией. Питон без указателей со сборщиком мусора. С - указатели и вот это вот всё. Питон - нет макросов. С - есть. Питон - довольствуется отступами. С - скобочками. Питон - интерпретатор. С - компилятор. Питон - язык высокого уровня для прикладных задач. C - язык среднего уровня для системных задач. И т.д. и т.п.

    Где в этом можно было усмотреть схожесть, остаётся только догадываться.

     
     
  • 7.192, Аноним (102), 21:24, 06/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо, согласен
    > Python делался с оглядкой на ABC

    но ведь
    >  в АВС есть оператор select.

    И Гвидо о нём наверняка знал :) (Если разрабатывал АВС)
    Что ж он не взял его в питон сразу?
    Дальше
    > Питон - мультипарадигменный.

    Это тоже из АВС?
    Я привёл ссылку, из каких  языков Гвидо брал идеи для питона.
    Это сборная солянка. В состоянии приготовления и перемешивания.
    Попробовали - получилось не очень - выплеснули (pgen2), замешали по новой. Но "народу нравится!"
    Может быть в АВС кто-то сдерживал энтузиазм Гвидо? Зато с питоном он оторвался по полной :)

     
     
  • 8.214, Прохожий (??), 15:58, 09/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Посчитал лишней конструкцией из-за принципа всё должно делаться только одним сп... текст свёрнут, показать
     

  • 1.168, th3m3 (ok), 01:46, 06/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ждём ускорения через год. Интересно, что из этого выйдет.
     
     
  • 2.197, Аноноша (?), 02:17, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Обещали завести простой (не оптимизирующий) jit компилятор. Ждем.
     

  • 1.176, Аноним (68), 11:25, 06/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Посоны, сервер матрикса опять лег. Вот прямо сейчас. Не пилите такие проекты на питонах. Получается плохо.
     
     
  • 2.198, Аноноша (?), 02:19, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не сможешь сделать произведение искусства из глины, но это не означает, что из глины нельзя сделать произведения искусства.
     
     
  • 3.203, Аноним (68), 23:31, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Сегодня опять и сообщения и звонки не проходили. Когда на го перепишут  глину правильную подвезут?
     

  • 1.206, Alex (??), 10:14, 08/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Автор явно льстит питону в своей отсылке к f#. Даже рядом по удобству паттерн матчинг питона не стоит. А вообще, год разработки явно зря не прошёл. Может ещё 10 лет и i++ завезут.
     
     
  • 2.209, Вячеслав (??), 15:15, 08/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    в f# i++ уже завезли?
     

  • 1.233, AircGroup (?), 22:33, 09/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Мне больше было интересно match: case: наконец то без костылей... Но жалко что не буду пробовать - я на windows7 сижу ведь я не люблю и не особо уважаю windows10. мне любопытно будет компиляторный python. Ведь мне приходится переписывать некоторые проекты на java и похоже скоро и на С++.(проблемы с постепеным удалением JRE со многих ПК) Потому что exe-шники много весят. 30мб за игру Пинг-понг это не тема(у меня медленный интернет и это мне важно). я слышал про Cython но там же модули ".so"
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру