Přejít k navigační liště

Zdroják » Zprávičky » Fructose: překlad z Ruby do PHP

Fructose: překlad z Ruby do PHP

Zprávičky PHP, Různé

Nálepky:

Překlad z jazyka s vyšší úrovní abstrakce do jazyka s nižší úrovní je na webu stále populárnější – cílovým jazykem bylo HTML, CSS, JavaScript, s Fructose je to i PHP5.

Buďme přesní – Fructose není překladač z Ruby; vstupní jazyk není přímo Ruby, je to jeho podmnožina. Netěšte se, že své programy v Ruby bez námahy přeložíte do PHP a spustíte „kdekoli“, zatím jde spíš o koncept než o nástroj k reálnému použití.

Smyslem Fructose (a dalších podobných překladačů) je použít jazyk s vyšší úrovní abstrakce i v prostředí, kde není implementován. Proč zrovna PHP jako cílový jazyk? Pravděpodobně proto, že je na serverech nejběžnější – počet serverů s PHP je řádově vyšší (76% vs 0.6%).

Komentáře

Odebírat
Upozornit na
guest
6 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře
blizz
Proč zrovna PHP jako cílový jazyk? Pravděpodobně proto, že je na serverech nejběžnější

A to je problém doinštalovať na server ruby? Mne to zabralo cca 10 minút.

v6ak

Kdysi jsem přemýšlel o takovém překladu z PHP do JS. Cílem bylo vygenerovat čistý kód. Nakonec jsem se do toho nepustil. Skončcil jsem u operátoru plus. V dynamickém PHP nemusím obecně vědět typy operandů. Pokud bych tedy převedl $x+$y na x+y, pak by to sice fungovalo pro čísla, ale už ne pro řetězce. Teda ono by to fungovalo, ale jinak…

Samozřejmě, lze tu udělat dynamické rozlišení typů, ale tady končí veškerá elegance. Nebyla to cesta, kterou bych chtěl jít.

Pravděpodobně někde tady bude taky důvod pro podporu pouze podmnožiny Ruby. Ale tudy jsem tehdy nechtěl jít. (Nepodporovat například fopen bylo akceptovatelné, ale udělat sčítání naprosto jinak už ne.)

Tady mají větší šanci statické jazyky. Tam takové problémy nejsou. Příkladem může být takový Google Web Toolkit, který v současnosti podporuje Javu. Jsou tu ale snahy sem potrovat i Scalu (ScalaGWT), byť v rané fázi.

Koubel

Hm, David Majda napsal kompilátor z ruby do PHP jako svou diplomovou práci již před lety i s teorií to můžete najít na http://ruby-php.org/ takže žádnou fruktózu netřeba, cukru je i beztak dost.

Inkvizitor

Projekt, u ktereho je napsano „It is now discontinued. Partial results are available in my master thesis.“ bych asi moc pouzivat nechtel. Bez ohledu na to, jak daleko autor dosel.

Pepa

někteří lidi mají asi příliš volnýho času, že vyvíjí takový hovadiny :-)

EmDash: Duchovní nástupce WordPressu, který řeší bezpečnost pluginů

Cloudflare přichází s ambiciózním projektem EmDash, který chce přepsat pravidla správy webového obsahu a nahradit dlouholetou dominanci WordPressu. Nový open source CMS, vytvořený za pouhé dva měsíce s pomocí AI, sází na moderní architekturu, důraz na bezpečnost i monetizaci a řeší klíčové problémy, které WordPress provázejí už desítky let.

Project Glasswing: Anthropic mění pravidla kybernetické bezpečnosti

AI
Komentáře: 0
Nový AI model Claude Mythos Preview dokáže autonomně nacházet bezpečnostní díry v každém hlavním operačním systému i prohlížeči – včetně zranitelností starých desítky let, které přežily miliony automatizovaných testů. Anthropic se rozhodl tuto schopnost nasadit jako nástroj obrany a svolal koalici dvanácti technologických gigantů – od Amazonu přes Microsoft až po JPMorganChase. Se závazkem 100 milionů dolarů a přístupem pro více než 40 organizací spravujících kritickou infrastrukturu je Project Glasswing závodem s časem: zajistit, aby obránci byli s těmito schopnostmi dřív než útočníci.

Git Worktree + Claude Code: paralelní vývoj a AI agenti ve více větvích najednou

Git worktree posouvá práci s větvemi na úplně jinou úroveň – místo neustálého přepínání a stashování nabízí paralelní pracovní prostředí nad jedním repozitářem. V kombinaci s nástroji jako Claude Code navíc otevírá dveře k běhu více AI agentů současně, každý izolovaně ve své větvi, bez kolizí a zbytečné režie.