Записки реликта - Post a comment [entries|archive|friends|userinfo]
Latimeria chalumnae

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

λ-экстремизм Nov. 1st, 2007|01:51 am

uri
Сегодня, разбираясь со студентами, что мы можем и чего не можем сделать с функцией, то ли вспомнил, то ли придумал замечательную формулировку:

В принципе, все управляющие конструкции, кроме лямбды — это синтаксический сахар.

Строго говоря, для Питона, который мы используем в качестве рабочего языка, это не совсем так (и даже совсем не так): питоновская lambda очень слабенькая, а в Питоне-3000 будет, как обещает камрад ван Россум, ещё слабее (я уже не говорю о том, что в языке без оптимизации хвостовой рекурсии попытка писать без for и while даст нам, мягко выражаясь, не слишком эффективный код).

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

Может, стоило всё-таки делать курс на основе Scheme? Хотя это была бы жесть, да… к тому же для Scheme, увы, нет GUI-библиотеки, хотя бы сравнимой с PyQt4.
Link Read Comments

Reply:
From:
(will be screened)
Identity URL: 
имя пользователя:    
Вы должны предварительно войти в LiveJournal.com
 
E-mail для ответов: 
Вы сможете оставлять комментарии, даже если не введете e-mail.
Но вы не сможете получать уведомления об ответах на ваши комментарии!
Внимание: на указанный адрес будет выслано подтверждение.
Username:
Password:
Subject:
No HTML allowed in subject
Message: