Showing posts with label Functional. Show all posts
Showing posts with label Functional. Show all posts

Friday, May 20, 2011

Коротко и просто про монады (цитата)

Было обнаружено, что много разнообразных вещей (а именно, комбинирование элементарных действий) укладывается в примерно одну схему.
Эта схема — обобщение теории групп.
Ну хорошо, в две схемы: монады и стрелки.

После чего отделили однообразные комбинаторы от содержательных вещей, что позволило
— сделать удобный сахар для комбинирования (do-нотацию и list comprehension)
— в ряде случаев абстрагироваться от класса контейнера
— сделать более стройную логику, что позволяет избежать изобретения велосипедов.

Вообще, такая идея — отделять комбинаторы от содержания — очень полезна.
Например, рекурсивная обработка списков: можно на каждый раз писать рукодельный обход, а можно использовать 4 унифицированных обхода — foldr, foldl, foldl', foldM.
Для любителей теории нужно вспомнить про ххххх-морфизмы и прочесть труд "Линзы, бананы и разлохмаченные провода".
После чего уже не возникает желания рожать алгоритмы, связанные с обходом других структур — например, деревьев. Вместо этого, в библиотеку, описывающую тип дерева, добавляются соответствующие функции для построения ана- и катаморфизмов. А дальше пользователь с их помощью выразит всё, что душе угодно.

Monday, April 11, 2011

Monads

Friday, June 4, 2010

Y Combinator

Friday, April 24, 2009

What is next

Tasks:
  • Python development
  • Ruby on Rails architecture and development
  • Experience working with Standard Rails stack tools
  • Experience working with jQuery or other Open Source Javascript
  • Experience in a fast-paced, Agile environment
  • NoSQL and MapReduce (e.g. MongoDb, Riak) preferred
  • Experience/Knowledge of Continuous Integration, Behavior Driven Development, and Test Driven Development preferred
  • HAML/SASS experience ideal
  • CoffeeScript experience ideal
Developers & MVP:
http://www.codethinked.com

.NET languages:
http://nesteruk.wordpress.com/2010/08/02/dot-net-polyglot-programming
http://roinet.net/2010/08/12/nuzhen-li-python-v-net-steke

F#, Closure, Nemerle

Memcached:
http://habrahabr.ru/tag/memcached
Memcached, заставим работать

Haskell Web Framework:
http://www.yesodweb.com
http://www.yesodweb.com/five-minutes

Фильтры Калмана
Wiki
http://rriai.org.ru/filtryi-kalmana-2.html
roboforum
http://www.sernam.ru/r_25.php
Васильев: Методы обработки сигналов
http://adrianboeing.blogspot.com/2010/05/kalman-filters.html

Source code/libraries:
http://kalman.sourceforge.net
http://bayesclasses.sourceforge.net
http://www.memsense.com/index.php/Product-Pages/kalman-filter-library.html
http://sites.google.com/site/jordiuavs/Home/kalman_filter_by_Jordi.txt
http://www.orocos.org/bfl
http://www.scipy.org/Cookbook/KalmanFiltering

Статьи от Alex Ott
http://alexott.net/ru/index.html
    Статьи по функциональному программированию
    http://erlanger.ru/page/1571/erlando-monady-dlya-erlang-a
    http://nesteruk.wordpress.com/2011/02/05/are-fsharp-equations-easier-than-csharp/
    http://klyuchnikov.blogspot.com/2011/05/scala-in-action.html

    LLVM
    http://en.wikipedia.org/wiki/Low_Level_Virtual_Machine
    http://tutorialsblogs.com/llvm-tutorial-getting-started
    http://zathras.de/angelweb/blog-llvm-tutorial-link.htm
    http://www.mdevan.org/llvm-py/examples.html
    http://llvm.org/releases/2.6/docs/tutorial/JITTutorial1.html
    http://llvm.org/docs/tutorial/
    http://ru.wikipedia.org/wiki/Low_Level_Virtual_Machine

    CMS
    Erlang: http://zotonic.com

    Objective-C



    Powered by Blogger.