ЙажаСценарий / Говнокод #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 ASD_77, (Updated )

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

ЙажаСценарий / Говнокод #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 ASD_77, (Updated )

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

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

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
Complex numbers:
>> Complex()({r: 2, i: 0} / {r: 1, i: 1} + {r: -3, i: 2}))
<- {r: -2, i: 1}

Automatic differentiation:
Let f(x) = x^3 - 5x:
>> var f = x => Dual()(x * x * x - {x:5, dx:0} * x);

Now map it over some values:
>> [-2,-1,0,1,2].map(a=>({x:a,dx:1})).map(f).map(a=>a.dx)
<- [ 7, -2, -5, -2, 7 ]
i.e. f'(x) = 3x^2 - 5.

Polynoomials:
>> Poly()([1,-2,3,-4]*[5,-6]).map((c,p)=>''+c+'x^'+p).join(' + ')
<- "5x^0 + -16x^1 + 27x^2 + -38x^3 + 24x^4"

В ЙажаСцрипт завезли перегрузку операторов.
https://gist.github.com/pyrocto/5a068100abd5ff6dfbe69a73bbc510d7

3.14159265 3.14159265, (Updated )

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

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

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
// больше говнокодить не могу. сайт не дает мне писать коменты.
// на последок говнокод

                const adapter = await navigator.gpu.requestAdapter();
                const device = this.device = await adapter.requestDevice();
                if (!device) {
                    document.body.className = 'error';
		            alert("No WebGPU");
                    return;
                }

                const computeShaderSource = document.getElementById("calculate").value;

                const computePipeline = device.createComputePipeline({
                    compute: {
                        module: device.createShaderModule({
                            code: computeShaderSource,
                        }),
                        entryPoint: 'main',
                    },
                });

просто говнокод. больше говнокодить не могу. сайт не дает мне писать коменты.

ASD_77 ASD_77, (Updated )

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

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

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
function* foo2() {
	yield 2;
	yield 3;
}

function* foo() {
   yield 1;

   yield* foo2();
	
   yield 4;
}

function main() {
    for (const o of foo()) {
        print(o);
    }

    print("done.");
}

продолжаем "наговнокодить". Добавил "елдак" со "звездой". Где тут наши препроцессорописатели.. дайте аналог на C/C++.

ASD_77 ASD_77, (Updated )

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

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

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
function* foo() {
    let i = 1;
    while (i < 10)
	    yield ++i;
}

function main() {
    for (const o of foo()) {
        print(o);
    }

    print("done.");
}

возрадуйтесь браться и сестры .. я вам благую весть принес... наконец-то я доделал это ..говно.. и "елдаки" теперь работают нормально.

ASD_77 ASD_77, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
<!DOCTYPE html>
<html lang="ru">
<heaad><title>calculator Protestant of sins [beta]</title></head><body><script>
let m = ["сколько Вам лет [в годах]?","мало!","всего наилучшего тебе",0,16668,"сколько вы отдыхаете?  [в часах]","у вас накопилось :"," грехов! "];
var x="Этот супер калькулятор поможет тебе подсчитать количество нажитых тобой - за твои годы Грехов!\n Не бойся, смелее вводи свои данные в последующие окошки, и получай результат!\nне переживай, если у тебя получится болше одного миллиона - то это в пределах нормы, если больше то надо делать обряд!";
try{function b(e) {let l=d(c(m[e]));e==0?x=l:0;return l};							  
   function c(a) {return prompt(a)}
   function d(d) {if(d<=2){alert(m[1]);d(c(m[0]))}else{return d;}}
   if(confirm(x)){let s=0x1E32F50*b(0);let a=x*0x16D*0x18-b(5);alert(m[6]+`${s-a-m[4]-Math.PI}`+m[7])}else{alert(m[2])}}catch(x){alert("©by den")};
</script></body></html>

Hello народ))
Уверен вы ещё не встречали такого супер калькулятора!
Чую даже без запуска вы поймёте что это полное Г

prefix-not prefix-not, (Updated )

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

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

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
function* foo() {
    let i = 1;
    yield ++i;
    yield ++i;
}

function main() {
    for (const o of foo()) {
	print(o);
    }

    print("done.");
}

вот... решил самую крутую проблему в итераторах... а ты (С/C++) так можешь?

ASD_77 ASD_77, (Updated )

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

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

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
Steps to reproduce:

  var s = "a huge, huge, huge string...";
  s = s.substring(0, 5);

Expected results: s takes five bytes of memory, plus some overhead.
Actual results: s takes a huge, huge, huge amount of memory.
Unfortunately, most String functions use substring() or no-ops internally: concatenating with empty string, trim(), slice(), match(), search(), replace() with no match, split(), substr(), substring(), toString(), trim(), valueOf().
My workaround is:

function unleakString(s) { return (' ' + s).substr(1); }

But it's not satisfying, because it breaks an abstraction and forces me to think about memory allocation.

https://bugs.chromium.org/p/v8/issues/detail?id=2869

Status: Assigned (Open)
Reported on: Sep 3, 2013

3.14159265 3.14159265, (Updated )

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

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

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
function *foo()
{
   yield 1;
   yield 2;
   yield 3;
}

function main()
{
    for (const o of foo())
    {
	console.log (o);
    }

}

main();

давайте посмотрим, как TS/JS имплементирует "елды". изначально код выглядит красиво. но заглянем под капот что генерит tsc для выполнение такого кода. мне придется разбить этот ужос

ASD_77 ASD_77, (Updated )

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