Блог пользователя gerasimovd

Автор gerasimovd, 13 лет назад, перевод, По-русски
Хочу извращений выучить функциональный язык. Но я не представляю, как юзать всякие фишки функционального программирования. Не могли бы назвать кого-нибудь, пишущего на haskell, я бы смотрел их код после контеста и познавал ФП.
  • Проголосовать: нравится
  • +6
  • Проголосовать: не нравится

13 лет назад, # |
  Проголосовать: нравится -41 Проголосовать: не нравится
Хаскель-гемор. Там циклов нет. Лучше уж тогда питон
13 лет назад, # |
  Проголосовать: нравится +16 Проголосовать: не нравится
Так если нужны решения, найти просто: открываешь страницу, где все Accepted решения по задаче (например, задача B раунда 60). Обычно решения на функциональных языках короче остальных, поэтому оказываются вверху списка при сортировке по умолчанию.
13 лет назад, # |
Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Изучать что-то новое (типа нового языка программирования, а тем более новой парадигмы программирования) не так скучно, когда есть практические задачи.
Например, я начинал изучал ФП в Mathematica... встроенный там язык поддерживает несколько парадигм программирования, но для многих задач нужен именно функциональный подход. Ну а продолжил я изучать ФП, когда пользовался window manager-ом Xmonad (там конфиг надо писать на Haskell-е).
Ну ещё прекрасный способ изучить ФП (на примере Lisp-а) - пользоваться "текстовым редактором" Emacs. :)
P.S. Но контесты я пишу не на Haskell-е. :)
»
11 лет назад, # |
Rev. 2   Проголосовать: нравится +8 Проголосовать: не нравится

С недавних пор учу Haskell — поэтому планирую писать контесты на нем (пока ограничусь решением пары задач из архива)

»
10 лет назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

So, anything? anyone constantly writing in haskell?

»
10 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

You can go to the status page of any contest, and filter submissions by programming language choosing haskell ... You will find few submissions and mostly in Div.2

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    But isn't better(/faster) to have someone in my standing? : ))

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Darooha (try google his real name) using Ocaml. It's an interesting fact itself I think) But it also related to topic)

    • »
      »
      »
      10 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      There is a wikipedia page about him? O-o

      • »
        »
        »
        »
        10 лет назад, # ^ |
          Проголосовать: нравится +6 Проголосовать: не нравится

        He was one of the pioneers in amortized analysis of algorithms, early examples of which were the analyses of the move-to-front heuristic, and splay trees. He invented many data structures with Robert Tarjan, such as splay trees, link/cut trees, and skew heaps. Yes, I have nothing to say except Oo)))

    • »
      »
      »
      10 лет назад, # ^ |
      Rev. 4   Проголосовать: нравится +3 Проголосовать: не нравится

      OCaml is strict and multi-paradigm, while Haskell is non-strict, purely functional and completely referentially transparent, basically forcing you to think in functors, monads etc. I would say the two are not really comparable (and it's definitely easier to write fast code in OCaml, so it's nice for contests).

»
10 лет назад, # |
Rev. 5   Проголосовать: нравится +25 Проголосовать: не нравится

I work for a company that uses Haskell in production. So I code a lot of "real-world" Haskell code. It's a very beautiful language, unmatched in its elegance and contrary to popular belief very capable of solving real-world problems. However I don't use it for contests because it's slightly harder to get it to run really fast than it is to get C++ code to run really fast. I guess it's a bit like Java in that regard. Another problem is that if Haskell is supported at all, most of the GHC versions used on contest platforms are outdated by years (Codeforces is an exception).

If you have any questions, you can ask me or the Stack Overflow Haskell tag, which is very active.

EDIT: I just saw the original post is 3 years old... But maybe somebody else finds this interesting

»
10 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

I can advise code of watashi. He writes contests on an incredible number of languages​​!

For example Codeforces submission 3652300.

Please, look at his repo in Github. Each problem is solved in different languages​​! It's awesome! :)

»
10 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Давайте заниматься вместе.