並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 57件

新着順 人気順

c std array moveの検索結果1 - 40 件 / 57件

  • とほほのRust入門 - とほほのWWW入門

    目次 Rustとは インストール Hello world Cargoプロジェクト キーワード コメント(//) 値 変数・定数(let, mut, const) 型 基本の型(bool, i16, char, str...) 型変換(as) 構造体(struct) 共用体(union) 列挙型(enum) タプル(tup) 配列(array) ベクタ(vec) ハッシュマップ(HashMap) 文字列(&str, String) 演算子(+ - ...) ヒープ領域(Box) スライス(&var[n..m]) 関数(fn) クロージャー(|...|{...}) マクロ(macro_rules!) 制御構文 条件分岐(if) 繰り返し(while) 繰り返し(for) ループ(loop) ループ制御(break, continue) マッチ(match) インプリメンテーション(impl)

    • Rust concepts I wish I learned earlier

      This past month, I have been enthralled by the Rust programming language given its unique edge for writing memory-safe, modern programs. Over the years, several languages have emerged as the most preferred by engineers to write resilient, backend software. The tides have shifted from Java/C++ into Go and Rust, which combine decades of programming language theory to build tools that are effective i

        Rust concepts I wish I learned earlier
      • 2023年のコンパイル時レイトレーシング - in neuro

        これは qiita.com の12/16の記事です。やばいもう16日が終わってしまう! はじめに 太古の昔、あるC++プログラマ*1がtemplateの再帰と特殊化を使ってコンパイル時に計算ができることを「発見」*2*3したその日から、C++とコンパイル時計算は分かちがたく結びついています。 言語機能を本来意図されていなかった方法で活用する曲芸的な技巧だったコンパイル時計算は、その強力さを買われコミュニティを席巻し、C++11での constexpr の導入によりある意味で公式に認められたものとなりました。 導入当初は return 文一つだけしか持てなかった constexpr 関数は、それでも三項演算子による条件分岐や再帰によってコンパイル時計算を大いに盛り上げました。 そしてC++14で条件分岐、ループ、変数の書き換えが、C++17ではラムダが、C++20では仮想関数と動的メモリ確保

          2023年のコンパイル時レイトレーシング - in neuro
        • Kubernetesクラスタの可観測性の隙間を埋めるeBPF - LIFULL Creators Blog

          KEELチームの相原です。 今回はeBPFを利用してKubernetesクラスタの可観測性の隙間を埋めている話です。 前回のエントリではLLMにうつつを抜かしていたので本業(?)の話をしようと思います。 www.lifull.blog LIFULLの可観測性の現在地 eBPFとは 可観測性の隙間 NAT Loopback eBPFを実行するには BPF CO-RE libbpf-rsを利用したNAT Loopbackの検知 1. (ユーザ空間) コマンドライン引数として受け取ったDNSをTTLごとに名前解決してIPアドレスを取得する 2. (ユーザ空間) IPアドレスに変化がある度にカーネル空間で動くBPFプログラムにそのIPアドレスのリストを渡す 3. (カーネル空間) Kprobesで tcp_v4_connect/tcp_v6_connect にフックを仕込む 4. (カーネル空間)

            Kubernetesクラスタの可観測性の隙間を埋めるeBPF - LIFULL Creators Blog
          • Rust std fs slower than Python!? No, it's hardware!

            I'm about to share a lengthy tale that begins with Apache OpenDAL™ op.read() and concludes with an unexpected twist. This journey was quite enlightening for me, and I hope it will be for you too. I'll do my best to recreate the experience, complete with the lessons I've learned along the way. Let's dive in! All the code snippets and scripts are available in Xuanwo/when-i-find-rust-is-slow TL;DR Ju

            • Changing std::sort at Google’s Scale and Beyond

              TL;DR; We are changing std::sort in LLVM’s libcxx. That’s a long story of what it took us to get there and all possible consequences, bugs you might encounter with examples from open source. We provide some benchmarks, perspective, why we did this in the first place and what it cost us with exciting ideas from Hyrum’s Law to reinforcement learning. All changes went into open source and thus I can

                Changing std::sort at Google’s Scale and Beyond
              • Beautiful Branchless Binary Search

                I read a blog post by Alex Muscar, “Beautiful Binary Search in D“. It describes a binary search called “Shar’s algorithm”. I’d never heard of it and it’s impossible to google, but looking at the algorithm I couldn’t help but think “this is branchless.” And who knew that there could be a branchless binary search? So I did the work to translate it into a algorithm for C++ iterators, no longer requir

                  Beautiful Branchless Binary Search
                • Node.js — Node.js v25.0.0 (Current)

                  2025-10-15, Version 25.0.0 (Current), @RafaelGSS Node.js 25 is here! We have upgraded V8 to 14.1, bringing major JSON.stringify performance improvements, built-in Uint8Array base64/hex conversion, and ongoing WebAssembly and JIT pipeline optimizations. This release doubles down on secure-by-default apps and web-standard APIs: the permission model gains --allow-net, Web Storage is enabled by defaul

                    Node.js — Node.js v25.0.0 (Current)
                  • Node.js — Node.js 24.0.0 (Current)

                    2025-05-06, Version 24.0.0 (Current), @RafaelGSS and @juanarbol We’re excited to announce the release of Node.js 24! This release brings several significant updates, including the upgrade of the V8 JavaScript engine to version 13.6 and npm to version 11. Starting with Node.js 24, support for MSVC has been removed, and ClangCL is now required to compile Node.js on Windows. The AsyncLocalStorage API

                      Node.js — Node.js 24.0.0 (Current)
                    • The life and times of an Abstract Syntax Tree

                      You’ve reached computer programming nirvana. Your journey has led you down many paths, including believing that God wrote the universe in LISP, but now the truth is clear in your mind: every problem can be solved by writing one more compiler. It’s true. Even our soon-to-be artificially intelligent overlords are nothing but compilers, just as the legends foretold. That smart contract you’ve been wr

                        The life and times of an Abstract Syntax Tree
                      • 0.8.0 Release Notes ⚡ The Zig Programming Language

                        Tier 4 Support § Support for these targets is entirely experimental. If this target is provided by LLVM, LLVM may have the target as an experimental target, which means that you need to use Zig-provided binaries for the target to be available, or build LLVM from source with special configure flags. zig targets will display the target if it is available. This target may be considered deprecated by

                        • Rustacean のための F# 入門

                          また、 F# の decimal 型は Rust には標準で存在しませんが、 5m という書き方をします。 数字の間に _ を入れて読みやすくすることができるのも同様です。 let num = 8_000_000; その他の型について ... F# の char は Rust の char に似ていますが、 前者が UTF-16 なのに対し、 Rust の char は UTF-32 で常に 4bytes です。これは、 Rust とは違い、 char の配列がほぼそのまま string として扱えることを示しています。 Rust の unit と F# の unit は両方とも () で表され、役割も同じです。 文字列型に関しては Rust には色々あるので、簡単な比較はできませんが、 string は immutable な char の配列で、 mutable に扱いたい場合は St

                            Rustacean のための F# 入門
                          • sdadams.org

                            The problem: data corruption I decided it was finally time to build a file server to centralize my files and guard them against bit-rot. Although I would have preferred to use OpenBSD due to its straightforward configuration and sane defaults, I was surprised to find that none of the typical NAS filesystems were supported. In particular I would need three features in such a filesystem. Firstly I w

                            • 0.10.0 Release Notes ⚡ The Zig Programming Language

                              Tier 4 Support § Support for these targets is entirely experimental. If this target is provided by LLVM, LLVM may have the target as an experimental target, which means that you need to use Zig-provided binaries for the target to be available, or build LLVM from source with special configure flags. zig targets will display the target if it is available. This target may be considered deprecated by

                              • Cloudflare functions with Scala.js

                                Indoor VivantsAnton Sviridov. I love reinventing the wheel and I usually use Scala for that. TL;DR We are deploying an app to Cloudflare using Scala.js We are using ScalablyTyped We are using Scala 3 heavily Code on Github Deployed app Cloudflare API bindings Welcome to the "Put ma Scala on yo cloud" series I want to say that I'm kicking off a blog series, but even I don't believe that. If I did,

                                • How To Make a Fast Dynamic Language Interpreter

                                  Original Zef Interpreter The original Zef interpreter was written with almost no regard for performance. Only two performance-aware choices were made: The value representation is a 64-bit tagged value that may hold a double, a 32-bit integer, or a Object*. Doubles are represented by offsetting them by 0x1000000000000 (a technique I learned from JavaScriptCore; the literature has taken to calling t

                                  • strongly-typed-thoughts.net

                                    Zig; what I think after months of using it What I like Arbitrary sized-integers and packed structs Generic types are just functions at the type level Error Union Types C interop is probably the best The build system is nice What I like less Error handling Shadowing is forbidden Compile-time duck typing No typeclasses / traits comptime is probably not as interesting as it looks No encapsulation Mem

                                    • Making a Chess Engine in Zig

                                      I had the honor of speaking at Systems Distributed at the end of June. Since it was hosted by TigerBeetle who is one of the largest zig users, a lot of the zig community was there. After talking to some of them, Zig seemed more interesting for me to try out. Around the same time my youtube algorithm got me hooked on chess content. I’m not a good chess player by any means, but it started giving me

                                      • Building the Rust compiler with GCC

                                        Bootstrapping Rust with GCC If you know one thing about me, it is that I love working on the Rust compiler. Some people kayak, travel or play guitar - and I stare at assembly, trying to figure out what I broke. This summer, I am taking on quite a large task: bootstrapping the Rust compiler using `cg_gcc` What does that mean? "bootstrapping" is simply a name given to the Rust compiler build process

                                        • Async/Await | Writing an OS in Rust

                                          この記事は翻訳されたものです: この記事はAsync/Awaitをコミュニティの手により翻訳したものです。そのため、翻訳が完全・最新でなかったり、原文にない誤りを含んでいる可能性があります。問題があればこのissue上で報告してください! 翻訳者: @kahirokunn, @garasubo, @sozysozbot 及び @swnakamura. With contributions from @asami-kawasaki 及び @Foo-x. この記事では、Rustの協調的マルチタスクとasync/await機能について説明します。Rustのasync/await機能については、Future trait の設計、ステートマシンの変換、 pinning などを含めて詳しく説明します。そして、非同期キーボードタスクと基本的なexecutorを作成することで、カーネルにasync/awa

                                          • V Language Review (2022)

                                            V is a programming language promising to be “Simple, fast, safe, compiled. For developing maintainable software.” V has a controversial past but what is the state of V in 2022? Is V worth checking out? In this post, we’ll take a look at V as it exists in May 2022. TLDR Read the summary Rules of engagement I’ll be using the current version of V built from git which is 50ab2cfd1ae02d4f4280f38c60b8db

                                            • C++のコピー・ムーブ・参照・右辺値参照を私なりにまとめてみました

                                              ※書きかけです、少しずつ追記・修正します。 C++のデータ型は値のセマンティクスらしいです。 つまり 変数 = 変数をすると、C++では中の値もすべてコピーされる...というのがデフォルトの動作でありC++の各種クラスやデータ型(st::stringやstd::vector、std::array)も標準でそうなるようになっているらしいです。このような動作や処理 のことを セマンティクス と言い、とりわけコピーされる動作を ○ コピーセマンティクス (値のセマンティクス) と言います。 PCで言うと、ファイルやフォルダのコピーでしょうか? 一方、他の言語(例えばPythonなど)では、デフォルトでは値そのものはコピーされずに、値への参照のみコピーされる ことが多いです。 これを ○ 参照のセマンティクス と言います。 イメージ的にはファイルやフォルダへのショートカットやシンボリックリンクの作

                                                C++のコピー・ムーブ・参照・右辺値参照を私なりにまとめてみました
                                              • ROFL with a LOL: rewriting an NGINX module in Rust

                                                ROFL with a LOL: rewriting an NGINX module in Rust2023-02-24 At Cloudflare, engineers spend a great deal of time refactoring or rewriting existing functionality. When your company doubles the amount of traffic it handles every year, what was once an elegant solution to a problem can quickly become outdated as the engineering constraints change. Not only that, but when you're averaging 40 million r

                                                  ROFL with a LOL: rewriting an NGINX module in Rust
                                                • V8 Torque user manual · V8

                                                  V8 Torque is a language that allows developers contributing to the V8 project to express changes in the VM by focusing on the intent of their changes to the VM, rather than preoccupying themselves with unrelated implementation details. The language was designed to be simple enough to make it easy to directly translate the ECMAScript specification into an implementation in V8, but powerful enough t

                                                  • Trivia About Rust Types: An (Authorized) Transcription of Jon Gjengset's Twitter Thread

                                                    Preface (by Jimmy Hartzell) I am a huge fan of Jon Gjengset’s Rust for Rustaceans, an excellent book to bridge the gap between beginner Rust programming skills and becoming a fully-functional member of the Rust community. He’s famous for his YouTube channel as well; I’ve heard good things about it (watching video instruction isn’t really my thing personally). I have also greatly enjoyed his Twitte

                                                    • Wordlexpr: Wordle Compilation in C++20 - VittorOmeo

                                                      Not participating in the hype around Wordle seemed wrong, and what better way to do it than to create it cleanly at compile time in C++20? Introducing Wordlexpr! Let’s figure out how this magic works! Overview Wordlexpr is executed entirely at compile time – no executable is created, and the game itself is played through compiler errors. This requires three key tasks: Outputting random text to com

                                                        Wordlexpr: Wordle Compilation in C++20 - VittorOmeo
                                                      • Node.js — Node.js v22.18.0 (LTS)

                                                        2025-07-31, Version 22.18.0 'Jod' (LTS), @aduh95 Notable Changes Type stripping is enabled by default Node.js will be able to execute TypeScript files without additional configuration: $ echo 'const foo: string = "World"; console.log(`Hello ${foo}!`);' > file.ts $ node file.ts Hello World! There are some limitations in the supported syntax documented at https://nodejs.org/api/typescript.html#type-

                                                          Node.js — Node.js v22.18.0 (LTS)
                                                        • Sayonara, C++, and hello to Rust!

                                                          This past May, I started a new job working in Rust. I was somewhat skeptical of Rust for a while, but it turns out, it really is all it’s cracked up to be. As a long-time C++ programmer, and C++ instructor, I am convinced that Rust is better than C++ in all of C++’s application space, that for any new programming project where C++ would make sense as the programming language, Rust would make more

                                                          • 21st Century C++ – Communications of the ACM

                                                            It is now 45+ years since C++ was first conceived. As planned, it evolved to meet challenges, but many developers use C++ as if it was still the previous millennium. This is suboptimal from the perspective of ease of expressing ideas, performance, reliability, and maintainability. Here, I present the key concepts on which performant, type safe, and flexible C++ software can be built: resource mana

                                                            • [C++]WG21月次提案文書を眺める(2022年05月) - 地面を見下ろす少年の足蹴にされる私

                                                              文書の一覧 JTC1/SC22/WG21 - Papers 2022 mailing2022-05 全部で36本あります。 N4912 2022-11 Kona hybrid meeting information N4913 PL22.16/WG21 agenda: 25 July 2022, Virtual Meeting P0543R1 Saturation arithmetic P0792R9 function_ref: a non-owning reference to a Callable P0901R9 Size feedback in operator new P1021R6 Filling holes in Class Template Argument Deduction P1255R7 A view of 0 or 1 elements: views::maybe P

                                                                [C++]WG21月次提案文書を眺める(2022年05月) - 地面を見下ろす少年の足蹴にされる私
                                                              • https://cheats.rs/rust_cheat_sheet.pdf

                                                                Rust Language Cheat Sheet 26. August 2021 Contains clickable links to The Book , Rust by Example , Std Docs , Nomicon , Reference . Data Structures Data types and memory locations defined via keywords. Example Explanation struct S {} Define a struct with named fields. struct S { x: T } Define struct with named field x of type T. struct S ​(T); Define "tupled" struct with numbered field .0 of type

                                                                • Node.js

                                                                  Notable changes Add support for externally shared js builtins By default Node.js is built so that all dependencies are bundled into the Node.js binary itself. Some Node.js distributions prefer to manage dependencies externally. There are existing build options that allow dependencies with native code to be externalized. This commit adds additional options so that dependencies with JavaScript code

                                                                    Node.js
                                                                  • bytecode interpreters for tiny computers ⁑ Dercuano

                                                                    Introduction: Density Is King (With a Tiny VM) I've previously come to the conclusion that there's little reason for using bytecode in the modern world, except in order to get more compact code, for which it can be very effective. So, what kind of a bytecode engine will give you more compact code? Suppose I want a bytecode interpreter for a very small programming environment, specifically to minim

                                                                    • Safer Usage Of C++

                                                                      Safer Usage Of C++ This document is PUBLIC. Chromium committers can comment on the original doc. If you want to comment but can’t, ping palmer@. Thanks for reading! Google-internal short link: go/safer-cpp Authors/Editors: adetaylor, palmer Contributors: ajgo, danakj, davidben, dcheng, dmitrig, enh, jannh, jdoerrie, joenotcharles, kcc, markbrand, mmoroz, mpdenton, pkasting, rsesek, tsepez, awhalle

                                                                      • I made JSON.parse() 2x faster

                                                                        Part of my job is to make JavaScript things go fast. Speed is a feature, and when working in an interpreted language, squeezing every last bit of performance can be the difference between a great product and unusable garbage. Anyway, how cool would it be to make JavaScript itself go faster? I’m not a C++ programmer, but that didn’t stop me before, so I thought I’d give it a try anyway! The objecti

                                                                          I made JSON.parse() 2x faster
                                                                        • ep167 Yearly Ecosystem 2024 | mozaic.fm

                                                                          Theme 第 167 回のテーマは 2024 年の Yearly Ecosystem です。 Show Note 2024 年のチェックポイント Vite の覇権を Turbopack, RSPack が奪えるか? Storybook は覇権をとって、Chromatic もすごくなりそう Next App Router が本当に広がるか RSC 対応の Bundler が増えて Next 以外の解が見れそう アプリケーションの Rust 化くるか? React Forget Figma Config 2024 の Adobe の影響 State Management どうなってく? (Context, Jotai, SWR, Signal) ESLint to flat config or Biome AI driven FE Development CSS の新しい方法論 今年のキーワ

                                                                            ep167 Yearly Ecosystem 2024 | mozaic.fm
                                                                          • The Alkyne GC · mcyoung

                                                                            Alkyne is a scripting language I built a couple of years ago for generating configuration blobs. Its interpreter is a naive AST walker1 that uses ARC2 for memory management, so it’s pretty slow, and I’ve been gradually writing a new evaluation engine for it. This post isn’t about Alkyne itself, that’s for another day. For now, I’d like to write down some notes for the GC I wrote3 for it, and more

                                                                              The Alkyne GC · mcyoung
                                                                            • Unsafe Rust Is Harder Than C

                                                                              Or: The Most Expensive Linked List I’ve Ever Written Some of you already know the contents of this post, especially if you’ve written embedded or unsafe code in Rust. But I didn’t, so I thought it was useful to write down my experience as accurately as I can. Without further ado… Last year, I wrote Photohash, software to help me index my NAS and find duplicate photos with rotation-independent hash

                                                                              • Large Text Compression Benchmark

                                                                                 Large Text Compression Benchmark Matt Mahoney Last update: Mar. 25, 2026. history This competition ranks lossless data compression programs by the compressed size (including the size of the decompression program) of the first 109 bytes of the XML text dump of the English version of Wikipedia on Mar. 3, 2006. About the test data. The goal of this benchmark is not to find the best overall compress

                                                                                • I'm Building a Browser for Reverse Engineers

                                                                                  Preamble In the expanding world of AI my heart still lies in AST transforms, browser fingerprinting, and anti-bot circumvention. In fact, that's the majority of this blog's content. But my workflow always felt... primitive. I was still manually sifting through page scripts, pasting suspicious snippets into an editor, and writing bespoke deobfuscators by hand. Tools like Webcrack and deobfuscate.io