Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 8, 2017 10:59:10

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2746
Репутация: +  183  -
Профиль   Отправить e-mail  

не работают строковые функции

> Просто суть в том, что питон - язык экспериментов. То есть многое пробуют вставлять, чтобы просто посмотреть (не так как в других языках, где всё сразу и надолго), поэтому у него и стандарта нет (не отправляют его на стандартизацию).

Ну это спорное утверждение. Например в Haskell-е экспериментов намного больше, но тем не менее он стандартизирован, а все экспериментальные возможности вынесены в расширения компилятора. Например можно подключить поддержку зависимых типов данных, хотя она не входит в стандарт 2010 года.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Онлайн

#2 Авг. 8, 2017 13:08:29

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9863
Репутация: +  853  -
Профиль   Отправить e-mail  

не работают строковые функции

Rodegast
Например в Haskell-е экспериментов намного больше, но тем не менее он стандартизирован
А что там менялось в ядре существенно?

Rodegast
Ну это спорное утверждение.
Это общеизвестный факт. Толи Гвидо это писал, толи основная тусовка. В общем, поищи, почему питон не стандартизован за 20 лет.



Офлайн

#3 Авг. 8, 2017 15:09:20

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2746
Репутация: +  183  -
Профиль   Отправить e-mail  

не работают строковые функции

> А что там менялось в ядре существенно?

Стандартизованная часть языка не меняется, но программист может настраивать синтаксис включая дополнительные возможности которых ещё нет в стандарте.
Вот описание доп. синтаксиса которое поддерживает ghc 8: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/glasgow_exts.html

> Толи Гвидо это писал, толи основная тусовка. В общем, поищи, почему питон не стандартизован за 20 лет.

Скорей всего просто не хотят заморачиваться.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Онлайн

#4 Авг. 9, 2017 00:18:07

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9863
Репутация: +  853  -
Профиль   Отправить e-mail  

не работают строковые функции

Rodegast
Скорей всего просто не хотят заморачиваться.
Просто многое переделывается без соблюдения обратной совместимости. Питон 2 был хорошим, но недостаточно хорошим. Поэтому его ядро существенно переделано, чтобы его можно было сделать гораздо лучше. При этом они были не скованы легаси-кодом и могли выбрасывать из ядра всё что угодно. И по ядру Питон 3 сильно превосходит Питон 2. Надо смотреть в будущее и задаться вопросом “Нужен ли нам куцый питон?”

Rodegast
Стандартизованная часть языка не меняется
Они сохраняют обратную совместимость. Это классическое развитие языка программирования. Но Питон - это лучший язык, а лучший язык должен быть хорошо отшлифован во всём.



Отредактировано py.user.next (Авг. 9, 2017 00:18:49)

Офлайн

#5 Авг. 9, 2017 05:40:53

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

не работают строковые функции

py.user.next
И по ядру Питон 3 сильно превосходит Питон 2.
Но сильно уступает PyPy



Офлайн

#6 Авг. 9, 2017 10:54:36

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2746
Репутация: +  183  -
Профиль   Отправить e-mail  

не работают строковые функции

> Они сохраняют обратную совместимость.

Скорее совместимость между компиляторов.

> Но Питон - это лучший язык, а лучший язык должен быть хорошо отшлифован во всём.

Пять проблем Python-а пока ещё никуда не делись.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Онлайн

#7 Авг. 9, 2017 15:34:50

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9863
Репутация: +  853  -
Профиль   Отправить e-mail  

не работают строковые функции

FishHook
Но сильно уступает PyPy
Я говорю про язык, а не про интерпретатор языка. А для CPython и для PyPy язык Питон 3 один и тот же.

Rodegast
Скорее совместимость между компиляторов.
Язык - это грамматика. Так вот грамматически (формально) в Питон 2 есть функция xrange(), тогда как в Питон 3 этой функции нет. Это функция ядра языка, которую удалили. Теперь код для второго питона, использующий эту функцию, не сработает в третьем питоне. Это и есть нарушение обратной совместимости.

Rodegast
Пять проблем Python-а пока ещё никуда не делись.
Какие проблемы в самом языке?



Отредактировано py.user.next (Авг. 9, 2017 15:35:43)

Офлайн

#8 Авг. 9, 2017 15:47:23

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

не работают строковые функции

py.user.next
Я говорю про язык, а не про интерпретатор языка. А для CPython и для PyPy язык Питон 3 один и тот же.
И что же ты подразумеваешь под “ядром” языка в таком случае?



Офлайн

#9 Авг. 9, 2017 16:06:14

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9863
Репутация: +  853  -
Профиль   Отправить e-mail  

не работают строковые функции

FishHook
И что же ты подразумеваешь под “ядром” языка в таком случае?
В питоне ядро языка - это то, что не входит в библиотеку (что не нужно импортировать). (Это не только в питоне*.)
Например, функция len() входить в ядро языка, а функция itertools.chain() не входит в ядро языка, так как находится в библиотеке.

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



Отредактировано py.user.next (Авг. 9, 2017 16:10:03)

Офлайн

#10 Авг. 9, 2017 16:41:45

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

не работают строковые функции

py.user.next
Язык - это грамматика.
Функция len определяет грамматику? На мой взгляд, тот факт, что len прибита к интерпретатору гвоздями, а не вынесена в библиотеку не играет никакой роли. Я бы даже сказал, что для ООП языка само существование такой функции - плохой стиль. Гораздо более важные штуки, такие как JIT в PyPY и GIL в CPython могут повлиять на стиль и архитектуру программы гораздо существеннее. Ядро - это все таки интерпретатор, а не финтифлюшки вроде копеечных функций.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version