Goвно / Говнокод #27849 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
// Create a Version 4 UUID, panicking on error.
// Use this form to initialize package-level variables.
var u1 = uuid.Must(uuid.NewV4())

https://github.com/gofrs/uuid

Питули запилили функцию, которая никогда error не возвращает, и запилили обёртку вокруг неё для "игнорирования" этой "ошибки".
Пиздец

3_dar 3_dar, (Updated )

Комментарии (20, +20)

Куча говна / Говнокод #27847 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
https://www.evilfingers.com/publications/research_RU/oldnewlang.pdf языки, которые мы потеряли

...

Кстати, тот, кто считает, метапрограммирование достижением последних десятилетий, — жестоко
ошибается. Да, в языке Си++ оно появилось совсем недавно и в полном объеме (описанном в 
последних редакциях Стандарта) не реализовано ни в одном реально существующем компиляторе, a
Nemerle и R# (языки программирования для платформы .Net со встроенной поддержкой
метапрограммирования) — вообще младенцы, но на самом деле концепция метапрограммирования
возникла еще во времена палеолита. Lisp, появившийся в далеком 1958 г., — хороший пример
языка, естественным образом поддерживающий метапрограммирование, одной из задач которого
является создание программы, выводящей точную копию своего собственного исходного текста — так
называемый куин (англ, quine). На Lisp'e он записывается так:

(funcall (lambda (x) 
               (append x (list (list 'quote x))))
             '(funcall (lambda (x) 
                          (append x (list (list 'quote x))))))

             Листинг 1 программа на Lisp'е, распечатывающая сама себя

На Си так:

#include<stdio.h>
char*i="\\#include<stdio.h>",n='\n',q='"',*p=
"%s%cchar*i=%c%c%s%c,n='%cn',q='%c',*p=%c%c%s%c,*m=%c%c%s%c%c;%s%c",*m=
"int main(){return!printf(p,i+1,n,q,*i,i,q,*i,q,n,q,p,q,n,q,m,q,n,m,n);}"
;int main(){return!printf(p,i+1,n,q,*i,i,q,*i,q,n,q,p,q,n,q,m,q,n,m,n);}

А теперь попробуйте реализовать тоже самое на Си++ с использованием шаблонов и посмотрите, насколько
сильно они вам «помогут».

Крестобляди соснули

j123123 j123123, (Updated )

Комментарии (41, +41)

Beri bash i ebash / Говнокод #27846 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
~  cat test.sh
#!/bin/bash

for i in "<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="b397f3">[email protected]</a>"; do
	echo $i
done

arglist="<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="97b3d7">[email protected]</a>"

for i in $arglist; do
	echo $i
done

 ~  sh test.sh 1 2 '3 4'
1
2
3 4
1
2
3
4
 ~ 

Застрял на отладке одного скрипта, как этим правильно пользоваться?

vistefan vistefan, (Updated )

Комментарии (188, +188)

Куча говна / Говнокод #27845 Ссылка на оригинал

0

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

#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
#113: https://govnokod.ru/27652 https://govnokod.xyz/_27652
#114: https://govnokod.ru/27659 https://govnokod.xyz/_27659
#115: https://govnokod.ru/27665 https://govnokod.xyz/_27665
#116: https://govnokod.ru/27671 https://govnokod.xyz/_27671
#117: https://govnokod.ru/27675 https://govnokod.xyz/_27675
#118: https://govnokod.ru/27685 https://govnokod.xyz/_27685
#119: https://govnokod.ru/27701 https://govnokod.xyz/_27701
#120: https://govnokod.ru/27703 https://govnokod.xyz/_27703
#121: https://govnokod.ru/27710 https://govnokod.xyz/_27710
#122: https://govnokod.ru/27728 https://govnokod.xyz/_27728
#123: https://govnokod.ru/27729 https://govnokod.xyz/_27729
#124: https://govnokod.ru/27730 https://govnokod.xyz/_27730
#125: https://govnokod.ru/27732 https://govnokod.xyz/_27732
#126: https://govnokod.ru/27733 https://govnokod.xyz/_27733
#127: https://govnokod.ru/27737 https://govnokod.xyz/_27737
#128: https://govnokod.ru/27742 https://govnokod.xyz/_27742
#129: https://govnokod.ru/27747 https://govnokod.xyz/_27747
#130: https://govnokod.ru/27755 https://govnokod.xyz/_27755
#131: https://govnokod.ru/27766 https://govnokod.xyz/_27766
#132: https://govnokod.ru/27790 https://govnokod.xyz/_27790
#133: https://govnokod.ru/27828 https://govnokod.xyz/_27828
#134: https://govnokod.ru/27834 https://govnokod.xyz/_27834
#135: https://govnokod.ru/27839 https://govnokod.xyz/_27839

nepeKamHblu_nemyx nepeKamHblu_nemyx, (Updated )

Комментарии (248, +248)

Куча говна / Говнокод #27844 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
* https://github.com/nwchemgit/nwchem/blob/8ac6bc6856d50954029cad01a751006851682398/src/nwpw/pspw/lib/psi/psi.F#L324

      subroutine psi_sort_f_orb()
      implicit none
#include "errquit.fh"

#include "bafdecls.fh"
#include "psi.fh"

      logical value
      integer i,j,ii,jj,ms
      integer r1(2)
      real*8  ei,ej

      value = BA_push_get(mt_dcpl,npack1,'r1',r1(2),r1(1))
      if (.not. value) call errquit(
     >     'psi_sort_f_orb: out of stack memory',0,MA_ERR)

      do ms=1,ispin

        !*** Bubble sort ***
        do ii=1,ne(ms)
         do jj=ii+1,ne(ms)
           i = ii + (ms-1)*ne(1)
           j = jj + (ms-1)*ne(1)
           ei = dbl_mb(eig(1)+i-1)
           ej = dbl_mb(eig(1)+j-1)

           !*** swap ***
           if (ej.lt.ei) then
             dbl_mb(eig(1)+i-1) = ej
             dbl_mb(eig(1)+j-1) = ei
             call Pack_c_Copy(1,dcpl_mb(psi1(1)+(i-1)*npack1),
     >                          dcpl_mb(r1(1)))
             call Pack_c_Copy(1,dcpl_mb(psi1(1)+(j-1)*npack1),
     >                          dcpl_mb(psi1(1)+(i-1)*npack1))
             call Pack_c_Copy(1,dcpl_mb(r1(1)),
     >                          dcpl_mb(psi1(1)+(j-1)*npack1))
           end if

         end do
        end do

      end do

      value = BA_pop_stack(r1(2))
      if (.not. value) call errquit(
     >     'psi_sort_f_orb: popping stack memory',1, MA_ERR)
      return
      end

Сортировка пузырьком на фортране из пакета квантовохимических вычислений "NWChem"

j123123 j123123, (Updated )

Комментарии (235, +235)

ЙажаСценарий / Говнокод #27843 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
async init() {
                const engine = this.engine = new BABYLON.WebGPUEngine(this.canvas);
                await engine.initAsync();
            }

            async initCompute() {
                const supportCS = this.engine.getCaps().supportComputeShaders;
                if (!supportCS) {
                    return true;
                }

                const computeShaderSource = document.getElementById("calculate").value.replace('WORK_GROUP_SIZE', this.WORK_GROUP_SIZE);
                this.computeShader = new BABYLON.ComputeShader("compute", this.engine, { computeSource: computeShaderSource }, {
                    bindingsMapping:
                    {
                        "params": { group: 0, binding: 0 },
                        "ssboIn": { group: 0, binding: 1 },
                        "ssboOut": { group: 0, binding: 2 },
                    }
                });

                const simParamsBuffer = new BABYLON.UniformBuffer(this.engine);
                simParamsBuffer.updateFloat2("time", t, this.numInstances);
                simParamsBuffer.update();

                const ssboInBuffer = new BABYLON.StorageBuffer(this.engine, this.ssboData.byteLength);
                ssboInBuffer.update(this.ssboData);

                const ssboOutBuffer = new BABYLON.StorageBuffer(this.engine, this.ssboData.byteLength);

                this.computeShader.setUniformBuffer("params", simParamsBuffer);
                this.computeShader.setStorageBuffer("ssboIn", ssboInBuffer);
                this.computeShader.setStorageBuffer("ssboOut", ssboOutBuffer);
                                
                const handler = () => {
                    ssboOutBuffer.read().then((res) => {
                        const resFloats = new Float32Array(res.buffer);
                        //console.log(resFloats);
                        this.ssboData.set(resFloats);

                        ssboInBuffer.update(this.ssboData);
                        this.computeShader.setStorageBuffer("ssboIn", ssboInBuffer);
                        this.computeShader.dispatchWhenReady(this.numGroups).then(handler);                

                        this.loadPositions();
                    });
                };

                this.computeShader.dispatchWhenReady(this.numGroups).then(handler);                
            }

Наговнокодить кому нибудь Compute Shader для WebGPU? полный код тут https://pastebin.com/EigxhfqV . Тут короче симуляция гравитации расчетным методом... просто было делать нехрен и скушно... что бы запустить это говно надо Chrome Canary с включенным WebGPU поддержкой.

ASD_77 ASD_77, (Updated )

Комментарии (19, +19)

Куча говна / Говнокод #27842 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
<style type="text/css" media="all">
	html.cms a[href^="https://www.who.int"][href$="/en"] {background-color:#ffcc00;}
	html.cms a[href^="https://www.who.int"][href$="/en/"] {background-color:#ffcc00;}
    html.cms a[href^="http://www.who.int"][href$="/en"] {background-color:#ffcc00;}
	html.cms a[href^="http://www.who.int"][href$="/en/"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/en"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/en/"] {background-color:#ffcc00;}
	html.cms a[href="/"] {background-color:inherit !important;}
	html.cms a[href="/en"] {background-color:inherit !important;}
	html.cms a[href="/en/"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/en"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/en/"] {background-color:inherit !important;}
	html.cms a[href$="https://www.who.int/en"] {background-color:inherit !important;}
	html.cms a[href$="https://www.who.int/en/"] {background-color:inherit !important;}
    html.cms a[href^="https://www.who.int"][href$="/ar"] {background-color:#ffcc00;}
	html.cms a[href^="https://www.who.int"][href$="/ar/"] {background-color:#ffcc00;}
	html.cms a[href^="http://www.who.int"][href$="/ar"] {background-color:#ffcc00;}
	html.cms a[href^="http://www.who.int"][href$="/ar/"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/ar"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/ar/"] {background-color:#ffcc00;}
	html.cms a[href="/ar"] {background-color:inherit !important;}
	html.cms a[href="/ar/"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/ar"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/ar/"] {background-color:inherit !important;}
	html.cms a[href^="https://www.who.int"][href$="/zh"] {background-color:#ffcc00;}
	html.cms a[href^="https://www.who.int"][href$="/zh/"] {background-color:#ffcc00;}
	html.cms a[href^="http://www.who.int"][href$="/zh"] {background-color:#ffcc00;}
	html.cms a[href^="http://www.who.int"][href$="/zh/"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/zh"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/zh/"] {background-color:#ffcc00;}
	html.cms a[href="/zh"] {background-color:inherit !important;}
	html.cms a[href="/zh/"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/zh"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/zh/"] {background-color:inherit !important;}
	html.cms a[href$="https://www.who.int/zh"] {background-color:inherit !important;}
	html.cms a[href$="https://www.who.int/zh/"] {background-color:inherit !important;}
	html.cms a[href^="https://www.who.int"][href$="/fr"] {background-color:#ffcc00;}
	html.cms a[href^="https://www.who.int"][href$="/fr/"] {background-color:#ffcc00;}
    html.cms a[href^="http://www.who.int"][href$="/fr"] {background-color:#ffcc00;}
	html.cms a[href^="http://www.who.int"][href$="/fr/"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/fr"] {background-color:#ffcc00;}
	html.cms a[href^="/"][href$="/fr/"] {background-color:#ffcc00;}
	html.cms a[href="/fr"] {background-color:inherit !important;}
	html.cms a[href="/fr"] {background-color:inherit !important;}
	html.cms a[href="/fr/"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/fr"] {background-color:inherit !important;}
	html.cms a[href$="http://www.who.int/fr/"] {background-color:inherit !important;}
	html.cms a[href$="https://www.who.int/fr"] {background-color:inherit !important;}
	html.cms a[href$="https://www.who.int/fr/"] {background-color:inherit !important;}
	html.cms a[href^="https://www.who.int"][href$="/ru"] {background-color:#ffcc00;}
	html.cms a[href^="https://www.who.int"][href$="/ru/"] {background-color:#ffcc00;}
</style>

Сайт ВОЗ. Многое можно ожидать от frontend, но такое...

rotoeb rotoeb, (Updated )

Комментарии (54, +54)