Jak se pozná senior

Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:Jak se pozná senior
« Odpověď #240 kdy: 20. 12. 2016, 20:04:06 »
ale nevynikla ta krása :D

Mám u tebe pivo, skončilo na monitoru.  ;D ;D ;D
Nemít na práci lepší věci, přepsal bych to tak, aby to opravdu počítalo, takhle to jenom vypisuje a i tak z toho mám řádně vyfuckovanej mozek. Ale mám ten jazyk rád, je to skvělý mentální cvičení ☺


javaman ()

Re:Jak se pozná senior
« Odpověď #241 kdy: 20. 12. 2016, 20:09:40 »
Tak maximálně pro lopatu. Pro vývojáře je to ztráta času asi jako dělat dvakrát stejnou věc, když jde hned automatizovat.

YF

Re:Jak se pozná senior
« Odpověď #242 kdy: 20. 12. 2016, 20:40:31 »
Tak maximálně pro lopatu. Pro vývojáře je to ztráta času asi jako dělat dvakrát stejnou věc, když jde hned automatizovat.
vyborne - prosimte tak zacni tim ze si zautomatizujes zvyk ze kdyz chces neco napsat na root - tak to proste neudelas - az budes mit pocit ze uz toho v sobe drzis moc - tak si zajdes k tomu panu doktorovi a muzete vymejslet dalsi automatizace spolu ne?

čumil

Re:Jak se pozná senior
« Odpověď #243 kdy: 20. 12. 2016, 20:55:48 »
Tak maximálně pro lopatu. Pro vývojáře je to ztráta času asi jako dělat dvakrát stejnou věc, když jde hned automatizovat.
vyborne - prosimte tak zacni tim ze si zautomatizujes zvyk ze kdyz chces neco napsat na root - tak to proste neudelas - az budes mit pocit ze uz toho v sobe drzis moc - tak si zajdes k tomu panu doktorovi a muzete vymejslet dalsi automatizace spolu ne?
Sis nevšim trotle? On má už to trollení dávno zautomatizovaný. Myslíš si, že by živej člověk vydržel to tempo jakym trolluje náš Java mistr ?

Radovan.

Re:Jak se pozná senior
« Odpověď #244 kdy: 20. 12. 2016, 21:26:33 »
Tuxiku, ty zvííířééé ;D ;D ;D
Tos' mě dostal, čekal jsem hodně, ale tohle teda ne!

Zato javalopata nezklamal, prokázal že je totální lúzr co nezvládne ani vygooglit školní příklad na vnořený cyklus. Absolutní nula, i ten bot Nový by se zmohl na víc. Dokonce i Lael...

No, nejvíc se mi líbilo to od robotrona, ale když chce použít numerický SW, tak radši klasický nástroj skutečných seniorů, FORTRAN 66:
Kód: [Vybrat]
      PROGRAM MNASOB                                                                                                                       
      PRINT '(10(10I4/))',(((I*J),J=1,10),I=1,10)                                                                                           
      END                                                                                                                                   
První a poslední řádek by tam ani nemusely být, když to není na děrných štítcích :)
Závorek jak v Lispu, ten jsem vlastně neviděl, přehlédl jsem ho nebo ho tady nikdo nepoužil?

A tohle je opravdový programátorský senior, měl skvělou přednášku na letošním Bytefestu: https://www.youtube.com/watch?v=rCuEoht4fGY


čumil

Re:Jak se pozná senior
« Odpověď #245 kdy: 20. 12. 2016, 21:31:04 »

      println(
        (1 to 10).map(x ⇒
          (1 to 10).map(y ⇒ f"${x * y}%3d").mkString(" ")
        ).mkString("\n")
      )

tfuj, tady je kapka lispíku

Kód: [Vybrat]
(format t "~{~{~2,2@t~a~}~&~}" (loop for n from 1 to 10 collect (loop for x from 1 to 10 collect (* n x))))

čumil

Re:Jak se pozná senior
« Odpověď #246 kdy: 20. 12. 2016, 21:35:29 »
Tuxiku, ty zvííířééé ;D ;D ;D
Tos' mě dostal, čekal jsem hodně, ale tohle teda ne!

Zato javalopata nezklamal, prokázal že je totální lúzr co nezvládne ani vygooglit školní příklad na vnořený cyklus. Absolutní nula, i ten bot Nový by se zmohl na víc. Dokonce i Lael...

No, nejvíc se mi líbilo to od robotrona, ale když chce použít numerický SW, tak radši klasický nástroj skutečných seniorů, FORTRAN 66:
Kód: [Vybrat]
      PROGRAM MNASOB                                                                                                                       
      PRINT '(10(10I4/))',(((I*J),J=1,10),I=1,10)                                                                                           
      END                                                                                                                                   
První a poslední řádek by tam ani nemusely být, když to není na děrných štítcích :)
Závorek jak v Lispu, ten jsem vlastně neviděl, přehlédl jsem ho nebo ho tady nikdo nepoužil?

A tohle je opravdový programátorský senior, měl skvělou přednášku na letošním Bytefestu: https://www.youtube.com/watch?v=rCuEoht4fGY
fort rules

čumil

Re:Jak se pozná senior
« Odpověď #247 kdy: 20. 12. 2016, 21:37:01 »
Tak tohle je drsné. To bych nechtěl po někom zdědit. Perl 6 dokáže být stručnější a současně čitelnější bez použití složitých konceptů.
No vždyť jsem to taky musel dát do toho generátoru point-free syntaxe, sám bych to nevyrobil... normálně to vypadá takhle:
Kód: [Vybrat]
mapM_ putStrLn $ map (concatMap (printf "%4d")) [ map (*x) [1..10] | x <- [1..10 :: Int]]A to už je v pohodě čitelné
v porovnání s lispíkem je to kekel

robotron

Re:Jak se pozná senior
« Odpověď #248 kdy: 20. 12. 2016, 21:38:36 »
Citace
klasický nástroj skutečných seniorů, FORTRAN 66

Muhehe, dokonaly. A ten kod taky, vubec bych netusil, ze je takova smela konstrukce ve Fortranu legalni.

m.

Re:Jak se pozná senior
« Odpověď #249 kdy: 20. 12. 2016, 21:43:40 »

m.

Re:Jak se pozná senior
« Odpověď #250 kdy: 20. 12. 2016, 21:46:48 »
Muj predchozi post mela byt puvodne odpoved toto. Sorry za bordel.

No tak si to užijte v céčku, když jinak nedáte...
Kód: [Vybrat]
#include <stdio.h>
#include <string.h>

#define XSIZE 10
#define YSIZE 10

int main() {
    int number, x, y, max_len, cur_len, spaces;
    char number_str[10];
    snprintf (number_str, 10, "%d", XSIZE*YSIZE);
    max_len = strlen(number_str);
    for (y=1; y<=YSIZE; y++) {
        for (x=1; x<=XSIZE; x++) {
            number = x*y;
            snprintf (number_str, 10, "%d", number);
            cur_len = strlen(number_str);
            for (spaces=cur_len; spaces<=max_len; spaces++)
                printf ("%s", " ");
            printf ("%s", number_str);
        }
        printf ("%s", "\n");
    }
}

a return mas kde, kdyz uz to neni jako void?

Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:Jak se pozná senior
« Odpověď #251 kdy: 20. 12. 2016, 22:00:28 »
Muj predchozi post mela byt puvodne odpoved toto. Sorry za bordel.

No tak si to užijte v céčku, když jinak nedáte...
Kód: [Vybrat]
#include <stdio.h>
#include <string.h>

#define XSIZE 10
#define YSIZE 10

int main() {
    int number, x, y, max_len, cur_len, spaces;
    char number_str[10];
    snprintf (number_str, 10, "%d", XSIZE*YSIZE);
    max_len = strlen(number_str);
    for (y=1; y<=YSIZE; y++) {
        for (x=1; x<=XSIZE; x++) {
            number = x*y;
            snprintf (number_str, 10, "%d", number);
            cur_len = strlen(number_str);
            for (spaces=cur_len; spaces<=max_len; spaces++)
                printf ("%s", " ");
            printf ("%s", number_str);
        }
        printf ("%s", "\n");
    }
}

a return mas kde, kdyz uz to neni jako void?
return nemám, protože jsem původně chtěl parsovat parametry x a y size a mělo to význam, mít to int a vracet chyby. Pak jsem se na to vykašlal a nepředělal to. Připomínka je to samozřejmě správná a stydím se.

Radovan.

Re:Jak se pozná senior
« Odpověď #252 kdy: 20. 12. 2016, 22:11:42 »
vubec bych netusil, ze je takova smela konstrukce ve Fortranu legalni.
Ono by to šlo dokonce ještě trochu zkrátit, protože formátovací řetězec se při vyčerpání automaticky recykluje:
Kód: [Vybrat]
      PRINT '((10I4))',(((I*J),J=1,10),I=1,10)FORTRAN je úžasný jazyk s neuvěřitelnými možnostmi, zíral jsem co všechno už v těch padesátých letech při jeho vývoji promysleli. Třeba systém sdílení bloků proměnných mezi různými procedurami, jako parametry šly předávat dokonce i odkazy na funkce, jak vestavěné tak v programu! Akorát všechny proměnné byly statické, takže rekurzi to vyhodí jako chybu.

andy

Re:Jak se pozná senior
« Odpověď #253 kdy: 20. 12. 2016, 23:05:07 »
No nechtěl jsem to zvrhnout na debatu, který jazyk je lepší...
To je téměř stejně dlouhé jako řešení v c. Slušný jazyk by měl umožňovat vygenerování podobné tabulky jedinou vektorizovanou operací, pouze s použitím vestavěných funkcí a operátorů.
Tak haskell zrovna žádné vestavěné operátory nemá.. takže to je už z pricipu nepoužitelný jazyk....
Kód: [Vybrat]
hyper :: (Functor f, Functor g) => (a -> b -> c) -> f a -> g b -> f (g c)
hyper f xs ys = fmap (flip fmap ys . f) xs
(<<*>>) :: (Functor f, Functor g, Num a) => f a -> g a -> f (g a)
(<<*>>) = hyper (*)
A hned má haskel hyperoperátor... on už to dokonce někdo napsal v nějaké knihovně.... ale asi se to zrovna často nepoužívá - jo a není to omezené na listy, ale funguje to na jakýkoliv funktor.
Citace
Tisk tabulky je také hodně ukecaný a printf ani není součástí prelude. Haskell sucks.
Printf je taky docela hnusná funkce, která by principiálně v žádném pořádném programu být neměla, poněvdž není staticky typovaná... mně perl vždycky přidal nepoužitelný, protože mám asi moc krátkodobou paměť a to kvantum různých symbolů jsem prostě nebyl schopen vstřebat (což je taky případ toho <<*>> - když to použiju jednou za rok, jak si pak budu pamatovat, co to znamená?). Ale slyšel jsem, že v Perlu6 je spousta věcí vymyšlena dobře - jak tam funguje static typing? Zahlédl jsem, že to umí - co to tedy umí?

Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:Jak se pozná senior
« Odpověď #254 kdy: 21. 12. 2016, 07:26:16 »
Ještě přihodím jednu perlu :)

Kód: [Vybrat]
IDENTIFICATION DIVISION.
PROGRAM-ID. NASOBILKA.

DATA DIVISION.
  WORKING-STORAGE SECTION.
  01 Y PIC 9(3) VALUE 1.
  01 X PIC 9(3) VALUE 1.
  01 RES PIC 9(3).

PROCEDURE DIVISION.
  PERFORM Y-LOOP WITH TEST AFTER UNTIL Y>10.
  STOP RUN.

  Y-LOOP.
  PERFORM X-LOOP WITH TEST AFTER UNTIL X>10.
  DISPLAY ' '.
  SET X TO 1.
  ADD 1 TO Y.

  X-LOOP.
  MULTIPLY X BY Y GIVING RES.
  DISPLAY RES' ' WITH NO ADVANCING.
  ADD 1 TO X.

ČOBOLo, to bolo, terazky som lopatou.