並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 256件

新着順 人気順

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

  • CLINEに全部賭けろ

    Cline を使い始めて2ヶ月ぐらい経った。 自分の直感として、Cline は真のイノベーションの入口であり、そして開けてはいけないパンドラの箱でもあったと思う。 ここでいう Cline は Cline型コーディングエージェントであり、広義には Devin / Cursor や Copilot Agent 等を含む話。だが、後述するように Cline でしか見えない世界がある。 その先の未来に、プログラマとしての自分はフルベットする、という話をする。 私たちが知っているプログラミングの終焉 大事なことは次の記事に全部書いてある。まずこれを読んでほしい。 (Google翻訳) Steve Yegge 氏は、置き換えられるのはジュニアおよび中級レベルのプログラマーではなく、新しいプログラミング ツールやパラダイムを受け入れず過去に固執するプログラマーであると指摘しています。 <略> これはプロ

      CLINEに全部賭けろ
    • 新NISAでの個別株投資を考えてみる|UKI

      はじめにUKIです。 いよいよ来年2024年から新NISAが始まります。今回の記事では、新NISAにおける投資戦略、特に個別株投資の戦略について考えてみます。この時期にこのテーマを取り上げることは、一般層にデータ投資を知ってもらう上で避けて通れないと考えました。 この記事を読んでいらっしゃる方は、「NISAで個別株投資なんかいらんやろ、米株インデックス(もしくはオルカン)でいいやん」と思っていることでしょう。本記事は、そのように投資に対して一定以上のリテラシーをお持ちの方を対象としています。そのような方にこそ、是非ご拝読頂きたいと思っています。 本記事では、まず新NISAの概要をざっくり説明し、続いて新NISAで個別株投資を考えるべき理由について説明します。その後、個別銘柄の選定手法について説明を進めます。今回筆者は、各企業の株価データと財務諸表を元に、どのような個別株が購入検討の余地があ

        新NISAでの個別株投資を考えてみる|UKI
      • とほほの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)

        • 新しくプログラミング言語を作る際に文字列型をどうするべきか

          この記事は「言語実装 Advent Calendar 2025」の3日目の記事です。 この記事は、新しくプログラミング言語を設計する際に文字列型をどうするべきかについて、私の持論をまとめたものです。 以前「新しくプログラミング言語を作る際に数値型をどうするべきか」という記事を書きましたが、この記事はそれの文字列版です。 推敲が足りずに同じことを何箇所かで繰り返している場合がありますが、冗長性だと思ってご容赦ください……。 【2025年12月4日 更新】small string optimization、スライスとGCの話を追加、Rubyの文言の修正、可変性と値セマンティクスの記述の整理など。完全な変更履歴はGitHubを見てください。 【2025年12月7日 更新】ケーススタディーにJava、D、Schemeを追加。JavaScript文字列のコードポイント単位のアクセスの記述を追加。Sw

            新しくプログラミング言語を作る際に文字列型をどうするべきか
          • 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
            • 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
              • DeepSeek-R1の数理的背景を理解する - Techtouch Developers Blog

                はじめに 対象読者 DeepSeek-R1 の学習アルゴリズム 記号の準備 TRPO(Trust Region Policy Optimization) 補題1 補題1の証明 定理1 PPO(Proximal policy optimization algorithms) GRPO(Group Relative Policy Optimization) 不偏推定量(5)の導出 DeepSeek-R1 における GRPO の適用方法 正確さの報酬(Accuracy rewards) フォーマットの報酬(Format rewards) まとめ はじめに こんにちは!ML エンジニアの tsujiyan です。現在 DAP Lab とよばれるチームに配属しており、生成 AI 技術を使ったプロダクト開発に従事しています。 近年、生成AIの急速な発展に伴い、大規模言語モデル(LLM)は自然言語処理の

                  DeepSeek-R1の数理的背景を理解する - Techtouch Developers Blog
                • C++ コンパイル時「出力」 ~C++にできないことはない~ - Qiita

                  これは、 C++ でコンパイル時に出力まで済ませようとした話です。 コンパイラは GCC に限ります。 はじめに もうすぐクリスマスですね! クリスマスにすることといえば……、 そう、コンパイル時処理ですね!! コンパイル時処理 C++ のコンパイル時処理は非常に強力で、様々なことがコンパイル時にできてしまいます。 普通はコンパイル時に決まる定数の計算に使われますが、これを悪用利用してコンパイル時に処理がすべて終わるようなものも書くことができます。 例として、コンパイル時 FizzBuzz を書いてみます。 #include <array> #include <string_view> #include <algorithm> #include <concepts> #include <iostream> template <std::unsigned_integral T> conste

                    C++ コンパイル時「出力」 ~C++にできないことはない~ - Qiita
                  • WebKit(JavaScriptCore)に100個のPull Requestがマージされた

                    今年の 2 月から WebKit の JavaScript 処理系である JavaScriptCore に Pull Request を投げ続けています。 JavaScriptCore のソースコードは WebKit のリポジトリ https://github.com/webkit/webkit に完全に含まれています。なので、僕が Pull Request を投げる先も WebKit のリポジトリということになります。そして先日、WebKit リポジトリにマージされた自分の Pull Request の数が 100 に達しました。 Pull Request を作るという活動をやめなければ当然いつかは 100 個に達するので別に偉業ということはないんですが、どちらかというと大して意味のないことをやめられなかったというネガティブな気持ちの方が強くあります。[1] とはいえ、JavaScrip

                      WebKit(JavaScriptCore)に100個のPull Requestがマージされた
                    • なぜあなたのA/Bテストはうまくいくのか?A/Bテストの分析で注意すること | CyberAgent Developers Blog

                      概要 同じ介入を比較するA/Aテストで統計的に有意な差が出てしまうケースがある その原因は、A/Bテストの指標の設計に失敗していることかもしれない この問題の対処法としてユーザベースCTR、デルタメソッド、クラスターロバスト標準誤差を紹介する これらの手法は実務で運用する上では一長一短 はじめに AI事業本部Dynalystの伊藤、小売セクターの藤田(@6km6km)です。 DynalystはReal Time Biddingと呼ばれる広告オークションにおいて広告枠の買付を行うプラットフォーム(DSP: Demand Side Platform)です。DSPでは、ユーザに広告を表示する際に複数あるクリエイティブの候補からひとつクリエイティブを選ぶ必要があり、その選択ロジックにバンディットアルゴリズムを用いています。(参考リンク1, 2) 以下では、バンディットアルゴリズムのA/Bテストをす

                        なぜあなたのA/Bテストはうまくいくのか?A/Bテストの分析で注意すること | CyberAgent Developers Blog
                      • Zig言語のドキュメントを見て「なるほど!」と思ったところ

                        前回の続き。 ちょっとZig言語が面白そうです。まだあまりzigでコードは書いていないのですが、ドキュメントやソースコードをながめて思ったことを書き散らかしてみます。 (他の人がすでに書いていることはなるべく書かない) オブジェクト指向でなくてデータ指向 C言語に後にC言語っぽい文法の言語はたくさん出てきました。C++, Java, C#, Go, Rustなど。 C++やJavaはオブジェクト指向の考え方を取り込んだもので、GoやRustはいきすぎたオブジェクト指向を反省して、interface とか trait とか良いところだけを抽出した感じになっています。(個人の感想です) Zigには純粋にC言語からの改善をしていて、オブジェクト指向の香りがあまりしません。 むしろ「データ指向設計」(Data-Oriented Design)が意識されているらしいです。 紹介してもらったこの動画が

                          Zig言語のドキュメントを見て「なるほど!」と思ったところ
                        • SVMを使った類似 embeddings 検索 - kNN ではない類似検索の選択肢 - A Day in the Life

                          LangChain v0.0.141 に SVM Retriever という実装が入った。これは embeddings(集合)から、単一 embedding と類似しているもの top-K を SVM を使って見つけるという実装で、えっどうやってるの?と追っかけてみたら、知らない知識で面白かったのでメモ記事に。 kNN vs SVM この実装の元となった、knn_vs_svm.ipynbというnotebookがあって、冒頭を機械翻訳すると以下となる。 よくあるワークフローは、あるデータを埋め込みに基づいてインデックス化し、新しいクエリの埋め込みがあれば、k-Nearest Neighbor検索で最も類似した例を検索することです。例えば、大規模な論文コレクションをその抄録に基づいて埋め込み、興味のある新しい論文を与えると、その論文に最も類似した論文を検索することが想像できます。 私の経験では

                          • Numeraiで学ぶ金融時系列モデル評価指標

                            雨にも負けず 風にも負けず 冬にも 夏の過熱相場にも負けぬ ロバストな予測を持ち 強欲はなく 決して悲観せず いつも静かに利益を重ねている ... そう言うモデルを 私は作りたい by ??? (20??年) 前書き こんにちは。日本爆損防止委員会です(さっき考えた)。 さて、皆さんは今日も今日とて爆損を垂れ流していらっしゃると思います。その原因は様々あろうかと思いますが、そもそも「原因がわからない」という方がほとんどではないでしょうか。 爆損しているのに原因がわからない、というのは、言うまでもありませんが大変なストレスです。楽しい思いをしようと小さな島に遊びに行ったら殺人事件が起きて誰が犯人かわからないけど容疑者の人たちと一緒に暮らさないといけないイメージです(?)。 どうせ爆損するなら、「あーワイのモデルはこういう市況に弱いことが検証でもわかってて、今はその市況だから爆損なんやー」と原

                              Numeraiで学ぶ金融時系列モデル評価指標
                            • Using WebAssembly threads from C, C++ and Rust

                              Learn how to bring multithreaded applications written in other languages to WebAssembly. WebAssembly threads support is one of the most important performance additions to WebAssembly. It allows you to either run parts of your code in parallel on separate cores, or the same code over independent parts of the input data, scaling it to as many cores as the user has and significantly reducing the over

                                Using WebAssembly threads from C, C++ and Rust
                              • 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
                                • モダンなJavaScript/TypeScript実行環境「Deno」

                                  class: middle, center <img src="./assets/logo.svg" align="center" width="200" /> モダンな JavaScript/TypeScript 実行環境 Deno --- class: middle, center 「Deno」 聞いたことありますか? 🙋‍♀️ 🙋‍♂️ --- class: middle, center 「Deno」 使ったことありますか? 🙋‍♀️ 🙋‍♂️ --- class: middle, center 今日は Deno を 「聞いた事ない」 ~ 「触った事はある」 ぐらいの人向けの話をします --- # 話す人 <img src="./assets/hinosawa.jpg" align="right" width="300" /> 日野澤歓也 twitter @kt3k Web

                                    モダンなJavaScript/TypeScript実行環境「Deno」
                                  • Deno の話 @ Nikkei

                                    class: middle, center <img src="./assets/logo.svg" align="center" width="200" /> Deno の話 --- アジェンダ - Deno とは - Deno の各種特徴 - Deno Deploy の紹介 --- # 話す人 <img src="./assets/hinosawa.jpg" align="right" width="300" /> 日野澤歓也 twitter @kt3k - GREE (2012 - 2013) - Recruit (2015 - 2019) - Deno Land (2021 -) <small>2018年から Deno にコントリビュートを開始。2020年作者に誘われ Deno Land に転職。現在はフルタイムで Deno と Deno Deploy を開発中。</small>

                                      Deno の話 @ Nikkei
                                    • デジタル復調の学習を目的として、ワンセグチューナーで地デジのフルセグTSを抜く - Qiita

                                      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? お詫びと訂正 タイトルにて「ワンセグチューナー」と表記しておりますが、正しくは「ワンセグチューナーの技術を応用したSDR受信機」となります。お詫びして訂正いたします。 本題 さて、茶番はこのあたりにして(今回は使わなかったと言うだけで、本物の「ワンセグチューナー」でもフルセグを受信できるはずなので、あながちタイトが誤っているというわけではないのですが、茶番をやりたいための茶番でした)。 今回はデジタル変調の復調を学習することを目的としているので、それ以外の部分(例えば受信機のハードウェアや、リードソロモン誤り訂正のような情報理論的分野)

                                        デジタル復調の学習を目的として、ワンセグチューナーで地デジのフルセグTSを抜く - Qiita
                                      • 巨人の肩に乗る

                                        本記事は 仮想通貨 Advent Calendar 2025 の24日目の記事です。 はじめに はじめまして、ymdと申します。普段は、株や暗号資産の分析をし、マーケットが盛り上がったときに落ちているお金を拾っています。 今年のAdvent Calendarを眺めていると、DEXの分析やLLMを活用した自動トレード戦略作成など、非常に有益な記事が目白押しです。 これらを見て思い出したのが、ニュートンの「巨人の肩に乗る」という言葉。本記事では、この精神に倣い、AIの力と先人の知見という2つの「肩」を借りながら、お金拾いの方法を探っていきます。 AIの肩に乗る AI駆動開発の3つのアプローチ AIを活用した開発には、大きく3つの方向性があります: 情報収集の自動化:論文や API ドキュメントの要約 戦略生成の自動化:複数のアプローチを並行生成 コーディングの自動化:コードそのものを AI に

                                          巨人の肩に乗る
                                        • 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

                                          • 【C#】マルチスレッド関連操作の詳説。 - ねののお庭。

                                            この記事は Qiita C# Advent Calendar 2021 23日目の記事です。 マルチスレッドプログラミングにおける問題。 原子性 コンパイラによる命令の並び替え メモリバリアについて acquire / release acquire / release の取り扱いづらさ sequential consistency C# でのマルチスレッド関連操作 lock (statement) volatile (keyword) Volatile (class) Interlocked (class) Common Language Infrastructure (CLI) における volatile read / write の仕様 まとめ References この記事のお話の流れは、①マルチスレッドプログラミングで発生する問題、②それらの問題に対処するためのメモリバイアについ

                                              【C#】マルチスレッド関連操作の詳説。 - ねののお庭。
                                            • 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 で。 - NIFTY engineering

                                                この記事は ニフティグループ Advent Calendar 2025 および Rust Advent Calendar 2025 シリーズ 1 の 9 日目の記事です。 忙しい方向け Rust でファミコンの ROM を作ろうとしたら想定外に大変だったけど楽しかった、というお話です。 mrustc + cc65 という組み合わせで Rust コードをファミコン用にコンパイルしたかった mrustc が生成した C コードを cc65 でコンパイルするためにひたすら魔改造 本物の libcore も改造しつつコンパイルが通るところまでいって感動 しかし出来上がったバイナリは 32KB の枠に対して 347KB オーバーという衝撃の結果に… リンカ (ld65) を魔改造して不要なシンボルを削ろうとしたが、低レイヤーが分からず撤退 最終的には最小限の libcore を実装し、とりあえず動か

                                                  ファミコンのソフトを作る。Rust で。 - NIFTY engineering
                                                • Extending SQLite with Rust to support Excel files as virtual tables

                                                  This article explains how SQLite can be extended with Rust. In particular, it will outline SQLite’s mechanism called virtual tables and showcase how we can use it from Rust programming language. In the end, we will have a working extension that can be dynamically loaded and used from SQLite. This article does not claim to be an exhaustive guide about extending SQLite with Rust, but I hope the read

                                                  • 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

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

                                                      • Understanding inheritance and other limitations in Rust - LogRocket Blog

                                                        Editor’s note: This Rust guide was updated on 3 Aug, 2022 to include information about doubly linked lists and borrowing things that aren’t static in async code. As a moderator of the Rust subreddit, I regularly happen upon posts about developers’ attempts to transpose their respective language paradigms to Rust, with mixed results and varying degrees of success. In this guide, I’ll describe some

                                                          Understanding inheritance and other limitations in Rust - LogRocket Blog
                                                        • 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
                                                          • Taming Floating-Point Sums | orlp.net

                                                            Suppose you have an array of floating-point numbers, and wish to sum them. You might naively think you can simply add them, e.g. in Rust: fn naive_sum(arr: &[f32]) -> f32 { let mut out = 0.0; for x in arr { out += *x; } out } This however can easily result in an arbitrarily large accumulated error. Let’s try it out: naive_sum(&vec![1.0; 1_000_000]) = 1000000.0 naive_sum(&vec![1.0; 10_000_000]) = 1

                                                            • Rustにしたのに遅い?─ N+1クエリ問題の発見と解決 - じゃあ、おうちで学べる

                                                              はじめに Rustは速い。だが、Rustで書けば速くなるわけではない。 ある日、APIのレスポンスが突然5秒を超えた。コードを見直してもバグはない。SQLも正しく書けている。途方に暮れながらログを確認すると、1リクエストで300回以上もクエリが発行されていた。原因は、ループ内で著者情報を1件ずつ取得していたこと。これがN+1クエリ問題だ。 見えないものは、直せない。 本記事では、この見落とされがちなN+1クエリ問題の本質と、RustとPostgreSQLを使った5つの解決策を解説する。正直に言うと、どの解決策がベストかは状況による。だからこそ、複数のアプローチを知っておく価値があると私は考えている。 N+1クエリ問題とは 問題のあるコード 本記事では、RustのSQLクライアントライブラリ「sqlx」を使用します。sqlxは型安全なクエリとasync/awaitをネイティブにサポートするラ

                                                                Rustにしたのに遅い?─ N+1クエリ問題の発見と解決 - じゃあ、おうちで学べる
                                                              • Rust 1.55を早めに深掘り - OPTiM TECH BLOG

                                                                こんにちは、R&Dチームの齋藤(@aznhe21)です。 最近はい・らすとのネタが浮かばず苦労しています。センスと丁度良いリリース日をください。 さて、本日9/10(金)にRust 1.55がリリースされました。 この記事ではRust 1.55での変更点を詳しく紹介します。 9/10は黒澤映画「羅生門」がヴェネチア国際映画祭で日本発の金獅子賞を受賞した日 ピックアップ パターンとして「以上」のレンジが使えるようになった 配列をそのまま写像出来るようになった I/O関数から返されるエラーの値が一部変更された 安定化されたAPIのドキュメント core::ops::Bound::cloned サンプル std::string::Drain::as_str サンプル std::io::IntoInnerError::into_error サンプル std::io::IntoInnerError:

                                                                  Rust 1.55を早めに深掘り - OPTiM TECH BLOG
                                                                • 大奥を観る | Netflix (ネットフリックス) 公式サイト

                                                                  '); doc.close(); } if (!doc) throw Error('base not supported'); var baseTag = doc.createElement('base'); baseTag.href = base; doc.getElementsByTagName('head')[0].appendChild(baseTag); var anchor = doc.createElement('a'); anchor.href = url; return anchor.href; } finally { if (iframe) iframe.parentNode.removeChild(iframe); } }()); } // An inner object implementing URLUtils (either a native URL // ob

                                                                    大奥を観る | Netflix (ネットフリックス) 公式サイト
                                                                  • 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
                                                                    • kyju.org - Piccolo - A Stackless Lua Interpreter

                                                                      Piccolo - A Stackless Lua Interpreter 2024-05-01 History of piccolo A "Stackless" Interpreter Design Benefits of Stackless Cancellation Pre-emptive Concurrency Fuel, Pacing, and Custom Scheduling "Symmetric" Coroutines and coroutine.yieldto The "Big Lie" Rust Coroutines, Lua Coroutines, and Snarfing Zooming Out piccolo is an interpreter for the Lua language written in pure, mostly safe Rust with a

                                                                      • Deno 1.12 へのアップデートと変更事項まとめ - 虎の穴ラボ技術ブログ

                                                                        皆さんこんにちは、暑い中ですがお元気ですか?おっくんです。 去る 2021 年 7 月 13 日に Deno 1.12 がリリースされました。 今回も、リリースノートを参考に 変更事項の気になるところを紹介したいと思います。 実行環境 macOS Catalina 10.15.7 Docker イメージ denoland/deno:centos(確認時点では Deno 1.12.0 でした) Deno 1.12 Deno 1.12 での変更事項をDeno 1.12 リリースノートを元に確認します。 deno.com Web Crypto API の対応メソッドが増えました Deno 1.12 では、 以下のWeb Crypto APIの 3 つの実装が追加されました。 crypto.subtle.generateKey キー生成 crypto.subtle.sign 署名 crypto.s

                                                                          Deno 1.12 へのアップデートと変更事項まとめ - 虎の穴ラボ技術ブログ
                                                                        • Rustで実装する乱数生成のベクトル化 - NTT docomo Business Engineers' Blog

                                                                          この記事は、 NTT Communications Advent Calendar 2022 22日目の記事です。 はじめに こんにちは、イノベーションセンターの鈴ヶ嶺(@suzu_3_14159265)です。普段は、クラウド・ハイブリッドクラウド・エッジデバイスなどを利用したAI/MLシステムに関する業務に従事しています。 本日は、Rustでベクトル化された乱数生成器を実装する方法を紹介します。乱数生成器にはPermuted congruential generator(PCG)という高速でシンプルな実装を取り扱います。ベクトル化には1つの命令で複数のデータを適用するSingle Instruction, Multiple Data(SIMD)を活用します。 また、以下のように毎年Rustネタのアドベントカレンダーを書いているのでぜひ見ていただけると嬉しいです! NTTコミュニケーション

                                                                            Rustで実装する乱数生成のベクトル化 - NTT docomo Business Engineers' Blog
                                                                          • WebKitにWasm Type Reflection API(の一部)を実装してみた

                                                                            WebAssembly Type Reflection JavaScript APIの一部をWebKitに実装したので紹介します。 WebAssembly Type Reflection JavaScript API とは WebAssembly Type Reflection JavaScript APIは、Memory・Table・Global・関数の型に関する情報をJavaScriptから取得するAPIを追加する提案です。https://github.com/WebAssembly/js-types で管理されています。 たとえば、MemoryやTableであればサイズの制限、Globalであれば値の型とミュータビリティ、FunctionであればそのシグネチャをJavaScriptから取得できます。 この提案は、既存のAPIに対して3つの変更を加えます。 1. Memory、Glob

                                                                              WebKitにWasm Type Reflection API(の一部)を実装してみた
                                                                            • When Zig is safer and faster than Rust

                                                                              3/7/2023 When Zig is safer and faster than Rust There are endless debates online about Rust vs. Zig, this post explores a side of the argument I don't think is mentioned enough. Intro / TLDRλ I was intrigued to learn that the Roc language rewrote their standard library from Rust to Zig. What made Zig the better option? They wrote that they were using a lot of unsafe Rust and it was getting in thei

                                                                              • Why is WebAssembly a second-class language on the web? – Mozilla Hacks - the Web developer blog

                                                                                This post is an expanded version of a presentation I gave at the 2025 WebAssembly CG meeting in Munich. WebAssembly has come a long way since its first release in 2017. The first version of WebAssembly was already a great fit for low-level languages like C and C++, and immediately enabled many new kinds of applications to efficiently target the web. Since then, the WebAssembly CG has dramatically

                                                                                  Why is WebAssembly a second-class language on the web? – Mozilla Hacks - the Web developer blog
                                                                                • Rust to WebAssembly the hard way — surma.dev

                                                                                  Toggle dark mode What follows is a brain dump of everything I know about compiling Rust to WebAssembly. Enjoy. Some time ago, I wrote a blog post on how to compile C to WebAssembly without Emscripten, i.e. without the default tool that makes that process easy. In Rust, the tool that makes WebAssembly easy is called wasm-bindgen, and we are going to ditch it! At the same time, Rust is a bit differe

                                                                                    Rust to WebAssembly the hard way — surma.dev