Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.
Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.
Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 24.05.0 editoru videa Kdenlive (Wikipedie). Ke stažení brzy také na Flathubu.
David Revoy, autor mj. komiksu Pepper&Carrot, se rozepsal o své aktuální grafické pracovní stanici: Debian 12 Bookworm, okenní systém X11, KDE Plasma 5.27, …
Wayland (Wikipedie) byl vydán ve verzi 1.23.0. Z novinek lze vypíchnout podporu OpenBSD.
Craig Loewen na blogu Microsoftu představil novinky ve Windows Subsystému pro Linux (WSL). Vypíchnout lze GUI aplikaci pro nastavování WSL nebo správu WSL z Dev Home.
V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.
Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.
v beznem clanku o programovacich jazycich je minimalne jedna kapitola venovana gramatikam a podobnym vecem. abych pravdu rekl, neni to tema ktere by me nejak extra rajcovalo a teoreticky by se bez nej i interpretr mohl obejit. ale budiz. muj posledni prispevek budiz ukazkou toho, jak nektere nastroje mam rad. premyslel, jsem jestli parser udelat v ruce nebo generovat. ale jelikoz mam v nadpisu "snadno a rychle" a ne "slozitejc a poradne", tak jsem se rozhodl nakonec pouzit generatory.
gramatika scheme neni zavratne slozita ajak jsem rikal, bez problemu se da udelat v ruce, teda bez pouziti generatoru jako flex a bison, ale radsi jej pouzijeme. r5rs mluvi dokonce o tom, ze diky kvazikvotovani, se nejedna o bezkontextovou gramatiku a tudiz bison by na to mel byt kratky, ale kdyz se kvazikvotovani presune do standardni knihovny, uz tento problem odpada.
definice muze vypadat nejak takhle
:scheme.l: %{ #include <string.h> #include "scheme.tab.h" %} INITIAL_CHAR [[:alnum:]]|\+|\*|\-|\\|=|#|\?|\!|<|>|_|\/|~|:|% INNER_CHAR [[:alnum:]]|\+|\*|\-|\\|=|#|\?|\!|<|>|_|\/|~|:|%|'|,|@|`|\. LEFT_PAREN "(" RIGHT_PAREN ")" WHITE_SPACE [[:space:]] QUOTE "'" UNQUOTE "," UNQUOTE_SPLICING "@" QUASIQUOTE "`" DOT "." SEMICOL ";" %% {INITIAL_CHAR}{INNER_CHAR}* { yylval.symbol = GC_MALLOC(strlen(yytext) + 1); strcpy(yylval.symbol, yytext); return T_SYMBOL; } {LEFT_PAREN} { return T_LEFT_PAREN; } {RIGHT_PAREN} { return T_RIGHT_PAREN; } {SEMICOL}.*$ /* ignores comments */ {WHITE_SPACE}+ /* ignores white space*/ {QUOTE} { return T_QUOTE; } {UNQUOTE} { return T_UNQUOTE; } {QUASIQUOTE} { return T_QUASIQUOTE; } {UNQUOTE}{UNQUOTE_SPLICING} { return T_UNQUOTE_SPLICING; } {DOT} { return T_DOT; } %%
za pozornost maximalne stoji, ze cisla tokenu jsou brany z vystupu bisonu a pak dalsi definice, ktere se staraji o ignorovani komentaru. fakt bych nerad sel s touto tematikou nejak do hloubky, protoze o techto vecech byl uz napsan nejeden kilobyte textu.
scheme.y: %{ #include <stdlib.h> #include "types.h" #include "scheme.tab.h" #define YYERROR_VERBOSE scm_value * result = NULL; %} %union { char * symbol; scm_value * parsed; } %token <symbol> T_SYMBOL %token T_LEFT_PAREN %token T_RIGHT_PAREN %token T_QUOTE %token T_UNQUOTE %token T_UNQUOTE_SPLICING %token T_QUASIQUOTE %token T_DOT %type <parsed> expressions symbol symbols list quote quasiquote unquote unquote_splicing %start expressions %% expressions: symbols { result = $1; } ; symbol: T_SYMBOL { $$ = scm_value_new_symbol($1); } | list | quote | quasiquote | unquote | unquote_splicing ; symbols: symbol { $$ = scm_value_new_pair($1, SCM_CONST_NIL); } | symbol T_DOT symbol { $$ = scm_value_new_pair($1, $3); } | symbol symbols { $$ = scm_value_new_pair($1, $2); } ; list: T_LEFT_PAREN T_RIGHT_PAREN { $$ = SCM_CONST_NIL; } | T_LEFT_PAREN symbols T_RIGHT_PAREN { $$ = $2; } ; /* Quotation symbols */ quote: T_QUOTE symbol { $$ = scm_value_new_pair( scm_value_new_symbol("quote"), scm_value_new_pair($2, SCM_CONST_NIL)); } ; quasiquote: T_QUASIQUOTE symbol { $$ = scm_value_new_pair( scm_value_new_symbol("quasiquote"), scm_value_new_pair($2, SCM_CONST_NIL)); } ; unquote: T_UNQUOTE symbol { $$ = scm_value_new_pair( scm_value_new_symbol("unquote"), scm_value_new_pair($2, SCM_CONST_NIL)); } ; %%
vsimnete si, ze si zatim vystacime s pouzitim, jenom datovych typu -- PAIR, SYMBOL, NIL. zadna cisla, zadne booleovske hodnoty. to vsechno je az soucasti semanticke analyzy, ktere se budu venovat priste.
uznavam, ze tato kapitola je hodne zalostna, ale o gramatikach a takovych tech vecech bylo napsano dost, obzvlast od fundovanejsich osob. dopriste se doufam polepsim.
Tiskni Sdílej:
Thaksgiving is coming visit https://onsumo.com/thanksgiving-quotes/ for thanksgiving quotes
8 Ball Pool Cheats will let you buy all items for free. Below you will see all the cheats needed to hack 8 Ball Pool These Cheats for 8 Ball Pool work on all iOS and Android devices. You will also not need a jailbreak or rooted phone. Using our website you no longer need to download a hack tool, so it is safer. If you don't know how to use the hack for 8 Ball Pool hack tool then click here.