Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
きつねさんでもわかるLLVM【電子書籍】柏木餅子, 風薬 達人出版会 発行日: 2013-02-08 対応フォーマット: EPUB, PDF 詳細を見る 先日、表紙がかわいかったので、「きつねさんでもわかるLLVM」を買いました。 なので、MinCamlを改造して、バックエンドにLLVM対応コードを追加してみました。 とりあえずテステケースは全部通ったので、まとめておきます。 MinCamlとは 別名「美しい日本のMLコンパイラ」。住井先生によるMLサブセットであり、以下のようなコードを書けます。 let rec fib n = if n <= 1 then n else fib (n - 1) + fib (n - 2) in print_int (fib 30) 詳しくは解説スライドあたりを読んでください。 やったこと バックエンド部分をLLVMにきりかえた。 LLVMの作法に合せるた
Building a modern functional compiler from first principles. Stephen Diehl In 2014 I wrote a short tutorial about building a small imperative language in Haskell that compiled into LLVM. I was extremely happy with the effect the tutorial seemed to have, and the warm response I got from so many people was very encouraging. I've done a great bit of thinking about what the most impactful topic I coul
Clang/LLVM(Low Level Virtual Machine)とは、CやObjective-Cなどのコンピュータ言語のコンパイラ環境です。 最近ではiOSやMac OS X、FreeBSDなどのOSでは、デファクトスタンダードであったGCC(GNUコンパイラコレクション)からLLVM/Clangへの置き換えが進みつつあります。 本書では、Clang/LLVMの仕組みと使い方(カスタマイズ法など)、Clang/LLVM独自のライブラリの使い方などについて詳細な解説を行っています。 はじめに CHAPTER 1 LLVMとは 1 LLVMの概要 2 コンパイラの仕組み 3 特徴 4 対応プラットフォーム 5 LLVMプロジェクトの一覧 6 ライセンス CHAPTER 2 セットアップ 1 ビルド環境の準備 2 ソースコードを取得する 3 makeでビルドする 4 CMakeでビルド
The FTL JIT is JavaScriptCore's top-tier optimizing compiler. It's a combination of our DFG compiler for doing high-level optimizations and type inference, and a lowering phase that turns that code into C-like SSA. The FTL JIT started out as a marriage of the DFG and LLVM, but later LLVM backend was replaced with B3. See https://bugs.webkit.org/show_bug.cgi?id=112840 for the bug that tracked the
iPhone5S, iPad Airで64bit ARMプロセッサをいち早く製品化したAppleですが、驚きのニュースがありました。 AppleはOS X, iOSのコンパイラツールチェインをgccからclang/LLVMに移行しています。その64bit ARM向けのバックエンドをLLVMのコミュニティに公開し、それを本家のツリーのメインラインに統合するという話です。 ニュースの概要は以下の記事で読むことができます。 Apple Open-Sources Their 64-bit ARM LLVM Back-End - Phoronix その続報。 Apple, LLVM Developers Figure Out Their 64-Bit ARM Approach - Phoronix 一次ソースを自分でも確認しました。ことの始まりはLLVMdevのメーリングリストのこの投稿。 http
LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations. 11月6日から7日(米国時間)にかけてサンフランシスコで開催された「2013 LLVM Developers' Meeting」におけるプレゼンテーションのようすがサイトにアップロードされた。Sony Computer EntertainmentのPaul T. Robinson氏がPlayStation 4の開発環境について発表しており、コンパイラインフラストラクチャとしてLLVM Clangを採用していること、採用に至るまでの検討事項や、結果としてどのような利点が得られたかを説明している。 PlayStation 4の開発にはLLVM
The full video from CppCon is available here: https://www.youtube.com/watch?v=PVYdHDm0q6Y C++ provides a much richer set of abstractions than C. Classes, templates, overloading, and other core C++ features can be leveraged for more readable syntax, better compile time typechecking, more open ended genericity and improved modularity. On the flip side, C89 still boasts some advantages over C++, espe
オープンソースで有名なEric S. Raymondが、自由ソフトウェアで有名なRichard Stallmanに、GCCのアンチプラグインポリシーについて突っ込んでいる。 GCCは、長年、コンパイラーのモジュール化を政治的な理由で行っていなかった。もし、例えばパーサーや意味解析だけを分離して使えるようにしたり、内部表現を規格化したりしてしまうと、GCCの一部が、不自由なソフトウェアに取り込まれたり、あるいは不自由なソフトウェアがGCCのプラグインという形で入り込むことになってしまう。これは、利用者の自由を第一とする自由ソフトウェアにとって、悪夢のような未来である。そのような未来を未然に防ぐために、政治的な理由で、GCCのはプラグインに反対するポリシーを採用している。もし、GCCを改良したければ、自由なソフトウェアとなるべきなのだ。そして、GCCのプロジェクトに参加するべきなのだ。 とはい
The Haskell programming language community. Daily news and info about all things Haskell related: practical stuff, theory, types, libraries, jobs, patches, releases, events and conferences and more...
Implementing a JIT Compiled Language with Haskell and LLVM Adapted by Stephen Diehl ( @smdiehl ) This is an open source project hosted on Github. Corrections and feedback always welcome. Version 1: December 25, 2013 Version 2: May 8, 2017 The written text licensed under the LLVM License and is adapted from the original LLVM documentation. The new Haskell source is released under the MIT license. C
カーネル/VM Advent Calendar 2013 にさっき登録しました。需要の無さそうな NaCl について語ります。 https://qiita.com/advent-calendar/2013/kernelvm NaCl はグーグルが作ったものの中で一番好きくらいに好きなものです。理由は低レイヤコンポーネント集だから。概要としては安全に実行できる(ここでいう安全はブラウザが動いてる OS 上での任意コード実行ができない、という意味) Active X というか、 C/C++ でコードが書ける Java Applet というか、まぁそういう感じの。 NaCl はおおざっぱに言って、 検証可能なバイナリを出力するコンパイラツールチェイン (gcc, binutils, etc.) ユーザプログラムを検証して起動する service runtime service runtime と
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く