Форум сайта python.su
Доброго времени суток, господа питонисты. Обращаюсь к тем из вас, кто достаточно хорошо владеет не только этим замечательным языком, но ещё и английским. Я тут делаю онлайн-курс на конкурс, почитать о котором можно тут.
Курс посвящён элементам функционального программирования в Python'e и подразумевался как доступный любому, кто знаком с основами языка (типы данных, if-else, циклы, функции, обработка исключений, базовые вещи из ООП) и имеет хотя бы небольшой опыт программирования.
К сожалению, у меня пока было не слишком много обратной связи по поводу удобоваримости теории, корректности формулировок практических задач, качества автоматических тестов и т.д. В связи с чем прошу тех, кто может и захочет уделить время, посмотреть на теорию и практические задания и поделиться замечаниями, впечатлениями, пожеланиями, предложениями. Любая обратная связь будет чрезвычайно полезной. Спасибо.
Сперва вам нужно будет зарегистрироваться на платформе:
https://stepik.org
А затем воспользоваться ссылкой-приглашением.
После чего нажать на кнопку “Учиться”. Вам будут доступны для просмотра все уроки курса, как теоретические, так и практические.
Офлайн
Почему курс на иностранном языке?
Офлайн
Rodegast, как я уже сказал, курс сделан в том числе на конкурс. Все участвующие курсы должны быть на английском. Я очень надеюсь получить достаточно обратной связи, чтобы сделать курс действительно хорошо усваиваемым и полезным. Пока же – это только что сделанный, во многих отношениях сырой продукт моего труда. Конкурс заканчивается 31 марта. Я планировал сделать перевод всего содержимого на русский после окончания конкурса, если у меня выйдет что-то действительно толковое.
Офлайн
Я не знаю английского языка от слова совсем, но всё-же просмотрел теоретическую часть курса и могу сказать что на серьёзный конкурс я бы его не посылал (хотя всё ниже перечисленное мои субъективные ощущения).
0) Во многих местах не правильно расставлены отступы.
1.1) Чистота - Python не поддерживает чистоту функций на уровне языка, по этому про неё не надо было писать.
1.3) Неизменность - тоже самое. Нужно учитывать специфику языка и не заниматься извращениями.
1.4) Лень - Вообще ни о чём. В python-е лень присутствует в виде итераторов и генераторов, про это ничего не сказано, но зато последняя глава как раз им и посвящена.
2.1) head и tail - Функциональные списки и Python-списки это абсолютно разные вещи, по этому определение этих функций бессмысленно.
2.1) В Python-е нет хвостовой рекурсии.
4.1) Основное предназначение lambda-функций быть синтаксическим сахаром для функций высших порядков. В другом контексте их использовать неправильно.
К сожалению я ничего не увидел про функторы, атрибуты функций, списочные выражения и сопоставление с образцом.
Отредактировано Rodegast (Март 27, 2017 14:26:56)
Офлайн
RodegastА если найду?!:)
2.1) В Python-е нет хвостовой рекурсии.
Офлайн
PooH Попробуй. Но только статья https://habrahabr.ru/post/158385/ не проканает
Офлайн
RodegastНе, ты не понял, это я к словам придрался. По понятиям, так сказать. В питоне нет оптимизации хвостовой рекурсии, не развертывает он ее, а саму то хвостовую рекурсию написать ничто не мешает :)
PooH Попробуй. Но только статья https://habrahabr.ru/post/158385/ не проканает
Офлайн
> а саму то хвостовую рекурсию написать ничто не мешает
Но зачем она нужна без оптимизации? В императивных языках в место неё используют циклы и это правильно.
Офлайн