1. Куча / Говнокод #23966

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    -define(foo, foo).
    -define(bar, bar).
    -define(baz, baz).
    ...
    
    foo(A, B) ->
      gen_server:call(?MODULE, {?foo, A, B}).
    
    ...
    handle_call({?foo, A, B}, _From, State) ->
      ...

    Паттерн "мирный атом в каждый call".

    CHayT, 20 Марта 2018

    Комментарии (9)
  2. Куча / Говнокод #23956

    −25

    1. 1
    -

    Вай, нах!
    мы столько лет уже здесь дрочимся, почти родными стали. моя девушка - твоя девушка, моя хата - твоя хата!
    Не надоело ещё скрытничать? Скажите, кто под кем сидит? А ну.

    vvkir, 18 Марта 2018

    Комментарии (0)
  3. Куча / Говнокод #23955

    −24

    1. 1
    Сымитировал бурный оргазм, проверь.

    Проверил?

    gabop, 18 Марта 2018

    Комментарии (1)
  4. Куча / Говнокод #23951

    −30

    1. 1
    Да не стертор я, заебали.

    doktor, 18 Марта 2018

    Комментарии (3)
  5. Куча / Говнокод #23949

    −24

    1. 1
    Путин, уходи, нахуй!..

    Заебал

    bayan2, 17 Марта 2018

    Комментарии (0)
  6. Куча / Говнокод #23947

    −25

    1. 1
    Никто не заметил связи между уходами долбоёба-стертора, и внезапным появлением kegdan?

    Кого наебать решил, паскуда?

    _guestinho, 17 Марта 2018

    Комментарии (3)
  7. Куча / Говнокод #23943

    −27

    1. 1
    2. 2
    3. 3
    Политота.
    
    Ребята, девчонки и петухи. Завтра будем голосовать, выбирать себе хозяина еще на 4 года. У кого какие соображение на этот счет?

    kegdan, 17 Марта 2018

    Комментарии (85)
  8. Куча / Говнокод #23922

    −5

    1. 1
    2. 2
    3. 3
    Внимание!
    Сегодня день числа Пи.
    Давайте все дружно поздравим 3.14159265дара 14 марта в 1:59:27

    inho, 14 Марта 2018

    Комментарии (12)
  9. Куча / Говнокод #23913

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    #!/usr/bin/env escript
    %% -*- erlang -*-
    %%! -smp enable -debug verbose
    
    -include_lib("xmerl/include/xmerl.hrl").
    
    -export([main/1, install_mod/1]).
    
    -record(mod_info, { name  :: string()
                      , links :: [{file:filepath(), file:filepath()}]
                      }).
    
    main(Args) ->
        [ModeDir, GameDir] = Args,
        VirtualInstall = filename:absname(ModeDir ++ "/VirtualInstall/"),
        RealPath = filename:absname(GameDir),
        VirtualModCfg = VirtualInstall ++ "/VirtualModConfig.xml",
        io:format( "Mode dir: ~p~n"
                   "Install dir: ~p~n"
                   "Current dir: ~p~n"
                 , [VirtualInstall, RealPath, element(2, file:get_cwd())]),
        {Doc, []} = xmerl_scan:file(VirtualModCfg),
        Mods = get_mods(VirtualInstall, RealPath, Doc),
        [install_mod(I) || I <- Mods],
        ok.
    
    get_mods(VirtPath, RealPath, Doc) ->
        [ #mod_info
              { name  = xpath("/modInfo/@modName", Mod)
              , links = get_links(VirtPath, RealPath, Mod)
              }
          || Mod <- xmerl_xpath:string( "/virtualModActivator/modList/modInfo"
                                      , Doc)].
    
    get_links(VirtPath, RealPath, Doc) ->
        [{ filename:absname( unixify(xpath("/fileLink/@realPath", FL))
                           , VirtPath)
         , filename:absname( unixify(xpath("/fileLink/@virtualPath", FL))
                           , RealPath)
         }
         || FL <- xmerl_xpath:string( "//fileLink[isActive = 'True']"
                                    , Doc)].
    
    xpath(Query, Doc) ->
        case xmerl_xpath:string(Query, Doc) of
            [#xmlAttribute{value = Val}] ->
                Val
        end.
    
    unixify(Path) ->
        lists:map(
          fun($\\) -> $/;
             (A)   -> A
          end,
          Path).
    
    install_mod(#mod_info{name = Name, links = Links}) ->
        io:format("Installing ~s...~n", [Name]),
        lists:foreach(
          fun({From, To}) ->
                  filelib:ensure_dir(To),
                  file:make_symlink(From, To)
          end,
          Links).

    CHayT, 12 Марта 2018

    Комментарии (8)
  10. Куча / Говнокод #23908

    +6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    https://www.opennet.ru/opennews/art.shtml?num=48234
    
    Создатели редактора кода Atom из компании GitHub развивают новый
    экспериментальный текстовый редактор Xray, который также построен
    с использованием фреймворка Electron, но примечателен тем, что для
    повышения надёжности и производительности ядро редактора с
    реализацией базовой логики написано на языке Rust, интерфейс
    оформлен на JavaScript/CSS с применением фреймворка React, а для
    отрисовки текста применяется WebGL.

    Чем вообще руководствуются люди, делающие IDE из кусков браузера? Нахрена там JavaScript/CSS, нахрена там React? Еще и Rust приплели зачем-то.
    Может это чтоб всякие фронтенд-разрабы возрадовались, потому что теперь их умение писать хуиту на жабаскрипте применимо для написания говноплагинов к этой хуите? А как же бекенд? Пусть дополнительно встроят туда PHP MySQL чтоб никто не ушел обиженным.

    j123123, 11 Марта 2018

    Комментарии (270)