Size: a a a

Programming Offtop

2021 January 25

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
А там нельзя больше сделать фильтров и мэпов внутри. Пиши соседними компрехеншнами.
list = [it + 1 for it in list]
list = [for it in list if it % 2 == 0]
Которые еще и не склеиваются. А в питоне аллокация листа - это не в отлине аллокация листа. Она не оптимизируется
источник

AM

Andrew Mikhaylov in Programming Offtop
Алексей
ленивость как раз в этом случае круче, в том плане что эффективнее получается
А оно, кстати, умеет фьюзить соседние операции, которые возможно фьюзить?
источник

YN

Yaroslav Nikitenko in Programming Offtop
Alexander Nozik
SQL - так себе пример. Его писали в те времена, когда про проблемы парсера думали больше, чем про проблемы пользователя.
SQL значит что это используемый и знакомый язык. Фильтр в конце - это ничего особенного.
источник

KD

Konstantin Dovnar in Programming Offtop
Алексей
не станет
Как скажешь.
источник

YN

Yaroslav Nikitenko in Programming Offtop
Alexander Nozik
Которые еще и не склеиваются. А в питоне аллокация листа - это не в отлине аллокация листа. Она не оптимизируется
А питон не для оптимизации.
источник

QH

Quantum Harmonizer in Programming Offtop
https://youtu.be/x76RBCRVkTE?t=532 ещё про говно
источник

I

Igor in Programming Offtop
central hardware
¯\_(ツ)_/¯
источник

AN

Alexander Nozik in Programming Offtop
Yaroslav Nikitenko
Мне это удобно, если конструкции простые.
Это идиома языка)
Ну так да. Питон отличный и идиоматичный, когда речь о простых вещах. Но очень быстро упираешься в не-идиоматичность, как только надо что-то сложнее. Это не значит, что не надо на нем писать (мы его преподаем на общефизе). Это значит, что он неудобен для более сложных штук
источник

YN

Yaroslav Nikitenko in Programming Offtop
Alexander Nozik
Ну так да. Питон отличный и идиоматичный, когда речь о простых вещах. Но очень быстро упираешься в не-идиоматичность, как только надо что-то сложнее. Это не значит, что не надо на нем писать (мы его преподаем на общефизе). Это значит, что он неудобен для более сложных штук
Да, я подозреваю что от 10 тысяч строк и когда нужна скорость, то надо компилируемый язык брать.
Это гораздо более важная вещь про язык, чем синтаксис одной операции.
источник

А

Алексей in Programming Offtop
Andrew Mikhaylov
А оно, кстати, умеет фьюзить соседние операции, которые возможно фьюзить?
В каком плане фьюзить? Там ленивость обеспечивает что если ты из огромной коллекции выбрал только 5 элементов на последнем шаге, обработаются только 5 элементов. Каких-то более продвинутых оптимизаций там скорее всего не будет.
источник

AM

Andrew Mikhaylov in Programming Offtop
Алексей
В каком плане фьюзить? Там ленивость обеспечивает что если ты из огромной коллекции выбрал только 5 элементов на последнем шаге, обработаются только 5 элементов. Каких-то более продвинутых оптимизаций там скорее всего не будет.
Ну я про более продвинутые и говорил, да. Окей, в пайтоне оно и не нужно по сути.
источник

А

Алексей in Programming Offtop
Alexander Nozik
Ну так да. Питон отличный и идиоматичный, когда речь о простых вещах. Но очень быстро упираешься в не-идиоматичность, как только надо что-то сложнее. Это не значит, что не надо на нем писать (мы его преподаем на общефизе). Это значит, что он неудобен для более сложных штук
это смотря что
источник

YN

Yaroslav Nikitenko in Programming Offtop
Алексей
это смотря что
Для работы с текстом, веб-фреймворка - тоже прекрасен.
источник

AN

Alexander Nozik in Programming Offtop
Алексей
Я вот только на котлине могу писать, если я попытаюсь писать на джаве, то я блевану сразу.
А вы пробовали? Java 8 замечательна. Java 12 еще лучше. Я правда от нее уже сильно отвык.
источник

А

Алексей in Programming Offtop
Andrew Mikhaylov
Ну я про более продвинутые и говорил, да. Окей, в пайтоне оно и не нужно по сути.
Раст вроде более продвинутые оптимизации делает со своими ленивыми итераторами. А в питоне это будет экономией на спичках, потому что питон сам по себе довольно медленный и динамический без jit и прочих крутых оптимизиаций
источник

YN

Yaroslav Nikitenko in Programming Offtop
Алексей
Раст вроде более продвинутые оптимизации делает со своими ленивыми итераторами. А в питоне это будет экономией на спичках, потому что питон сам по себе довольно медленный и динамический без jit и прочих крутых оптимизиаций
Есть PyPy, довольно быстрый.
источник

D

Danya in Programming Offtop
Алексей
Раст вроде более продвинутые оптимизации делает со своими ленивыми итераторами. А в питоне это будет экономией на спичках, потому что питон сам по себе довольно медленный и динамический без jit и прочих крутых оптимизиаций
В Питоне есть jit
источник

А

Алексей in Programming Offtop
Alexander Nozik
А вы пробовали? Java 8 замечательна. Java 12 еще лучше. Я правда от нее уже сильно отвык.
не знаю что там на java 12, но и java 8 мне не нравится, хотя там конечно значительный прогресс
источник

D

Danya in Programming Offtop
Как минимум в PyPy
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
myList = filter(lambda x: x % 2 == 0, myList)
myList = map(lambda x: x + 1, myList)
myList = list(myList)

(опционально хоть третий шаг со вторым склеить, хоть все три в один)
Да, вот это кстати меня тоже бесит. Автокомплит по глобальным функциям вместо разрешенных на типе.
источник