並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 701件

新着順 人気順

cppの検索結果241 - 280 件 / 701件

  • Writing a C compiler in 500 lines of Python

    A few months ago, I set myself the challenge of writing a C compiler in 500 lines of Python1, after writing my SDF donut post. How hard could it be? The answer was, pretty hard, even when dropping quite a few features. But it was also pretty interesting, and the result is surprisingly functional and not too hard to understand! There's too much code for me to comprehensively cover in a single blog

    • Railsの高速化に貢献する新たなJITコンパイラを搭載したRuby 3.1プレビュー1が公開

      Ruby開発チームは、新たなJITコンパイラであるYJITを実験的に搭載したRuby 3.1プレビュー1を公開しました。 Ruby言語は以前から実行速度の向上を重要な改善項目として挙げており、Ruby 2.6では「MJIT」と呼ばれるJITコンパイラを搭載、昨年リリースされたRuby 3.0では目標としていたRuby 2の3倍の性能を達成しています。 参考:Ruby 3.0正式版リリース。「Ruby 2の3倍速」到達、型の記述、スレッドセーフな並列処理など新機能 一方でMJITはその機構上、Railsの大規模アプリケーションなどでの性能向上に十分な効果が発揮できていないとの評価もありました。 今回Ruby 3.1プレビューでマージされたのは、ECサイト構築サービスで知られるShopifyが開発を進めてきた「YJIT」と呼ばれるJITコンパイラです。 YJITは現在のところ20%から40%程

        Railsの高速化に貢献する新たなJITコンパイラを搭載したRuby 3.1プレビュー1が公開
      • なぜRustはメモリ安全なのかをC言語のコードと考える - Qiita

        追記: Twitterなどでご指摘等いただいているのをコメントしてますので、ぜひそちらもご覧ください! これはなに 絶賛Rust勉強中の僕が、「なんでRustはメモリ安全って言われているの?」と聞かれたので、実際にメモリ安全ではない(?)C言語のコードを並べてみて考える記事です。 C言語の場合 メモリリーク 以下のコードはメモリリークを起こす可能性があります。 #include <stdio.h> #include <stdlib.h> #define STR_BUF_SIZE 100000000 char *str_new() { return calloc(STR_BUF_SIZE, sizeof(char)); } int main() { for (int i = 0; i < 100000000; i++) { char *str = str_new(); snprintf(st

          なぜRustはメモリ安全なのかをC言語のコードと考える - Qiita
        • 大学の C++ 講義で使っているオンラインコンパイラ

          C++ Advent Calendar 2023, 9 日目の記事です。 学校で C++ を教える場合、受講者に最初から Visual Studio Code や、Visual Studio, Xcode などの統合開発環境をインストールしてもらうのは難しいことがあります。 とくにプログラミングが初めての学生、パソコンに不慣れな学生が多い場合は、なるべく環境構築に時間をかけず、スムーズに C++ プログラミングの学習に入れるよう、講義の序盤ではオンラインコンパイラの使用が選択肢として有効です。 本記事では、筆者が実際に大学の C++ 講義で使った 3 つのオンラインコンパイラを、講義での活用の観点から紹介します。 Simple C++ Editor Simple C++ Editor は、Wandbox をバックエンドとしたオンライン C++ コンパイラです。初心者がよく起こすエラーや警告

            大学の C++ 講義で使っているオンラインコンパイラ
          • SpaceX開発のロケット「Falcon 9」はLinuxとC++で宇宙へ飛び立っている

            by Official SpaceX Photos アメリカ航空宇宙局(NASA)とイーロン・マスク氏が設立した民間宇宙開発企業・SpaceXが2020年5月31日に、再利用可能なロケット「Falcon 9」を使った有人宇宙船の打ち上げに、成功しました。そんなFalcon 9のソフトウェア面について、IT系ニュースメディアのZDNetが解説しています。 From Earth to orbit with Linux and SpaceX | ZDNet https://www.zdnet.com/article/from-earth-to-orbit-with-linux-and-spacex/ ロケットや宇宙船などでは、PCやサーバーなどで使われるような最新鋭のCPUはほとんど使われていません。ロケットの開発には基本的に数年あるいは数十年という長い期間が必要となるため、開発した時は比較的新

              SpaceX開発のロケット「Falcon 9」はLinuxとC++で宇宙へ飛び立っている
            • 『Cコンパイラを作っています』

              ブログが長らく休止状態になっていたのですが,現在,nlccという完全独自のCコンパイラを開発しています. https://kozos.jp/nlcc/ nlの意味のひとつは「No Learn, No Listen」で,「何も見ず,聞かず,参考にせずに作る」です.まあ特別そうした確固たるポリシーがあるとかではないですが,そういうやりかたで作ってみたら面白い…というか独自性あるものになるかもと思って,そういうやりかたで作っています. なのでおそらく,実装や用語や考え方が独自になっている部分が多いと思います. 前段階として,nlshという独自シェル(見ためはtcsh互換)と,nllibcという独自の標準Cライブラリを開発していて,それらと合わせた形で「nlux」として配布しています. 一応,gcc(に含まれる,cc1相当)の代替となることを目指して開発しています. nlccやnlshは,nlli

              • 自作Cコンパイラ 8時間の奮闘

                2024-09-07 セキュリティキャンプ アフターイベント 2024-09-14 traP & Zli 合同LT で発表したスライドになります。

                  自作Cコンパイラ 8時間の奮闘
                • 米国家安全保障局、CやC++からメモリ安全なプログラミング言語への移行を推奨する文書を公開

                  同ガイダンスは、近年のサイバーセキュリティ脅威の多くに利用されている、ソフトウェアのメモリ安全性の悪用を防ぐことを目的としており、組織におけるソフトウェアの開発にあたっては、可能な限りメモリ安全なプログラミング言語を使用するとともに、コンパイラのオプション、ツールのオプション、OS構成といったコードの安全性を高める対策を施すことで、保護を強化することを推奨している。 メモリ安全でないプログラミング言語としては、一般的に使用されているCやC++を挙げており、これらのプログラミング言語はメモリ管理において高い自由度と柔軟性を提供する一方で、メモリ参照が安全に行われているかどうかのチェックはプログラマに大きく依存していると指摘する。 ソフトウェア解析ツールを使用すれば、ソースコード中のメモリ管理における問題の多くを検出できるほか、OSによっては不正なメモリの利用を防ぐオプションも用意されているも

                    米国家安全保障局、CやC++からメモリ安全なプログラミング言語への移行を推奨する文書を公開
                  • C++の最新動向と展望をチェック。C++の日本語リファレンスサイト「cpprefjp」メンバーの講演を、ゲームエンジン開発者がレポート&補足してみた【CEDEC2024】|ゲームメーカーズ

                    C++の最新動向と展望をチェック。C++の日本語リファレンスサイト「cpprefjp」メンバーの講演を、ゲームエンジン開発者がレポート&補足してみた【CEDEC2024】 国内最大規模のゲーム業界カンファレンス「CEDEC2024」が、2024年8月21日(水)から8月23日(金)までの日程で開催されました。1日目にはプログラミング言語「C++」の日本語解説を提供するオープンソースWebサイト「cpprefjp」のコントリビューターである鈴木 遼氏、松村 哲郎氏、安藤 弘晃氏が登壇し、「ゲーム開発者のための C++17~C++23, 近年の C++ 規格策定の動向」と題した講演が行われました。 今回は通常のCEDEC講演レポートと異なり、前提知識の補強やC++の動向の補足を「ゲームの最適化」連載を担当するrita氏に依頼。C++の最新情報が解説された講演の様子を、現役C++エンジニアの視点

                      C++の最新動向と展望をチェック。C++の日本語リファレンスサイト「cpprefjp」メンバーの講演を、ゲームエンジン開発者がレポート&補足してみた【CEDEC2024】|ゲームメーカーズ
                    • [入門] C/C++の未定義動作を10倍安全に回避するテクニック集 - Qiita

                      「C/C++は危険な言語だ」という言葉を聞いたことがありませんか。そして、その言葉を聞いて「仕方ない」と諦めてしまった経験はないでしょうか。確かにC/C++には未定義動作1という落とし穴があり、メモリ安全性の観点でRustやGoと比べると危険性が高いことは事実です。 「だったらRustを使えばいいじゃないか」という声も聞こえてきそうです。確かにRustは優れた選択肢ですが、現実はそう単純ではありません。既存の膨大なC/C++資産、組み込みシステムでの制約、チームの学習コスト、特定のハードウェアやライブラリとの互換性など、C/C++を使い続けなければならない理由は数多く存在します。 特に最近では、M5StackをはじめとするESP32ベースのIoTデバイスが急速に普及し、組み込み開発でC/C++を扱う機会が増えています。これらのデバイスではArduino環境やESP-IDFを使った開発が主流

                        [入門] C/C++の未定義動作を10倍安全に回避するテクニック集 - Qiita
                      • Microsoft、「Visual Studio for Mac」終了

                        米Microsoftは8月30日(現地時間)、2016年から提供している「Visual Studio for Mac」を終了すると発表した。最新版(17.6)のサポートは2024年8月末まで続ける。 Microsoftは「リソースの方向を転換」し、「Visual StudioとVS Code(Visual Studio Code)をクロスプラットフォーム開発向けに最適化することに重点を置く」としている。 VS Codeは、Windows、Linux、macOSに対応するクロスプラットフォームのエディタだ。Microsoftは今月初頭、Unity拡張機能のプレビュー版をリリースしている。 MicrosoftはVisual Studio for Macのユーザーに、VS Codeの利用を勧めている。あるいは、MacのVでWindowsを起動し、そこでのVisual Studio IDEというオ

                          Microsoft、「Visual Studio for Mac」終了
                        • C++入門 for if などの基本からサンプル実行までを解説 | AKKODiS(アコーディス)コンサルティング株式会社

                          C++は、C言語をもとに機能を拡張した汎用プログラミング言語です。「シープラプラ」または「シープラ」と呼ばれ、手続き型プログラミングの他にオブジェクト指向プログラミングやジェネリックプログラミング、データ抽象化などの複数のプログラミングパラダイムを持っています。 C++は1983年に誕生し、度重なる標準化によって標準規格が設定され、最新規格は実用ベースではC++17、2020年3月に技術的最終決定がされた次期バージョンはC++20となります。C言語と同様にマシン語に近い低水準言語としても扱える一方で、高度なアプリケーション開発に用いる高水準言語としても使用できるため、非常に汎用性が高い言語として設計されています。 他のC言語系同様に習得が難しいと言われているC++ですが、基本は非常にシンプルな構造をしているため、一つずつステップアップしていけば決して難しい言語ではありません。ここではC++

                            C++入門 for if などの基本からサンプル実行までを解説 | AKKODiS(アコーディス)コンサルティング株式会社
                          • C++創始者Stroustrup氏、メモリ安全性向上へ緊急行動を呼びかけ - イノベトピア

                            2025年3月2日、C++言語の創始者Bjarne Stroustrup氏が、C++言語を「深刻な攻撃」から守るため、C++コミュニティに支援を呼びかけた。 背景には、過去数年間でサイバーセキュリティ機関や技術専門家がC/C++のメモリ安全性の欠点を指摘し、Rust、Go、C#などの代替言語の使用を推奨してきたことがある。 2024年10月、米国サイバーセキュリティ・インフラストラクチャセキュリティ庁(CISA)は、2026年1月1日までにメモリ安全でない言語を使用している製品のメーカーに対し、メモリ安全性のロードマップ作成か、メモリ安全な言語への移行を求めるガイダンスを発表した。 Stroustrup氏は2025年2月7日に「C++標準委員会(WG21)へのノート」を発表し、Profilesと呼ばれるメモリ安全性フレームワークを提案した。 一方、TrapCプロジェクトを主導するRobin

                            • jank is C++

                              If you've wondered how much a solo dev can build for seamless C++ interop on a quarter, you're about to find out. In April, jank was unable to reach into C++ at all. Toward the end of this post, I'll show some real world examples of what works today. Before that, though, I want to say thank you for the sponsorship this quarter, not only by all of my individual Github sponsors, but also by Clojuris

                                jank is C++
                              • Julia, Python, F#, C#, C++で単位付き数値を扱う - Qiita

                                技術者なら「プログラミングで単位の扱いの間違いはコンパイルエラーにして欲しい」と思った事があるでしょう。 mm と inch でごっちゃになったとか、次元(ディメンジョン)が不合理な演算をしたとか、そういう頭の痛いバグに悩まされることありますよね。 言語によっては実行時またコンパイル時に単位チェックできるパッケージもあります。 今回は、Julia, Python, F#, C#, C++ について見てみましょう。 Julia Unitful Unitfulパッケージのインストール juliaでREPLに入り]でパッケージ管理に入る。

                                  Julia, Python, F#, C#, C++で単位付き数値を扱う - Qiita
                                • 【C言語】ハァ… 困ったなァ 「未定義動作」にもう疲れちゃって 全然動けなくてェ… - Qiita

                                  Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに どうも、y-tetsuです。 以前、こんな記事でお世話になりました。 お久しぶりです。あい変わらずC言語の学びなおしにいそしんでおります! いやー、C言語ってムズカシイですよね。最初は文法がとっつきづらかったり、ポインタでつまずいたり、慣れてきたら慣れてきたで色んな災いが出てきたり…で、結果「もう疲れちゃって 全然動けなくてェ…」っておもわずヘコたれそうになります…。 最近、筆者がC言語を学びなおしてみて新しく知った事としまして、「未定義動作」というものがありました。なんだこれはァ!?という事で少しずつ調べる中で、これがまァー

                                    【C言語】ハァ… 困ったなァ 「未定義動作」にもう疲れちゃって 全然動けなくてェ… - Qiita
                                  • 「C++」存続の危機? 生みの親が安全なプログラミング言語への転換を模索

                                    英国のITニュースメディア「The Register」は2025年3月2日(現地時間、以下同)、プログラミング言語C++の生みの親であるビャーネ・ストロヴストルップ氏が、C++コミュニティーに対し、同言語を存続させるための協力を呼びかけたと報じた。 近年、C++はメモリ安全性の問題を理由にサイバーセキュリティ機関や技術専門家から厳しい批判を受けており、その存続が脅かされている。 このままでは「C++」存続の危機? 生みの親が提唱する進化アプローチ CやC++は手動によるメモリ管理が基本とされており、そのためバッファーオーバーフローなどの安全性に関するバグが発生しやすいという問題がある。こうした脆弱(ぜいじゃく)性は重大なセキュリティリスクと見なされており、近年では政府や企業がCやC++の使用を控え、RustやGo、C#、Javaなどのメモリ安全性の高い言語への移行を促進している。 この状況

                                      「C++」存続の危機? 生みの親が安全なプログラミング言語への転換を模索
                                    • ローカルで各種AIモデルを実行できる無料ソフト「llama.cpp」がマルチモーダル入力をサポートし画像の説明などが可能に

                                      AIモデルをローカルで実行できるオープンソースソフトウェア「llama.cpp」が画像の入力に対応しました。画像とテキストを同時に入力して「この画像には何が写っている?」といった質問に回答させられます。 server : vision support via libmtmd by ngxson · Pull Request #12898 · ggml-org/llama.cpp · GitHub https://github.com/ggml-org/llama.cpp/pull/12898 llama.cpp/docs/multimodal.md at master · ggml-org/llama.cpp · GitHub https://github.com/ggml-org/llama.cpp/blob/master/docs/multimodal.md Trying out ll

                                        ローカルで各種AIモデルを実行できる無料ソフト「llama.cpp」がマルチモーダル入力をサポートし画像の説明などが可能に
                                      • Googleがプログラミング言語「Rust」に100万米ドルを助成、「C++」との併存・置き換えを図る/メモリ安全性にかかわるセキュリティ問題を減らしつつ、生産性を向上

                                          Googleがプログラミング言語「Rust」に100万米ドルを助成、「C++」との併存・置き換えを図る/メモリ安全性にかかわるセキュリティ問題を減らしつつ、生産性を向上
                                        • 書籍が開発者としての資質を強化する。C++エキスパート・高橋晶が選ぶ、人生に影響を与えた5冊

                                          書籍が開発者としての資質を強化する。C++エキスパート・高橋晶が選ぶ、人生に影響を与えた5冊 2024年8月8日 C++ライブラリアン 高橋 晶 C++日本語リファレンスサイトcpprefjpを運営し、C++の最新情報を日本語で発信している。株式会社Preferred Networksに所属し、スーパーコンピュータのソフトウェア開発に携わっている。 著書として、『C++テンプレートテクニック』(SBクリエイティブ)、『C++ポケットリファレンス』(技術評論社)、『プログラミングの魔導書』(ロングゲート)。 X: @cpp_akira GitHub: faithandbrave 1. 『スイッチ!「変われない」を変える方法』Chip Heath 著、 Dan Heath 著 千葉敏生 翻訳 2. 『習慣の力』Charles Duhigg 著、渡会 圭子 翻訳 3. 『これからの「正義」の話を

                                            書籍が開発者としての資質を強化する。C++エキスパート・高橋晶が選ぶ、人生に影響を与えた5冊
                                          • 「ソフトウェアはメモリ安全でなければならない」との声明を発表、米ホワイトハウス

                                            米ホワイトハウス国家サイバー局長室(The White House Office of the National Cyber Director:ONCD)は、2024年2月26日(米国時間)、サイバー空間における攻撃対象領域(アタックサーフェス)を積極的に削減するよう技術コミュニティーに呼びかける報告書を発表した。 ONCDは、IT企業がメモリ安全なプログラミング言語を採用することで、あらゆる種類の脆弱(ぜいじゃく)性がデジタルエコシステムに侵入するのを防ぐことができると述べている。ONCDはまた、サイバーセキュリティの品質を測定するより優れた診断の開発を可能にするために、ソフトウェアの測定可能性の問題に取り組むことを奨励している。 報告書ではメモリ安全性について「メモリ安全性が保たれていないと、意図しない方法でメモリへのアクセス、書き込み、割り当て、または割り当て解除が行われる可能性があ

                                              「ソフトウェアはメモリ安全でなければならない」との声明を発表、米ホワイトハウス
                                            • CでもC++でもなく「Rust」を使いたくなる“なるほどの理由”

                                              関連キーワード アプリケーション開発 | プログラマー | プログラミング 独立性の高い小規模サービス「マイクロサービス」の開発において、プログラミング言語「Rust」は一定の地位を築いている。Rustにはどのような強みがあるのか。 CやC++じゃなく「Rust」を選ぶ理由はこれだ 併せて読みたいお薦め記事 連載:GoとRustを比較する 第1回:CでもC++でもなくプログラミング言語「Go」を使いたくなる“あの良さ”とは? 第2回:「Go」に期待し過ぎたプログラマーが落胆する“完璧じゃない部分” GoとRustの魅力 プログラミング言語「Go」の魅力とは? 「Goで“脱COBOL”」の成功者が語る 「Rust」はなぜクラウドネイティブ開発者の間で大人気なのか? 「C」や「C++」といったプログラミング言語では、開発者は手動でメモリを管理する必要があるが、Rustはその必要はない。これはプ

                                                CでもC++でもなく「Rust」を使いたくなる“なるほどの理由”
                                              • いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか

                                                kernel/vm探検隊 17回 @nullpo_head

                                                  いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか
                                                • 「C++」が人気1位に浮上、Java離れ加速の理由…プログラミング言語に異変

                                                  プログラミング言語「C++」 人工知能チャットボット「Chat GPT」などの高性能な機能が話題を呼び、さらなる技術革新が予想されるIT業界。アプリやウェブサービス、システム開発の基盤となるのがプログラミング言語であるが、今、その人気に変化が起きているという。ソフトウェアの品質管理の評価を発表しているオランダの「TIOBE Software」によれば、2022年に最も人気が上昇したプログラミング言語第1位は「C++」。人工知能(AI)開発、ロボット制御技術によく使用される言語であり、有名どころでいえば「Google Chrome」の主言語でもある。 同ランキングは第2位「C」、第3位「Python」と続き、第4位にランクインしたのが「Java」で、Javaは21年の第3位から転落してしまっているのだ。なぜプログラミング言語の代表格ともいえるJavaに代わり、C++の人気が伸びているのか。I

                                                    「C++」が人気1位に浮上、Java離れ加速の理由…プログラミング言語に異変
                                                  • かつての当たり前が通用しない? Modern C++ではやらないこと

                                                    21世紀に入ってまったく別物と言えるプログラミング言語に進化したC++。本連載では、Modern C++と称されるC++について、Modern C++らしい言語仕様をピックアップし紹介していきます。第1回は、かつてのC++の当たり前が今では通用しないことを紹介します。たとえばインスタンスの生成にnewを、破棄にdeleteをというのが常道でしたが、もはやそれらは非推奨なのです。導入として、このようなかつては常識だったことが非推奨になっているという状況を、いくつかのトピックスを通じてお話しします。 はじめに C言語から派生したオブジェクト指向プログラミング言語であるC++は、21世紀に入ってまったく別物とも言えるプログラミング言語に成長していきました。それは、Modern C++と称されています。1990年代にC++を触っていたプログラマが現在の仕様を知れば、隔世感に苛まれるのではないでしょ

                                                      かつての当たり前が通用しない? Modern C++ではやらないこと
                                                    • セルフホストできるCコンパイラを作ってみた - Qiita

                                                      低レイヤを知りたい人のためのCコンパイラ作成入門 (以下 コンパイラブック) を一通り読んでCコンパイラを作ってみました。 この本はまだ完全でなく(2020/09/01現在)、例えば構造体の実装の説明などは文章としては存在せず、この本の参照実装である chibicc を写経がてら作っていきました。 (実際には今現在進行中の @rui さんの Cコンパイラ作成のオンラインコースを始めます の参加者のみに現状は公開されているchibiccよりもうちょっと改善されたcコンパイラ実装が参照実装だそうです) もともと構文解析とかはちょっと興味があったりして、qiitaでも [ruby] Parsletで構文解析する[その1] [ruby] Parsletで正規表現をパースしてvm型のエンジンを実装してみる[その1] パース〜ASTまで みたいな記事は書いていたんですが、あんまりややこしいパーサーは書

                                                        セルフホストできるCコンパイラを作ってみた - Qiita
                                                      • 累計3.3億DL突破「ibisPaint」GPUベース、C++ワンソースを選んだ理由は?成功を支えた技術選定の裏側

                                                        株式会社アイビス 代表取締役社長 神谷 栄治 ソフトウェア技術者・経営者。2000年に「株式会社アイビス」を創業。フィーチャーフォン向けアプリの開発を経て、2011年にスマホ向けペイントアプリ「ibisPaint」をリリース。2023年現在も開発組織をリードしている 株式会社アイビスが提供する「ibisPaint(アイビスペイント)」は、高度な機能と使いやすさ、優れた安定性を兼ね備えたペイントアプリとして世界中のユーザーに愛されています。 リリースは2011年。当時からGPUベースで、開発言語にはC++を採用し、UIパーツやライブラリもすべて自社で制作しているという。ibisPaintの企画・設計・開発を一手に担った創業者の神谷栄治氏は「この技術選定が、現在のibisPaintの発展につながった」と語ります。 2011年当時のスマホアプリ開発において異例の技術選定の意図は? 全世界での累計

                                                          累計3.3億DL突破「ibisPaint」GPUベース、C++ワンソースを選んだ理由は?成功を支えた技術選定の裏側
                                                        • 【海外記事紹介】新たなC言語拡張コンパイラ「TrapC」が発表 — ガベージコレクトなしでメモリ安全なC/C++を目指す

                                                          3月1日、海外のテクノロジーメディアInfoWorldが「TrapC proposal to fix C/C++ memory safety」と題した記事を公開した。 3月1日、海外のテクノロジーメディアInfoWorldが「TrapC proposal to fix C/C++ memory safety」と題した記事を公開した。 この記事では、TrapCが提案するC/C++のメモリ安全性向上に関する取り組みについて詳しく紹介されている。以下に、その内容を紹介する。 TrapCとは、C言語の拡張コンパイラであり、最も重要な特徴はメモリ安全であることだ。TrapCのメモリ管理は自動化されており、メモリリークが発生しない設計だとされる。ポインタはガーベジコレクションではなく、オブジェクトのライフタイムを管理する仕組みを採用している。 言語としては、C言語をベースとしたいくつかの拡張が行われて

                                                            【海外記事紹介】新たなC言語拡張コンパイラ「TrapC」が発表 — ガベージコレクトなしでメモリ安全なC/C++を目指す
                                                          • GitHub - rui314/mold: Mold: A Modern Linker 🦠

                                                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                              GitHub - rui314/mold: Mold: A Modern Linker 🦠
                                                            • C++erですがCOMに翻弄されています: 再入との戦い - Qiita

                                                              C++ Advent Calender この記事はC++のカレンダー | Advent Calendar 2023 - Qiita の21日目の記事です。 20日目: Try to make a try ! by @wx257osn2 22日目: C++ コンパイル時「出力」で画像ファイル生成 #C++ - Qiita by @Raclamusi はじめに 2021年に新卒で今の会社に入社して以来、ずっととある一つの製品の開発部門に所属していて、その中のWindowsチームというところにいます。 WindowsチームなのにiOSの要件が来たり、サーバーEoLの要件が来たりとなんだか特殊部隊感があるのですが、きっと気の所為です。 さて、ここまで入社以来ずっと本格的な理解から逃げ続けてきた存在があります。それがCOMです。 ところがついにこの秋から冬にかけての要件ではVisual Studio

                                                                C++erですがCOMに翻弄されています: 再入との戦い - Qiita
                                                              • Rustで作る!自作言語・コンパイラ入門:学園生活研究部

                                                                Rustで自作言語とコンパイラを作るために必要な知識と実装手法を初心者向けに簡単に説明することを試みました。パーサコンビネータやLLVM関連のライブラリを利用し、Rustで自作言語やコンパイラ作りをやっていきます。

                                                                  Rustで作る!自作言語・コンパイラ入門:学園生活研究部
                                                                • 10月新刊情報『ハンズオンWebAssembly』

                                                                  『ハンズオンWebAssembly ―EmscriptenとC++を使って学ぶWebAssemblyアプリケーションの開発方法』 Gerard Gallant 著、北原 憲、洲崎 俊、西谷 完太、磯野 亘平、米内 貴志 訳 2022年10月12日発売予定 512ページ(予定) ISBN978-4-8144-0010-2 定価4,180円(税込) WebAssemblyはWebブラウザ上で効率的かつ安全にコードを実行するために開発された技術です。様々なプラットフォームでの実行や、C++やRustなどのプログラミング言語で開発が可能です。本書はWebAssemblyの技術的な原理、動作、どのようなことが可能なのかを基礎からしっかり学ぶことができ、かつ実践的な開発テクニックにまで踏み込んだ開発者向けの解説書です。プログラミング言語は主にC++を取り扱います。簡単な例から解説をはじめ、動的リンクや

                                                                    10月新刊情報『ハンズオンWebAssembly』
                                                                  • GPU向けコンパイラの最適化の紹介と論文のサーベイ - Jicchoの箱

                                                                    この記事では,私の研究分野であるGPU向けコンパイラの最適化の紹介と論文のサーベイを行う. 以下,随時更新. 分岐発散 (Branch Divergence) 分岐発散とは Independent Thread Scheduling 分岐発散に対する最適化 Software based approaches Hardware based approaches その他 サーベイ論文 カーネル融合 (Kernel Fusion) Kernel Fusionとは 垂直融合(vertical fusion) 水平融合(horizontal fusion) Inner Thread Block Inter Thread Block カーネル融合に関する論文 その他のGPU関連の論文 Dimensionally redundant instruction elimination Others 分岐発散

                                                                      GPU向けコンパイラの最適化の紹介と論文のサーベイ - Jicchoの箱
                                                                    • 月単価の高いプログラミング言語ランキング 2位は「Ruby」で87万円、1位は? レバテック調べ

                                                                      最も月単価の高いプログラミング言語は何か。IT人材の紹介事業を行うレバテック(東京都渋谷区)が2月13日に発表したランキングによると、1位は「Go」(平均月単価88万円/最高単価130万円)だった。2位には「Ruby」(平均月単価87万円/最高単価150万円)、3位には「Swift」(平均月単価86万円/最高単価200万円)が入った。 Goは米Googleが開発したプログラミング言語。レバテックは「動作が軽く、扱えるデータ量も多いためブロックチェーンや広告、ゲームなどスピードが求められる分野のサービス開発でよく使われている」と解説。スピーディーな開発を行いたい企業を中心に導入が進み、今後も需要は伸びていくのではないかと予想している。 2位のRubyは、短期間で開発ができるため、スタートアップ企業などのWebサービスを迅速に立ち上げたい企業でよく使われているという。案件数は安定して多いが、R

                                                                        月単価の高いプログラミング言語ランキング 2位は「Ruby」で87万円、1位は? レバテック調べ
                                                                      • C++でジョブシステムを作ってみる(1)

                                                                        ジョブシステム (Job System) ゲームエンジンの勉強をしているとジョブシステムの話がよく出てくるので、実際にC++20で実装してみました。マルチスレッドに慣れていないため、正しいアプローチである確信はありません。重要なミスがあったら教えていただけると助かります。 コードは標準ライブラリにある機能は素直に使い、シンプルな実装を目指します。また、この記事の全てのコードはパブリックドメインとします。 これから、3つのステップでジョブシステムを実装していきます。 ジョブを並列実行する機能 ジョブ同士に依存関係を設定する機能 大きなジョブを分割して並列化する機能 この記事ではステップ1の最も基本的なジョブシステムを実装することを目標にします。次回 はステップ2とステップ3を実装します。 実装に入る前に雰囲気を伝えるため、各ステップにおけるインターフェイスを示します。 // スレッド数4とし

                                                                          C++でジョブシステムを作ってみる(1)
                                                                        • The two factions of C++

                                                                          About Archive

                                                                            The two factions of C++
                                                                          • https://natalie-lang.org/

                                                                            • RISC-VでC言語のポインターを理解する! ポインターの動作と処理を詳細に解説した書籍が発売/『RISC-Vから学ぶC言語 ポインタ理解のためのアセンブリ入門』【Book Watch/ニュース】

                                                                                RISC-VでC言語のポインターを理解する! ポインターの動作と処理を詳細に解説した書籍が発売/『RISC-Vから学ぶC言語 ポインタ理解のためのアセンブリ入門』【Book Watch/ニュース】
                                                                              • Bugs in Hello World

                                                                                Posted on March 08, 2022 Hello World might be the most frequently written computer program. For decades, it's been the first program many people write, when getting started in a new programming language. Surely, this humble starting-point program should be bug free, right? After all, hello world programs only do one thing. How could there be a bug? Hello world in C There are a lot of different way

                                                                                • Androidの開発へ「Rust」を導入、なぜなのか

                                                                                  2021年4月6日(米国時間)、Googleは公式ブログでAndroidオープンソースプロジェクト(AOSP)がモバイルデバイス向けオープンソースOS「Android」の開発において、オープンソースのシステムプログラミング言語「Rust」の導入を進めていることを明らかにした。Googleは2021年2月に設立された独立非営利団体「Rust Foundation」にも加盟している。 Androidはこれまで、「C」や「C++」といったシステムプログラミング言語を用いて開発されてきた。Android開発にRustを導入した目的は、メモリ安全性のバグを予防することにある。 AOSPはこれまでもメモリ安全性のバグの検出や修正、軽減に注力してきたが、さらに予防を強化しようとしている。メモリ安全性を特徴とした言語の採用が、最も費用対効果の高い予防方法だとの認識から、Rustの導入に至った。 Andro

                                                                                    Androidの開発へ「Rust」を導入、なぜなのか

                                                                                  新着記事