abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:55 | IT novinky

    Společnost Perplexity AI působící v oblasti umělé inteligence (AI) podala nevyžádanou nabídku na převzetí webového prohlížeče Chrome internetové firmy Google za 34,5 miliardy dolarů (zhruba 723 miliard Kč). Informovala o tom včera agentura Reuters. Upozornila, že výše nabídky výrazně převyšuje hodnotu firmy Perplexity. Společnost Google se podle ní k nabídce zatím nevyjádřila.

    Ladislav Hagara | Komentářů: 1
    dnes 04:33 | Bezpečnostní upozornění

    Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250812 mikrokódů pro své procesory řešící 6 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána nová verze 1.25 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    včera 13:44 | Nová verze

    Byla vydána beta verze Linux Mintu 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    včera 13:00 | IT novinky

    Provozovatel internetové encyklopedie Wikipedie prohrál v Británii soudní spor týkající se některých částí nového zákona o on-line bezpečnosti. Soud ale varoval britského regulátora Ofcom i odpovědné ministerstvo před zaváděním přílišných omezení. Legislativa zpřísňuje požadavky na on-line platformy, ale zároveň čelí kritice za možné omezování svobody slova. Společnost Wikimedia Foundation, která je zodpovědná za fungování

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 12:55 | Nová verze

    Byla vydána verze 2.0.0 nástroje pro synchronizaci dat mezi vícero počítači bez centrálního serveru Syncthing (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | IT novinky

    Americký prezident Donald Trump se v pondělí osobně setkal s generálním ředitelem firmy na výrobu čipů Intel Lip-Bu Tanem. Šéfa podniku označil za úspěšného, informují agentury. Ještě před týdnem ho přitom ostře kritizoval a požadoval jeho okamžitý odchod. Akcie Intelu v reakci na schůzku po oficiálním uzavření trhu zpevnily asi o tři procenta.

    Ladislav Hagara | Komentářů: 12
    11.8. 04:55 | Nová verze

    Byl vydán Debian GNU/Hurd 2025. Jedná se o port Debianu s jádrem Hurd místo obvyklého Linuxu.

    Ladislav Hagara | Komentářů: 6
    11.8. 02:44 | Komunita

    V sobotu 9. srpna uplynulo přesně 20 let od oznámení projektu openSUSE na konferenci LinuxWorld v San Franciscu. Pokuď máte archivní nebo nějakým způsobem zajímavé fotky s openSUSE, můžete se o ně s námi podělit.

    lkocman | Komentářů: 6
    9.8. 21:11 | Nová verze

    Byl vydán Debian 13 s kódovým názvem Trixie. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 8
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (49%)
     (20%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (17%)
    Celkem 360 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Rekurze v erlang shellu

    4.7.2007 11:46 | Přečteno: 1120× | erlang

    Jedna z výtek na adresu erlangu, co jsem zaznamenal, je nemožnost napsat rekurzivní funkci přímo v shellu. Přitom je to spíše příznak nedostatku informovanosti. Přiznám se bez mučení, že jsem to taky ze začátku nevěděl, protože k tomu je potřeba devilish ingenuity (slovy Joe Armstronga na straně 57). Ve výše odkazované disertační práci je jako ukázka výpočet faktoriálu.

    6> Fact = fun(X) ->
          G = fun(0,F) -> 1;
                 (N, F) -> N*F(N-1,F)
          end,
          G(X, G)
       end.
    #Fun<erl_eval.5.123085357>
    7> Fact(4).
    24

    Pokud vás z uvedeného kódu nebolí hlava, tak jděme dále. Co třeba funkce, která bude vracet sekvencery (funkce vracející list hodnot se zvoleným krokem). Nic těžkého, ta rekurze je tam stejně jen jedna:

    14> StepSeqGen = fun(Step) ->
          G = fun(X,Y,Z,F) when X > Y -> [];
                 (X,Y,Z,F) -> [X|F(X+Z, Y, Z, F)]
          end,
          fun(Start,Stop) -> G(Start, Stop, Step, G) end
        end.
    #Fun<erl_eval.6.56006484>
    15> ByOne=StepSeqGen(1).
    #Fun<erl_eval.12.115169474>
    16> ByOne(1,10).
    [1,2,3,4,5,6,7,8,9,10]
    17> ByTwo = StepSeqGen(2), ByTwo(0,10).
    [0,2,4,6,8,10]
    18> (StepSeqGen(3))(0,10).
    [0,3,6,9]
    

    Takže rekurze přímo v shellu psát jdou i když to není na první pohled zrovna patrné. Stačí jen troška té devilish ingenuity.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    4.7.2007 14:58 pkm
    Rozbalit Rozbalit vše Re: Rekurze v erlang shellu
    No to je tedy state of the art příspěvek (už dlouho se tu nikdo neodvolával na něcí disertaci, to jou samé wikiny a osnews :-)

    A když to není v shellu, tak rekurze jde i bez toho předávání funkce jako parametru?
    4.7.2007 15:17 Kyosuke | skóre: 28 | blog: nalady_v_modre
    Rozbalit Rozbalit vše Re: Rekurze v erlang shellu
    To je tak, když Erlang nemá letrec. ;-) Možná i v něm by se občas hodil.
    4.7.2007 18:58 Tom.š Ze.le.in | skóre: 21 | blog: tz
    Rozbalit Rozbalit vše Re: Rekurze v erlang shellu
    Ale co, letrec se vzdycky da funkcionalne nahradit Y kombinatorem, ne? :)
    5.7.2007 18:18 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: Rekurze v erlang shellu
    a neni toto nahodou jen stary dobry y-kombinator?
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    4.7.2007 18:34 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Rekurze v erlang shellu
    A když to není v shellu, tak rekurze jde i bez toho předávání funkce jako parametru?
    Samozřejmě.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.