並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 57件

新着順 人気順

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

  • TypeScriptやGoやRustでWebAssemblyウォークスルー - SMARTCAMP Engineer Blog

    みなさん、WebAssembly聞いたことありますよね? スマートキャンプでエンジニアをしている瀧川です。 私が初めてWebAssemblyを目にしたのは確か2018年、VimをWebAssemblyに移植してブラウザで動くようにしたという記事だったかなと思います。 https://github.com/rhysd/vim.wasm 当時は「はー、なんだか未来を感じるけど、どう使われてくんだろう」くらいな認識で、最近までほとんど注目していませんでした。 しかし、少し前にffmpeg.wasmについての記事がバズっているのを見かけたときビビっときましたね。 ブラウザ上でffmpegが動かせるのはWebアプリケーションを作る上で可能性が広がりますし、何よりWebAssemblyのポテンシャルが活かされていると感じました。 そこで今回、WebAssemblyの世界観を味わうために、代表的なWeb

      TypeScriptやGoやRustでWebAssemblyウォークスルー - SMARTCAMP Engineer Blog
    • Implementing Hash Tables in C

      NOTE(s): The article is in “draft” status. The content was originally written in 2017. The intended audience for this article is undergrad students or seasoned developers who want to refresh their knowledge on the subject. The reader should already be familiar with C (pointers, pointer functions, macros, memory management) and basic data structures knowledge (e.g., arrays, linked lists, and binary

      • Algorithms for Modern Hardware - Algorithmica

        This is an upcoming high performance computing book titled “Algorithms for Modern Hardware” by Sergey Slotin. Its intended audience is everyone from performance engineers and practical algorithm researchers to undergraduate computer science students who have just finished an advanced algorithms course and want to learn more practical ways to speed up a program than by going from $O(n \log n)$ to $

        • 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
          • Vectorized and performance-portable Quicksort

            The latest news from Google on open source releases, major projects, events, and outreach programs for early career developers. Today we're sharing open source code that can sort arrays of numbers about ten times as fast as the C++ std::sort, and outperforms state of the art architecture-specific algorithms, while being portable across all modern CPU architectures. Below we discuss how we achieved

              Vectorized and performance-portable Quicksort
            • 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)
              • Wasm core dumps and debugging Rust in Cloudflare Workers

                Wasm core dumps and debugging Rust in Cloudflare Workers2023-08-14 A clear sign of maturing for any new programming language or environment is how easy and efficient debugging them is. Programming, like any other complex task, involves various challenges and potential pitfalls. Logic errors, off-by-ones, null pointer dereferences, and memory leaks are some examples of things that can make software

                  Wasm core dumps and debugging Rust in Cloudflare Workers
                • 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
                  • Text Editor Data Structures

                    Text editors can be an interesting challenge to program. The types of problems that text editors need to solve can range from trivial to mind-bogglingly difficult. Recently, I have been on something of a spiritual journey to rework some internal data structures in an editor I have been building, specifically the most fundamental data structure to any text editor: the text. Table of Contents Resour

                      Text Editor Data Structures
                    • Writing a Linux-compatible kernel in Rust

                      Writing a Linux-compatible kernel in RustMay 19, 2021 TL;DR: I'm writing a Linux clone in Rust just for fun. It does NOT aim to replace the Linux kernel. For the recent months, I've been working on a new operating system kernel Kerla, written from scratch in Rust which aims to be Linux-compatible at the ABI level. In other words, support running unmodified Linux binaries! I've already implemented

                        Writing a Linux-compatible kernel in Rust
                      • 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

                        • CUDA C/C++ Basics

                          © NVIDIA Corporation 2011 CUDA C/C++ Basics Supercomputing 2011 Tutorial Cyril Zeller, NVIDIA Corporation © NVIDIA Corporation 2011 What is CUDA?  CUDA Architecture  Expose GPU computing for general purpose  Retain performance  CUDA C/C++  Based on industry-standard C/C++  Small set of extensions to enable heterogeneous programming  Straightforward APIs to manage devices, memory etc.  This

                          • Hard Mode Rust

                            Oct 6, 2022 This post is a case study of writing a Rust application using only minimal, artificially constrained API (eg, no dynamic memory allocation). It assumes a fair bit of familiarity with the language. The back story here is a particular criticism of Rust and C++ from hard-core C programmers. This criticism is aimed at RAII — the language-defining feature of C++, which was wholesale importe

                            • 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

                                • 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

                                  • The V8 Sandbox · V8

                                    After almost three years since the initial design document and hundreds of CLs in the meantime, the V8 Sandbox — a lightweight, in-process sandbox for V8 — has now progressed to the point where it is no longer considered an experimental security feature. Starting today, the V8 Sandbox is included in Chrome's Vulnerability Reward Program (VRP). While there are still a number of issues to resolve be

                                    • 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

                                        • 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

                                          • 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++ creator calls for action to address 'serious attacks'

                                              Bjarne Stroustrup wants standards body to respond to memory-safety push as Rust monsters lurk at the door Bjarne Stroustrup, creator of C++, has issued a call for the C++ community to defend the programming language, which has been shunned by cybersecurity agencies and technical experts in recent years for its memory safety shortcomings. C and C++ are built around manual memory management, which c

                                                C++ creator calls for action to address 'serious attacks'
                                              • [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

                                                  • 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
                                                        • 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
                                                          • 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

                                                            • 世界一やさしいHLAC入門!(間違い探し編) - アダコテック技術ブログ

                                                              はじめまして! 2021年4月からAdacotechでエンジニアとして入社しました井上耕太朗です。 それまでは大学にて光学や3次元画像処理、機械学習といった分野の研究に携わっていました。 経歴について詳しくは下記noteの記事にて! note.com 技術系の情報はこちらの技術ブログにまとめます。 今回はAdacotechのコア技術であるHLAC(高次局所自己相関)をPythonで実装しながら、サンプル問題として間違い探しを解き、HLACの仕組みについて解説しようと思います。 HLAC: Higher-order Local Auto-Correlation そもそも相関って? 相関の適切な使い方 自己相関と認識 おやおや!それはHLACではありませんか!! 二値HLACを実装してみよう! 位置不変性の確認 加法性の確認 HLACで間違い探し まとめ: HLACとは何だったのか HLAC:

                                                                世界一やさしいHLAC入門!(間違い探し編) - アダコテック技術ブログ
                                                              • Why Today’s Python Developers Are Embracing Type Hints | Pyrefly

                                                                Python is one of the most successful programming languages out there, with it recently overtaking Javascript as the most popular language on GitHub, according to the latest GitHub Octoverse report. The report emphasises the popularity of the language in the growing fields of AI, data science and scientific computing - fields where speedy experimentation and iteration are critical, and where develo

                                                                  Why Today’s Python Developers Are Embracing Type Hints | Pyrefly
                                                                • Zig 言語リファレンス

                                                                  index.md これは Zig ドキュメント 0.10.1 を DeepL Pro と ChatGPT を利用して翻訳したものです。 一部 master なモノもあります、ごちゃ混ぜです 自分用に翻訳しています zig_doc_0.10.1.md Zig 言語リファレンス はじめに Zig は、堅牢で最適かつ再利用可能なソフトウェアを維持するための汎用プログラミング言語およびツールチェインです。 ロバスト メモリ不足などのエッジケースでも正しく動作する。 最適化 プログラムが最適に動作・実行されるように記述する。 再利用可能 同じコードが、制約の異なる多くの環境で動作します。 保守性 コンパイラや他のプログラマに意図を正確に伝えることができる。コードを読むためのオーバーヘッドが少なく、要件や環境の変化に強い言語です。 新しいことを学ぶのに一番効率的な方法は例を見ることであることが多いので

                                                                    Zig 言語リファレンス
                                                                  • RWKV-World-V2をPythonから日本語で操作する|shi3z

                                                                    RKWV-World-V2の出来があまりにも良いのでPythonで使う方法をメモっておきます。 基本的にこのGradioの内容をいつものLLMベンチマークの形式にしただけ import os, gc, copy, torch from datetime import datetime from huggingface_hub import hf_hub_download from pynvml import * ctx_limit = 2000 title = "RWKV-5-World-1B5-v2-20231025-ctx4096" os.environ["RWKV_JIT_ON"] = '1' os.environ["RWKV_CUDA_ON"] = '1' # if '1' then use CUDA kernel for seq mode (much faster) from r

                                                                      RWKV-World-V2をPythonから日本語で操作する|shi3z
                                                                    • cuneicode, and the Future of Text in C

                                                                      Following up from the last post, there is a lot more we need to cover. This was intended to be the post where we talk exclusively about benchmarks and numbers. But, I have unfortunately been perfectly taunted and status-locked, like a monster whose “aggro” was pulled by a tank. The reason, of course, is due to a few folks taking issue with my outright dismissal of the C and C++ APIs (and not showi

                                                                        cuneicode, and the Future of Text in C
                                                                      • How I learned Vulkan and wrote a small game engine with it

                                                                        Comments (GitHub discussion) Comments (Hacker News) tl;dr: I learned some Vulkan and made a game engine with two small game demos in 3 months. The code for the engine and the games can be found here: https://github.com/eliasdaler/edbr This article documents my experience of learning Vulkan and writing a small game/engine with it. It took me around 3 months to do it without any previous knowledge o

                                                                        • Text Editor Data Structures: Rethinking Undo

                                                                          Undo and redo have been a staple operation of text editors probably since the first typo was ever made, yet there has not been a lot of innovation around refining the idea of what undo and redo could be. Let’s explore what I mean… On The Subject of Undo Undo In order to understand how to change undo we first need to understand what the fundamental operation of ‘undo’ is supposed to do. I have alwa

                                                                            Text Editor Data Structures: Rethinking Undo
                                                                          • Escaping the Chrome Sandbox Through DevTools

                                                                            By ading2210 on 10/16/24 Introduction This blog post details how I found CVE-2024-6778 and CVE-2024-5836, which are vulnerabilities within the Chromium web browser which allowed for a sandbox escape from a browser extension (with a tiny bit of user interaction). Eventually, Google paid me $20,000 for this bug report. In short, these bugs allowed a malicious Chrome extension to run any shell comman

                                                                              Escaping the Chrome Sandbox Through DevTools
                                                                            • Safe C++

                                                                              1 Introduction 1.1 The call for memory safety Over the past two years, the United States Government has been issuing warnings about memory-unsafe programming languages with increasing urgency. Much of the country’s critical infrastructure relies on software written in C and C++, languages which are very memory unsafe, leaving these systems more vulnerable to exploits by adversaries. Nov. 10, 2022

                                                                              • New C++ features in GCC 12 | Red Hat Developer

                                                                                Version 12.1 of the GNU Compiler Collection (GCC) is expected to be released in April 2022. Like every major GCC release, this version will bring many additions, improvements, bug fixes, and new features. GCC 12 is already the system compiler in Fedora 36. GCC 12 will also be available on Red Hat Enterprise Linux in the Red Hat Developer Toolset (version 7) or the Red Hat GCC Toolset (version 8 an

                                                                                  New C++ features in GCC 12 | Red Hat Developer
                                                                                • 地面を見下ろす少年の足蹴にされる私

                                                                                  文書の一覧 JTC1/SC22/WG21 - Papers mailing2025-12 全部で113本あります。 もくじ N5011 Brno 2026 N5029 WG21 2025-10 Kona Admin telecon minutes N5031 WG21 2025-11 Kona Minutes of Meeting N5032 Working Draft, Standard for Programming Language C++ N5033 Editors' Report - Programming Languages - C++ P1317R2 Remove return type deduction in std::apply P1789R2 Library Support for Expansion Statements P1789R3 Library Suppor

                                                                                    地面を見下ろす少年の足蹴にされる私