1. bash / Говнокод #27653

    0

    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
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    function error {
      printf "ERROR: $1\n" >&2 
    }
    
    function warning {
      printf "WARNING: $1\n"
    }
    
    function info {
      printf "INFO: $1\n"
    }
    
    function println {
      printf "$1\n"
    }
    
    function block {
      printf "\n$3\n$1 \t[$2]\n$3\n"
    }
    
    function fail {
      println "\n" 
      println "FAIL"$1
      println
    }
    
    function checkz {
      if [ -z $1 ]; then
        error "empty string"
        return 1
      fi  
      info "string \"$1\" \t[OK]"
      return 0
    }
    
    function checkx {
      if [ ! -x $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkb {
      if [ ! -b $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkc {
      if [ ! -c $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkf {
      if [ ! -f $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkd {
      if [ ! -d $1 ]; then
        error "$1 \t[NOT FOUND]"
        return 1
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function checkd_mk {
      if [ ! -d $1 ]; then
        info "$1 \t[NOT FOUND]"
        info "$1 \t[MAKING...]"
        mkdir -p $1
        checkd $1
        return $?
      fi  
      info "$1 \t[OK]"
      return 0
    }
    
    function sized {
      sized=($(ls $1))
      return ${#sized[@]}
    }

    Вспомогательные функции проверки файлов и директорий, а также вывода ошибок

    somebyte, 09 Сентября 2021

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

    +2

    1. 1
    IT Оффтоп #113

    #83: https://govnokod.ru/27296 https://govnokod.xyz/_27296
    #84: https://govnokod.ru/27336 https://govnokod.xyz/_27336
    #85: https://govnokod.ru/27381 https://govnokod.xyz/_27381
    #86: https://govnokod.ru/27405 https://govnokod.xyz/_27405
    #87: https://govnokod.ru/27429 https://govnokod.xyz/_27429
    #88: https://govnokod.ru/27432 https://govnokod.xyz/_27432
    #89: https://govnokod.ru/27435 https://govnokod.xyz/_27435
    #90: https://govnokod.ru/27439 https://govnokod.xyz/_27439
    #91: https://govnokod.ru/27449 https://govnokod.xyz/_27449
    #92: https://govnokod.ru/27460 https://govnokod.xyz/_27460
    #93: https://govnokod.ru/27463 https://govnokod.xyz/_27463
    #94: https://govnokod.ru/27466 https://govnokod.xyz/_27466
    #95: https://govnokod.ru/27473 https://govnokod.xyz/_27473
    #96: https://govnokod.ru/27478 https://govnokod.xyz/_27478
    #97: https://govnokod.ru/27484 https://govnokod.xyz/_27484
    #98: https://govnokod.ru/27495 https://govnokod.xyz/_27495
    #99: https://govnokod.ru/27504 https://govnokod.xyz/_27504
    #100: https://govnokod.ru/27508 https://govnokod.xyz/_27508
    #101: https://govnokod.ru/27511 https://govnokod.xyz/_27511
    #102: https://govnokod.ru/27518 https://govnokod.xyz/_27518
    #103: https://govnokod.ru/27526 https://govnokod.xyz/_27526
    #104: https://govnokod.ru/27534 https://govnokod.xyz/_27534
    #105: https://govnokod.ru/27544 https://govnokod.xyz/_27544
    #106: https://govnokod.ru/27552 https://govnokod.xyz/_27552
    #107: https://govnokod.ru/27554 https://govnokod.xyz/_27554
    #108: https://govnokod.ru/27557 https://govnokod.xyz/_27557
    #109: https://govnokod.ru/27581 https://govnokod.xyz/_27581
    #110: https://govnokod.ru/27610 https://govnokod.xyz/_27610
    #111: https://govnokod.ru/27644 https://govnokod.xyz/_27644
    #112: https://govnokod.ru/27648 https://govnokod.xyz/_27648

    nepeKamHblu_nemyx, 08 Сентября 2021

    Комментарии (463)
  3. bash / Говнокод #27651

    0

    1. 1
    /bin/cat /bin/cat

    https://ideone.com/QSSlWV

    3_dar, 08 Сентября 2021

    Комментарии (154)
  4. bash / Говнокод #27650

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #!/bin/bash 
    # apt install jq w3m curl
    
    curl https://gcode.space/api/comments  \
    | jq -r 'map("-"*99+"<br>"+.user_name+" "+.posted+"<br>","<ul>"+.text+"</ul>") | reduce .[] as $item (""; . + $item) '  \
    |  w3m -T text/html -cols 99 -dump \
    | less -R

    Консольная читалка для стока ГК

    3.14159265, 08 Сентября 2021

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

    −2

    1. 1
    https://habr.com/ru/post/576818/

    Мне очень не по себе при мысли о том, что до сих пор находятся на первый взгляд вполне адекватные и вменяемые люди моей и смежных профессий - программисты, админы и пр., - сознательно продолжающие работать на реализацию безумных идей все заблокировать, трафик проконтролировать и сломать интернет в попытках его "суверенизации".
    Я не могу представить себе человека, доказавшего себе путем логических размышлений необходимость контроля трафика, реализовавшего и протестировавшего такой контроль, и при этом, не осознающего неминуемой опасности его применения для него самого, его родственников, друзей, знакомых и просто окружающих его людей.
    Здесь не работают отмазки - я не знал, я выполнял ТЗ, я профессионал и пр. См. Нюрнбергские протоколы.

    Поэтому я во-первых, призываю их подумать о том, что они попросту сами себе роют яму, создавая повышенные риски собственной успешной профессиональной и личной жизни.
    Во-вторых, я повторю свое давнее обещание - если я замечу, что подобный человек, не раскаявшийся деятельно в своей деятельности, хочет устроиться в ту же компанию, где уже работаю (или работал) я, то я применю свое влияние в том объеме, который имею в этот момент, чтобы данный человек в эту компанию не попал.

    В третьих - что я понимаю под деятельным раскаянием. Мне (и я надеюсь, нам - профессиональному сообществу) не нужны покаянные речи на публику, этим пусть занимаются те, кому речи являются профессией - политики или журналисты.

    Деятельное раскаяние человека, причастного к IT, - это программа, сервис или библиотека функций под LGPL, выложенные на GitHub или подобном сервисе, предназначенные для нейтрализации того (или эквивалентного) вреда для беспрепятственного и свободного распространения информации, который он нанес, работая на безумцев.

    JloJle4Ka, 08 Сентября 2021

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

    0

    1. 1
    IT Оффтоп #112

    #82: https://govnokod.ru/27284 https://govnokod.xyz/_27284
    #83: https://govnokod.ru/27296 https://govnokod.xyz/_27296
    #84: https://govnokod.ru/27336 https://govnokod.xyz/_27336
    #85: https://govnokod.ru/27381 https://govnokod.xyz/_27381
    #86: https://govnokod.ru/27405 https://govnokod.xyz/_27405
    #87: https://govnokod.ru/27429 https://govnokod.xyz/_27429
    #88: https://govnokod.ru/27432 https://govnokod.xyz/_27432
    #89: https://govnokod.ru/27435 https://govnokod.xyz/_27435
    #90: https://govnokod.ru/27439 https://govnokod.xyz/_27439
    #91: https://govnokod.ru/27449 https://govnokod.xyz/_27449
    #92: https://govnokod.ru/27460 https://govnokod.xyz/_27460
    #93: https://govnokod.ru/27463 https://govnokod.xyz/_27463
    #94: https://govnokod.ru/27466 https://govnokod.xyz/_27466
    #95: https://govnokod.ru/27473 https://govnokod.xyz/_27473
    #96: https://govnokod.ru/27478 https://govnokod.xyz/_27478
    #97: https://govnokod.ru/27484 https://govnokod.xyz/_27484
    #98: https://govnokod.ru/27495 https://govnokod.xyz/_27495
    #99: https://govnokod.ru/27504 https://govnokod.xyz/_27504
    #100: https://govnokod.ru/27508 https://govnokod.xyz/_27508
    #101: https://govnokod.ru/27511 https://govnokod.xyz/_27511
    #102: https://govnokod.ru/27518 https://govnokod.xyz/_27518
    #103: https://govnokod.ru/27526 https://govnokod.xyz/_27526
    #104: https://govnokod.ru/27534 https://govnokod.xyz/_27534
    #105: https://govnokod.ru/27544 https://govnokod.xyz/_27544
    #106: https://govnokod.ru/27552 https://govnokod.xyz/_27552
    #107: https://govnokod.ru/27554 https://govnokod.xyz/_27554
    #108: https://govnokod.ru/27557 https://govnokod.xyz/_27557
    #109: https://govnokod.ru/27581 https://govnokod.xyz/_27581
    #110: https://govnokod.ru/27610 https://govnokod.xyz/_27610
    #111: https://govnokod.ru/27644 https://govnokod.xyz/_27644

    nepeKamHblu_nemyx, 06 Сентября 2021

    Комментарии (503)
  7. JavaScript / Говнокод #27647

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function main() {
        for await (const v of [1, 2, 3, 4, 5]) {
            print(v);
        }
    
        print("done.");
    }

    вот такой чудный говнокод подоспел... (иногда глючит если врубить GC - видимо я что-то не добавил)

    ASD_77, 06 Сентября 2021

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

    0

    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
    pub fn take(end: u32) -> u32 
    {
        (0..).step_by(1000000000)
            .map(|i| i * i)
            .take_while(|&i| i < end)
            .sum()
    }
    pub fn filter(end: u32) -> u32 
    {
        (0..).step_by(1000000000)
            .map(|i| i * i)
            .filter(|&i| i < end)
            .sum()
    }

    Решил вернуться к изучению багра rust.
    Суть такова: код с take_while выводит 0, код с filter падает с runtime error или выбрасывается rustClang как бесконечный цикл (зависит от версии).

    https://ideone.com/IS05Q0

    То есть код filter ма-те-ма-ти-че-ски эквивалентен take_while. Поскольку i² монотонно возрастающая функция.

    Из примера ниже можно убедиться что цикл на самом деле конечен.
    https://ideone.com/xC2r35
    Счётчик кидает ошибку при переполнении и range не зацикливается.

    for x in (1..).step_by(1000000000) {
    println!("{}", x);
    }

    1
    1000000001
    2000000001
    Runtime error #stdin #stdout #stderr 0.01s 5552KB

    3.14159265, 05 Сентября 2021

    Комментарии (102)
  9. JavaScript / Говнокод #27645

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    async function f()
    {
    	print("Hello World");	
    }
    
    function main()
    {
    	await f();
    }

    Ну что заскучились... есть новость... первый async/await ... так что с почином - асинков. но это только начало ... Для любознательных дампик... https://pastebin.com/rwnsrdLx (для SEO https://github.com/ASDAlexander77/TypeScriptCompiler) и результат работы

    C:\temp>C:\dev\TypeScriptCompiler\__build\tsc\bin\tsc.exe --emit=jit --shared-libs=C:\dev\TypeScriptCompiler\__build\tsc\bin\TypeScriptGCWrapper.dll --shared-libs=C:\dev\TypeScriptCompiler\3rdParty\llvm\debug\bin\mlir_async_runtime.dll C:\temp\1.ts  
    Hello World

    ASD_77, 04 Сентября 2021

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

    0

    1. 1
    IT Оффтоп #111

    #81: https://govnokod.ru/27280 https://govnokod.xyz/_27280
    #82: https://govnokod.ru/27284 https://govnokod.xyz/_27284
    #83: https://govnokod.ru/27296 https://govnokod.xyz/_27296
    #84: https://govnokod.ru/27336 https://govnokod.xyz/_27336
    #85: https://govnokod.ru/27381 https://govnokod.xyz/_27381
    #86: https://govnokod.ru/27405 https://govnokod.xyz/_27405
    #87: https://govnokod.ru/27429 https://govnokod.xyz/_27429
    #88: https://govnokod.ru/27432 https://govnokod.xyz/_27432
    #89: https://govnokod.ru/27435 https://govnokod.xyz/_27435
    #90: https://govnokod.ru/27439 https://govnokod.xyz/_27439
    #91: https://govnokod.ru/27449 https://govnokod.xyz/_27449
    #92: https://govnokod.ru/27460 https://govnokod.xyz/_27460
    #93: https://govnokod.ru/27463 https://govnokod.xyz/_27463
    #94: https://govnokod.ru/27466 https://govnokod.xyz/_27466
    #95: https://govnokod.ru/27473 https://govnokod.xyz/_27473
    #96: https://govnokod.ru/27478 https://govnokod.xyz/_27478
    #97: https://govnokod.ru/27484 https://govnokod.xyz/_27484
    #98: https://govnokod.ru/27495 https://govnokod.xyz/_27495
    #99: https://govnokod.ru/27504 https://govnokod.xyz/_27504
    #100: https://govnokod.ru/27508 https://govnokod.xyz/_27508
    #101: https://govnokod.ru/27511 https://govnokod.xyz/_27511
    #102: https://govnokod.ru/27518 https://govnokod.xyz/_27518
    #103: https://govnokod.ru/27526 https://govnokod.xyz/_27526
    #104: https://govnokod.ru/27534 https://govnokod.xyz/_27534
    #105: https://govnokod.ru/27544 https://govnokod.xyz/_27544
    #106: https://govnokod.ru/27552 https://govnokod.xyz/_27552
    #107: https://govnokod.ru/27554 https://govnokod.xyz/_27554
    #108: https://govnokod.ru/27557 https://govnokod.xyz/_27557
    #109: https://govnokod.ru/27581 https://govnokod.xyz/_27581
    #110: https://govnokod.ru/27610 https://govnokod.xyz/_27610

    nepeKamHblu_nemyx, 03 Сентября 2021

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