InfoQ ホームページ コンパイラ に関するすべてのコンテンツ
-
Googleが完全準同型暗号トランスパイラーをオープンソース化
Googleは、汎用トランスパイラーをオープンソース化した。これは、ハイレベルコードを変換でき、完全準同型暗号(FHE)で使用できる。
-
Sonatype LiftがFacebook Infer、Google ErrorProne等のコード分析ツールを統合
先頃リリースされたSonatype Liftは、開発者が開発パイプラインのさまざまなバグをできるだけ早く特定するのに役立つ25を超えるツールを含む統合コード分析プラットフォームを提供すると、Sonatypeは言います。InfoQは、詳細について、Sonatypeの製品イノベーション担当副社長であるStephen Magill氏と話をした。
-
V8は、パフォーマンスを向上させるために最適化しないコンパイラステージを導入
JavaScript V8エンジンの最新バージョンであるV8 9.1は、Sparkplugと呼ばれる新しい中間コンパイラのステージを導入している。実際のベンチマークでのパフォーマンスを5~15%向上させるとV8エンジニアのLeszek Swirskiは述べている。今後リリースされるChrome 91で利用できるようになる。
-
Microsoftが64ビットのVisual Studio 2022を発表
Microsoftは、来たるVisual 2022がついに64ビットになることを発表した。VS2022は、今後の.NET 6、C++20、ASP.NET Blazor、.NET MAUIを完全にサポートする。VS2022の最初のプレビューリリースは2021年第3四半期に予定されている。
-
C++インタプリタClingでPythonとの相互運用とJupyter Notebooksに対応
Clingは、C++を調査やRAD(Rapid Application Development)に適したものにするためにLLVM上に構築された、インタラクティブなC++インタプリタだ。先日公開された一連の記事では、研究ソフトウェアエンジニアのVassil Vassilev氏が、PythonやJupyter Notebooksとの相互互換性とハードウェアアクセラレータのサポートを実現したClingの発展について説明している。
-
.NETニュース総まとめ - 2021年5月3日の週
先週は、新しいVisual Studio CodeリリースとMicrosoftが主催する仮想イベントPureVirtual C++が特徴的であった。InfoQは、2021年5月3日の週から、この件と.NETエコシステムのいくつかの小さな出来事を調査した。
-
CXXが実現するRustとC++の安全な相互運用
CXXは安全な低レベルバインディング経由でC++コードとRustコードの相互呼び出しを可能にするソフトウェアだ。安全ではないC言語形式のシグネチャ上に外部関数インターフェースを構築する必要はない。InfoQは今回、作者のDavid Tolnay氏と話す機会を持つことができた。
-
MDsveX - Svelteの中のMarkdownの中のSvelte
mdsvex npmパッケージは最近完全に書き直され、Svelte開発者がSvelteコンポーネント内にMarkdownコンテンツを持ち、Markdown内でSvelteコンポーネントを使用できるようになった。MDX/Reactを備えたGatsbyと同様に、mdsvexを使用すると、開発者はMarkdownコンポーネントとSvelteコンポーネントを組み合わせてインタラクティブコンテンツを生成できる。
-
REPLicant、超シンプルなSvelte REPL - Peter Allen氏のSvelte Summit 2020での講演より
Peter Allen氏は先日のSvelte Summit 2020で講演し、REPL(Read-Print-Eval-Loop)プレイグラウンドのメリットについて説明した。Svelte REPLは多くの境界条件を扱う必要があるために複雑だが、コードプレイグラウンド実装の根底にある原理は単純だ。Allen氏は講演の視聴者に対して、段階的に、Svelte REPLの最も単純な実装バージョンに至るまで説明した。
-
IonicのStencilコンポーネントコンパイラの設計に関する考慮事項 -- DotJS2019でのAdam Bradley氏の講演
StencilJSの作成者でIonic Frameworkの共同作成者であるAdam Bradley氏は、dotjs2019で、フレームワークに依存しないコンポーネントを生成するコンポーネントコンパイラであるStencilに組み込まれた設計とアーキテクチャをレビューした。
-
C++20は最終版に、C++23がスターティングブロックに
元々昨年2月にリリースされる予定の、C++20は最終的な技術的承認を受けており、年内に発表される予定である。C++20には、主要な新機能の中にModules、Coroutines、およびConceptsが含まれる。
-
Google Propellerが大規模LLVMバイナリからさらなるパフォーマンスを引き出す
Google Propellerは、実行時の動作のプロファイルに基づいてLLVMバイナリを再リンクおよび最適化することにより、LLVMバイナリのパフォーマンスを向上させることができる。Googleのエンジニアによると、Propellerは、以前はLLVMによって高度に最適化されていたバイナリの主要なパフォーマンスベンチマークを2~9%向上させることができる。
-
Java-to-WebコンパイラCheerpJ 2.0によって使われるWebAssemblyはJavaアプリケーションをブラウザへ移植する
LeaningTechは最近、CheerpJの2番目の主なイテレーションをリリースした。CheerpJ 2.0は、JavaアプリケーションをHTML、WebAssembly、JavaScriptの混合に変換し、開発者がJavaアプリケーション(アプレットを含む)をブラウザで実行したり、JavaライブラリをWebアプリケーションに統合したりできるだろう。CheerpJ 2.0では、WebAssemblyを使用して実行速度を向上させている。
-
Google独自のC/C++用メモリアロケータTCMallocがオープンソースとして公開へ
GoogleのTCMallocをCおよびC++の既定のメモリアロケータの置き換えとして使用することで、大規模プログラムでの効率の向上や並列性サポートの改善が実現する、とGoogleは述べている。
-
.NET Core for WindowsでC++が使用可能に
MicrosoftはC++/CLI in .NET Core 3.1の提供計画を発表した。ターゲットとなるのはWindowsアプリケーションのみで、LinuxあるいはOSXでC++/CLIを使用することはできない。