Math is just a corner of computer science
Apr. 20th, 2013 12:29 amНесколько цитат из лекций Роберта Харпера из CMU про то, что важно в языках программирования, чему нас зря учили в школе, почему интуиционистская логика круче классической, и почему вовсе не математика царица наук:
Надергал из прошлогодних лекций в Oregon Programming Languages Summer School. Харпер там рассказывал основы теории типов - от элементарщины через зависимые типы до индуктивных типов высших измерений и гомотопической теории типов (про последние, правда, совсем немного). Кроме него там много других замечательных лекций: Awodey про теоркат, Xavier Leroy про верификацию компиляторов, John Hughes про монады и др. Просто праздник какой-то. Ссылка года, вот она:
http://www.cs.uoregon.edu/research/summerschool/summer12/curriculum.html
Надергал из прошлогодних лекций в Oregon Programming Languages Summer School. Харпер там рассказывал основы теории типов - от элементарщины через зависимые типы до индуктивных типов высших измерений и гомотопической теории типов (про последние, правда, совсем немного). Кроме него там много других замечательных лекций: Awodey про теоркат, Xavier Leroy про верификацию компиляторов, John Hughes про монады и др. Просто праздник какой-то. Ссылка года, вот она:
http://www.cs.uoregon.edu/research/summerschool/summer12/curriculum.html
no subject
Date: 2013-04-22 12:52 pm (UTC)На вскидку - начал читать книжки по Scala, но CT и монады там вообще не объяснялись, а поминались вскользь.
Пришлось читать хаскель (PIH, LYAH, RWH).
Непомню в какой момент, но жутко понравились "The Little ..." книжки Фридмена. Позже в одной из коммандировок в Индианаполись познакомился с одним из его студентов - узнал, что сам Фридмэн вообще недолюбливал книжки, предпочитая им рисовать картинки и объяснять наглядно.
А когда стал смотреть статьи, то понял что без TAPL и CT (выбрал для себя Awodey-я) толку не будет.
Об этом кстати и сам Харпер в лекциях говорил (CS держится на 3-х китах: Logic, Typed-LC, CT).
no subject
Date: 2013-04-22 02:10 pm (UTC)А что это? Я как-то пропустил.
no subject
Date: 2013-04-22 02:12 pm (UTC)- The Little Schemer
- The Seasoned Schemer
- The Reasoned Schemer (купил, но ещё не читал)
- The Little Javer
- The Little MLer (даже не покупал ещё)
no subject
Date: 2013-04-22 02:46 pm (UTC)no subject
Date: 2013-04-24 12:40 pm (UTC)no subject
Date: 2013-04-23 01:31 am (UTC)Давайте говорить более корректно. В CS есть такое мааахонькое ответвление - programming languages. И в этом мааахоньком ответвлении есть мааахонькое подответвление - системы типов. И только оно держится на указанных трех китах.
Не стоит выдавать этот вот крохотный и практически незаметный кусочек CS за весь CS.
no subject
Date: 2013-04-23 08:47 am (UTC)Кстати, а как Вы знакомились с FP (если знакомились, конечно) ?
no subject
Date: 2013-04-23 08:55 am (UTC)OOP это тоже programming languages. Основная часть CS связана с теорией алгоритмов и соответствующей математикой.
> Кстати, а как Вы знакомились с FP
Как-то прямо намеренно с FP я не знакомился, не стояло такой задачи, но если хронологически относящееся к ФП, то
SICP, TAPL, RWH, разные papers на протяжении этого.
no subject
Date: 2013-04-23 10:50 am (UTC)Про OOP-PL - совершенно верно. Когда-нибудь PL-и будут очень сильно-типизированы (на грани DependentTypes и т.д) и тогда все товарищи типа Харпера вдруг переключат внимание на дизайн алгоритмов и структур данных.