{"id":7800,"date":"2020-12-02T21:18:00","date_gmt":"2020-12-02T20:18:00","guid":{"rendered":"https:\/\/monodes.com\/predaelli\/?p=7800"},"modified":"2020-12-02T16:18:55","modified_gmt":"2020-12-02T15:18:55","slug":"qbe-vs-llvm","status":"publish","type":"post","link":"https:\/\/monodes.com\/predaelli\/2020\/12\/02\/qbe-vs-llvm\/","title":{"rendered":"QBE vs LLVM"},"content":{"rendered":"<p>Source: <em><a href=\"https:\/\/c9x.me\/compile\/doc\/llvm.html\">QBE vs LLVM<\/a><\/em><\/p>\n<blockquote><p>Both QBE and LLVM are compiler backends using an SSA representation. This document will explain why LLVM does not make QBE a redundant project. Obviously, everything following is biased, because written by me.<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p class=\"excerpt\">Source: QBE vs LLVM Both QBE and LLVM are compiler backends using an SSA representation. This document will explain why LLVM does not make QBE a redundant project. Obviously, everything following is biased, because written by me.<\/p>\n<p class=\"more-link-p\"><a class=\"more-link\" href=\"https:\/\/monodes.com\/predaelli\/2020\/12\/02\/qbe-vs-llvm\/\">Read more &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"link","meta":{"inline_featured_image":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[52],"tags":[],"class_list":["post-7800","post","type-post","status-publish","format-link","hentry","category-software","post_format-post-format-link"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6daft-21O","jetpack-related-posts":[{"id":148,"url":"https:\/\/monodes.com\/predaelli\/2015\/05\/16\/148\/","url_meta":{"origin":7800,"position":0},"title":"Ok, I feel stupid. I'm\u2026","author":"Paolo Redaelli","date":"2015-05-16","format":false,"excerpt":"Ok, I feel stupid. I'm reading several weeks of unread mail discovering this one of 26th of march: Hi Folks, I'm happy to announce CastXML, a successor to GCC-XML [1]. CastXML is hosted here: https:\/\/github.com\/CastXML\/CastXML#readme It is a tool based on LLVM\/Clang that generates the same XML output format as\u2026","rel":"","context":"In &quot;Senza categoria&quot;","block_context":{"text":"Senza categoria","link":"https:\/\/monodes.com\/predaelli\/category\/senza-categoria\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":5808,"url":"https:\/\/monodes.com\/predaelli\/2019\/06\/28\/5808\/","url_meta":{"origin":7800,"position":1},"title":"https:\/\/twitter.com\/wvo\/status\/1144331578006335488?s=20 Single header C++ WASM\u2026","author":"Paolo Redaelli","date":"2019-06-28","format":false,"excerpt":"https:\/\/twitter.com\/wvo\/status\/1144331578006335488?s=20 Single header C++ WASM binary writer (with linking\/reloc support): (link: https:\/\/github.com\/aardappel\/lobster\/blob\/master\/dev\/src\/lobster\/wasm_binary_writer.h) github.com\/aardappel\/lobs\u2026 as part of the Lobster WASM backend: (link: http:\/\/aardappel.github.io\/lobster\/implementation_wasm.html) aardappel.github.io\/lobster Time is ripe to start implementing an LLVM Liberty Eiffel backend. For real, this time \ud83d\ude03","rel":"","context":"In &quot;Eiffel&quot;","block_context":{"text":"Eiffel","link":"https:\/\/monodes.com\/predaelli\/category\/eiffel\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":8181,"url":"https:\/\/monodes.com\/predaelli\/2023\/03\/12\/replacing-c\/","url_meta":{"origin":7800,"position":2},"title":"Replacing C","author":"Paolo Redaelli","date":"2023-03-12","format":false,"excerpt":"Do We Need a Replacement for C? I found this old draft that cites Zig programming language... time to undraft it... :) C is a widely used language used to program anything from OS kernels to cryptography libraries. Is it time for a replacement? Erik EngheimNov 25, 2020\u00b75 min read\u2026","rel":"","context":"In &quot;Senza categoria&quot;","block_context":{"text":"Senza categoria","link":"https:\/\/monodes.com\/predaelli\/category\/senza-categoria\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":475,"url":"https:\/\/monodes.com\/predaelli\/2015\/06\/25\/its-actually-over\/","url_meta":{"origin":7800,"position":3},"title":"It&#8217;s actually over","author":"Paolo Redaelli","date":"2015-06-25","format":false,"excerpt":"Google's corporate motto is \"Don't be evil\". For a convenient definition of \"evil\" it seems when you read news such as this: The default behavior of hotword, a new, black-box module in Chrome (and its free\/open cousin, Chromium) causes it to silently switch on your computer's microphone and send whatever\u2026","rel":"","context":"In &quot;Software Libero&quot;","block_context":{"text":"Software Libero","link":"https:\/\/monodes.com\/predaelli\/category\/software\/software-libero\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1614,"url":"https:\/\/monodes.com\/predaelli\/2016\/06\/01\/javascript-factory-functions-vs-constructor-functions-vs-classes-javascript-scene-medium\/","url_meta":{"origin":7800,"position":4},"title":"JavaScript Factory Functions vs Constructor Functions vs Classes \u2014 JavaScript Scene \u2014 Medium","author":"Paolo Redaelli","date":"2016-06-01","format":"link","excerpt":"https:\/\/medium.com\/javascript-scene\/javascript-factory-functions-vs-constructor-functions-vs-classes-2f22ceddf33e#.13avjf4lk","rel":"","context":"In &quot;Senza categoria&quot;","block_context":{"text":"Senza categoria","link":"https:\/\/monodes.com\/predaelli\/category\/senza-categoria\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":8287,"url":"https:\/\/monodes.com\/predaelli\/2021\/03\/30\/benchmarking-go-vs-node-vs-elixir\/","url_meta":{"origin":7800,"position":5},"title":"Benchmarking Go vs Node vs Elixir","author":"Paolo Redaelli","date":"2021-03-30","format":false,"excerpt":"In this benchmark test, we compare three web application servers\u2014Go, Node, and Elixir (Cowboy)\u2014by subjecting each to a synthetic workload, first with 10k, and later with 100k connections. Source: Benchmarking Go vs Node vs Elixir Will an Eiffel implementation be as good as Elixir? \u00a0","rel":"","context":"In &quot;Comparisons&quot;","block_context":{"text":"Comparisons","link":"https:\/\/monodes.com\/predaelli\/category\/comparisons\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/posts\/7800","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/comments?post=7800"}],"version-history":[{"count":0,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/posts\/7800\/revisions"}],"wp:attachment":[{"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/media?parent=7800"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/categories?post=7800"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/monodes.com\/predaelli\/wp-json\/wp\/v2\/tags?post=7800"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}