Восход

Современные кондуиты.

Какие кондуиты нынче в моде? Помню, что несколько лет назад, когда я писал на хаскеле, их было штуки три.

Сценарий такой: надо читать текстовый файл и патчи к нему из БД (упорядоченные по месту применения) и применять патчи к тексту, результат выдавать наружу (держать целиком в памяти не требуется). Вроде такое можно сделать в императивном стиле, но вдруг принято делать красивее и проще.
киса

Щедров в Москве

"Дорогие участники семинаров. Пересылаю информацию о предстоящих лекциях Андрэ Щедрова и Макса Кановича на факультете компьютерных наук ВШЭ.

From A. Scedrov:

Max and I are teaching a course at the new HSE location near the metro station Aeroport. Please see the schedule of the lectures at
http://aspirantura.hse.ru/cs/syllabus/collaborative
Basically I will be starting my part of the course (1-4) next week, December 16 and Max will be starting his part (5) the following week, December 21. If you or your colleagues have any students interested in this material, please let them know about the course."

Не знаю, пускают ли туда и какой нужен пропуск, спрашивайте Шеня (a_shen)

ФП для чайников

Всем привет,

мне нужно провести ознакомительную лекцию по ФП для обычных (ТМ) программистов. На час-полтора примерно. В основном о том, зачем и почему оно надо. Дедлайн через месяц, то есть уже пора задумываться. Придумывать план лекции с нуля мне не очень хочется, опыта в этом деле у меня нет. То есть приблизительное понимание есть, но очень приблизительное.

Посоветуйте, пожалуйста, какой-нибудь проверенный материал, на основе которого можно быстро и безболезненно построить пуленепробиваемую лекцию. Может, кто-нибудь уже делал такое?

Как сделать ЭТО без FlexibleContexts ?

{-# Language TypeFamilies, FlexibleContexts #-}

module Main where

import qualified Data.List as L

class (Num (Elem c)) => DataSet c  where
    type Elem c :: *
    data TObservation c :: *
    observations :: c -> [TObservation c]
    measurements :: TObservation c -> [Elem c]

instance DataSet () where
  type Elem () = Float
  data TObservation () = TObservationUnit [Float]
  observations () = replicate 10 (TObservationUnit [0,0,0,0])
  measurements (TObservationUnit xs) = xs 

kMeans :: DataSet c => c -> [TObservation c]
kMeans s = undefined
  where
    wtf1 = L.foldl wtf2 0 (observations s)
    wtf2 acc xs = acc + L.sum (measurements xs)

main = do
  putStrLn "jopa"



Если убрать FlexibleContexts в частности на Num (Elem c) - то собираться перестанет,
выведение типов отсыхает.

Как это делать без FlexibleContexts или как это вообще делать правильно?
киса

Мы первые в функциональном программировании

Краткое описание функционального языка ГАРФ, придуманного, как утверждают, в 60-е годы боговдохновенным Ильёй Ханаановичем Шмаиным
https://www.mediafire.com/?h303jm3czojl17x
Подарено В.Б.Борщёвым. Не знаю, можно ли что-нибудь понять по этому тексту, вот мы и проверим.
Биография Ильи Ханаановича
http://people.umass.edu/borschev/Russian/memuar/friends/Shmain.pdf
Борщёв также говорит, что некоторые тексты Шмаина были опубликованы в трудах ВИНИТИ "Научно-техническая информация" серия 2, кто хочет, может там поискать
http://www2.viniti.ru/index.php?option=com_content&task=category§ionid=4&id=77&Itemid=64
На языке ГАРФ я писал диплом в 85-м году, закончив так называемый Московский математический техникум, но сейчас убей не помню, что я там писал.

P.S. Нашёл одну из статей Шмаина по ГАРФу
http://lamb.viniti.ru/sid2/sid2free?sid2=J0611671727
Там дана ссылка на предыдущую статью, её надо искать в трудах ВИНИТИ "Научно-техническая информация", серия 2, 1994, номер 3.
киса

(no subject)

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