Hlavní navigace

Programovací jazyky

Datové kolekce v programovacím jazyku Rust: mapy

Druhou skupinou datových kolekcí, které můžeme nalézt ve standardní knihovně programovacího jazyka Rust, jsou mapy (asociativní pole). První implementace je založena na hešovacích tabulkách, druhá implementace na B-stromech.

Pavel Tišnovský

Dnes 0:00
| 1

PyPy pro Python 3 v první betaverzi

PyPy, alternativní implementace Pythonu napsaná v RPythonu, se pomalu ale jistě dostává na třetí generaci tohoto programovacího jazyka. Vývoj už probíhá několik let, ale zatím byly k dispozici pouze vývojové verze a alfa verze. Teď vyšla první…

Roman Bořánek

Včera 12:33
| 4

Datové kolekce v programovacím jazyku Rust

Při popisu standardní knihovny jazyka Rust nemůžeme vynechat datové kolekce a moduly určené pro práci s nimi. Mezi datové kolekce se řadí sekvenční typy, množiny a mapy.

Pavel Tišnovský

16. 3. 2017 0:00

Užitečné funkce a makra ze standardní knihovny Rustu

V dnešním článku se budeme zabývat funkcemi a makry ze standardní knihovny Rustu. Popíšeme si formátování zpráv, práci s proměnnými prostředí a zpracováním argumentů předaných na příkazovém řádku.

Pavel Tišnovský

9. 3. 2017 0:00
| 8

Oblíbenost jazyka C v TIOBE stále klesá

Nedávno byly zveřejněny výsledky indexu oblíbenosti programovacích jazyků TIOBE za únor 2017. Pořadí na předních místech je v podstatě stejné jako loni, i když první tři stále výrazně klesají. První je Java (16,7 %), druhé C (8,4 %), pak C++…

Jan Fikar

7. 3. 2017 11:45

Reakce na chyby v programovacím jazyku Rust

V každém programu je nutné adekvátně reagovat na různé typy chyb. Programovací jazyk Rust nabízí dvě standardní metody reakcí na chyby: použití výjimek a oznámení o chybě s využitím návratové hodnoty.

Pavel Tišnovský

2. 3. 2017 0:00

Datový typ Option v programovacím jazyku Rust

V dalším článku o jazyku Rust si popíšeme práci s datovým typem Option, který se v programech poměrně často používá, protože zjednodušuje práci s „neexistujícími“ hodnotami, volitelnými parametry funkcí, volitelnými členy struktur atd.

Pavel Tišnovský

23. 2. 2017 0:00

Práce s makry v programovacím jazyku Rust

Důležitou součástí jazyka Rust je jeho systém maker umožňující zjednodušení zápisu některých konstrukcí. Oproti makrosystému známému z C či C++ je makrosystém v Rustu bezpečnější, což si ostatně ukážeme na několika příkladech.

Pavel Tišnovský

16. 2. 2017 0:00

Práce s vektory v programovacím jazyku Rust

Primitivní datový typ pole (array), s nímž jsme se seznámili minule, neumožňuje při běhu programu přidávat či ubírat prvky. Pokud je takové chování zapotřebí, lze namísto polí použít objekt typu Vec neboli vektor.

Pavel Tišnovský

9. 2. 2017 0:00
| 4

Práce s poli v programovacím jazyku Rust

V jedenácté části seriálu o programovacím jazyku Rust se budeme zabývat způsobem práce s poli, což je sice zdánlivě triviální téma, ovšem některé koncepty práce s poli jsou v Rustu specifické.

Pavel Tišnovský

2. 2. 2017 0:00

Je čas aktualizovat Python: TLS 1.2 bude brzy povinné

Python Software Foundation oznámila, že Python.org a všechny související služby začnou vypínat starší TLS verze nižší než 1.2. Tuto změnu vynucuje CDN Fastly, kterou PSF používá. Navazuje tím na změnu, kterou vynucuje [PDF] Payment Card Industry…

Petr Krčmář

1. 2. 2017 11:39
| 1

Práce s řetězci v programovacím jazyku Rust

V dnešním článku se budeme zabývat problematikou práce s řetězci. Nejedná se přitom o zcela triviální téma, protože práce s řetězci v Rustu se hned v několika ohledech odlišuje od ostatních céčkových programovacích jazyků.

Pavel Tišnovský

26. 1. 2017 0:00
| 5

Programovací jazyk Rust: vlákna a sdílení objektů mezi nimi

V deváté části seriálu o jazyku Rust se budeme zabývat prací s vlákny (threads), s čímž souvisí i sdílení objektů mezi vlákny. I v této oblasti programátorům pomáhá k tvorbě aplikací typový systém Rustu.

Pavel Tišnovský

17. 1. 2017 0:00
| 9

Blog: JSON pro C++11 s immuta­bilním DOMem

Tentokrát to bude něco z mé vlastní programátorské tvorby. Jde o knihovnu ImtJSON která je určena k práci s formátem JSON a je k dispozici zcela zdarma pod licencí MIT. Odkaz najdete na konci článku.

Redakce

12. 1. 2017 8:32

Správa paměti v programovacím jazyku Rust s počítáním referencí

Už jsme si ukázali alokaci objektů na haldě (heapu) s jejich automatickou dealokací ve chvíli, kdy objekt přestal být viditelný. Dnes si popíšeme další způsob, který spočívá v počítání referencí.

Pavel Tišnovský

10. 1. 2017 0:00
| 8

Automatická paralelizace kódu pomocí DawnCC

Výzkumníci z brazilské university představili nástroj DawnCC, který analyzuje zdrojový kód v C nebo C++ a automaticky do něj doplňuje OpenACC nebo OpenMP direktivy. K analýze kódu je použito LLVM IR (intermediate representation). Projekt je…

Jan Fikar

3. 1. 2017 9:28
| 1

Přetěžování operátorů a správa paměti v programovacím jazyku Rust

V sedmé části seriálu o Rustu nejprve dokončíme téma přetěžování operátorů. Následně se zaměříme na způsob alokace objektů na haldě (heapu), s čímž souvisí problematika řešení správy paměti v Rustu.

Pavel Tišnovský

3. 1. 2017 0:00

Generické typy v programovacím jazyku Rust

V šesté části seriálu se budeme věnovat problematice generických datových typů, protože ty mají v Rustu nezastupitelné místo a je na nich mj. postavena i celá základní knihovna tohoto jazyka.

Pavel Tišnovský

15. 12. 2016 0:00

Programovací jazyk Rust: metody a traity

V páté části seriálu o programovacím jazyce Rust se nejprve budeme zabývat způsobem deklarace funkcí a metod pro zvolenou datovou strukturu a posléze pak použitím takzvaných traitů (rysů).

Pavel Tišnovský

8. 12. 2016 0:00
| 8

Rust: struktury, n-tice a vlastnictví objektů

Čtvrtá část seriálu o jazyce Rust je věnována popisu struktur (struct) a n-tic (tuple). Následně se budeme zabývat problematikou vlastnictví objektů a s ní souvisejících sémantik „move“ a „copy“.

Pavel Tišnovský

1. 12. 2016 0:00

Rust: předávání parametrů referencí, elegantní způsob práce se sekvencemi

Třetí část seriálu o programovacím jazyce Rust je věnována dvěma tématům. Nejdříve si řekneme, jak je možné předávat parametry do funkcí přes reference a následně si ukážeme „funkcionální“ způsob práce se sekvencemi.

Pavel Tišnovský

22. 11. 2016 0:00

Rust: funkce, lambda výrazy a rozhodovací konstrukce match

Dnes se budeme věnovat třem důležitým jazykovým konstrukcím. Jedná se o funkce, lambda výrazy tvořící základ pro uzávěry a o konstrukci match nahrazující switch-case.

Pavel Tišnovský

10. 11. 2016 0:00

Corrode automaticky "zrezaví" kód z C do Rust

Jamey Sharp napsal projekt Corrode, který umí automaticky převést kód z C do Rust. Zatím umí jen základní operace a nepoužívá plného potenciálu jazyka Rust. Zdrojové kódy jsou na GitHubu. Zajímavostí je, že Corrode je napsaný v Haskell a Mozilla…

Jan Fikar

3. 11. 2016 8:33
| 7

Programovací jazyk Rust: náhrada C nebo slepá cesta?

Pro tvorbu důležitých aplikací se již několik desetiletí používají programovací jazyky C a C++. Některé problematické rysy C/C++ se snaží odstranit moderní programovací jazyk Rust.

Pavel Tišnovský

3. 11. 2016 0:00

Vyšel Node.js verze 7.0.0

Vývojáři Node.js oznámili vydání verze 7.0.0, která přináší především aktualizaci jádra V8 na verzi 5.4. Ta pokrývá standard jazyka ES6 z 98 % a přináší vyšší spolehlivost i výkon a nový experimentální URL parser založený na standardu WHATWG. Pozor…

Petr Krčmář

26. 10. 2016 10:26

Programovací jazyk Pixie: funkce ze základní knihovny a použití FFI

Ve druhé a současně i závěrečné části článku o jazyce Pixie si nejprve ukážeme nejdůležitější funkce ze základní knihovny používané v prakticky všech aplikacích a posléze se budeme zabývat problematikou FFI.

Pavel Tišnovský

25. 10. 2016 0:00
| 8

PHP 8.0 bude mít pravděpodobně nový JIT

Společnost Zend začala vyvíjet nový JIT kompilátor pro PHP a předpokládá se, že se stane součástí PHP 8.0. Kód je dostupný na GitHubu a jak píše Dmitry Stogov v mailing listu, snaží se vývojáři udržet ho co nejmenší a nejjednodušší. Měl by být nyní…

Petr Krčmář

19. 10. 2016 12:01
| 3

Linuxová nadace založila JavaScript nadaci

Včera na konferenci OSCon Europe Linuxová nadace oznámila založení nadace pro JavaScript JS Foundation. Nadace vznikne z JQuery Foundation odkud také přejde šéf Kris Borchers. JS Foundation bude spolu s Node.js Foundation spravována Linuxovou…

Jan Fikar

18. 10. 2016 11:54

Pixie: lehký skriptovací jazyk s „kouzelnými“ schopnostmi

Clojure vyžaduje virtuální stroj JVM, CLR či VM pro JavaScript. Žádná z těchto variant není vhodná pro psaní kratších skriptů, ovšem existuje řešení: jazyk Pixie s vlastní „odlehčenou“ VM.

Pavel Tišnovský

18. 10. 2016 0:00

O'Reilly uvolňuje bezplatné e-knihy o programování

Vydavatelství O'Reilly má nyní sekci bezplatných e-knih o programování. Najde tu čtyři knihy o Javě, sedm o Pythonu a v různém například „C++ Today“, „Swift Pocket Reference“ a „Why Rust?“. Knihy jsou ve formátu ePub, Mobi a PDF. (zdroj: slashdot)

Jan Fikar

11. 10. 2016 11:12
| 5