はてブログ

はてなブックマーク新着エントリーの過去ログサイトです。



タグ 処理系

新着順 人気順 5 users 10 users 50 users 100 users 500 users 1000 users
 
(1 - 25 / 53件)

スーパーファミコンで mruby/c を動かす

2024/01/20 このエントリーをはてなブックマークに追加 18 users Instapaper Pocket Tweet Facebook Share Evernote Clip mruby リポジトリ Ruby エミュレータ上 発想

はじめに mruby/c という軽量な Ruby 処理系をスーパーファミコンに移植し、標準出力に文字列を出力する簡単な Ruby コードをエミュレータ上で動かしたので、その移植作業を記事にまとめました。 この記事で動かしたコードは次のリポジトリにあります。 この移植作業を行うという発想は、2年前の RubyKaigi 2022 で行わ... 続きを読む

【AtCoder】Pythonで競プロをするときの注意点まとめ【競技プログラミング】 - Qiita

2023/11/15 このエントリーをはてなブックマークに追加 116 users Instapaper Pocket Tweet Facebook Share Evernote Clip Qiita AtCoder SageMath Python

これは何? 競技プログラミングをPythonでやるときに注意すべき点をまとめました。 言語選択編 PythonがAtCoderには5種類ある AtCoderにはPythonの処理系が5つ入っています。具体的には Python (CPython 3.11.4) Python (Mambaforge / CPython 3.10.10) Python (PyPy 3.10-v7.3.12) Python (Cython 0.29.34) SageMath (S... 続きを読む

Pythonコードを35000倍に高速化したい

2023/05/07 このエントリーをはてなブックマークに追加 229 users Instapaper Pocket Tweet Facebook Share Evernote Clip Pythonコード Python 高速化 プログラミング言語

はじめに Pythonは世界的にも人気のあるプログラミング言語ですが、実行速度については課題があります。Pythonの実行速度を高速化したい、という要求は根強く、これまでにも様々な処理系が開発されています。 この記事はPythonで書かれたコードを35000倍に高速化するにはどのような方法があるかについてまとめたものです... 続きを読む

あなたのPythonを100倍高速にする技術 / Codon入門

2023/03/22 このエントリーをはてなブックマークに追加 232 users Instapaper Pocket Tweet Facebook Share Evernote Clip Python Codon MIT 技術 100倍

はじめに Pythonは世界的にも人気のあるプログラミング言語ですが、実行速度については課題があります。Pythonの実行速度を高速化したい、という要求は根強く、これまでにも様々なツールや処理系が開発されています。 この記事ではMITの研究者らが開発したPythonを高速化するツール「Codon」について紹介します。 この記... 続きを読む

ChatGPTのプロンプトをLispで書く

2023/03/20 このエントリーをはてなブックマークに追加 16 users Instapaper Pocket Tweet Facebook Share Evernote Clip LISP Clojure chatgpt プロンプト 言語

ChatGPTのプロンプトをLispで書けることに気づきました。プロンプトによって処理系としてふるまってもらうという話は聞いたことがありましたが、Lispの場合はそのようなプロンプトがなくても解釈されました。 例 モデルはGPT-4です。言語としてはClojureをベースにした擬似コードを書いています。 子供っぽくする 静かな... 続きを読む

ブラウザ, Node, Cloudflareでも動くDenoモジュール開発

2022/07/03 このエントリーをはてなブックマークに追加 17 users Instapaper Pocket Tweet Facebook Share Evernote Clip CloudFlare TypeScript node 一事例

ブラウザだけでなく、非ブラウザなJavaScript(JS)処理系も増えてきたので、「主要ブラウザ、Node.js、Cloudflare Workersでも動くDenoファーストなTypeScript/JavaScriptモジュール開発&CI/CD」をやってみました。一事例として共有します。 はじめに 最近、TypeScriptで hpke-js というモジュールをつくりました。 HP... 続きを読む

自作RDBMSやろうぜ!

2022/05/09 このエントリーをはてなブックマークに追加 347 users Instapaper Pocket Tweet Facebook Share Evernote Clip RDBMS リレーショナルデータベース content 書籍

Skip to the content. 自作RDBMSやろうぜ! このサイトの目的 RDBMS(いわゆるリレーショナルデータベース)というものはプログラミング言語の処理系や、OSなどと同様に、世の中で広く使われているソフトウェアであるにも関わらず、いざ自作してみようと思うと日本語で記述されたサイトや書籍で、必要な情報・情報源がま... 続きを読む

Ruby 3.2.0dev にマージされた Rust YJIT をビルドする - koicの日記

2022/04/28 このエントリーをはてなブックマークに追加 12 users Instapaper Pocket Tweet Facebook Share Evernote Clip rust Shopify koic rustup YJIT

YJIT の Rust 実装がマージされました。いまのところ今年の Shopify からの代表作ではと見ています (YJIT 自体は Ruby 3.1 で C 実装導入されている機能です) 。 github.com そういうわけで、現在の Ruby 3.2.0dev で YJIT を有効にする場合は、Rust の処理系 (1.60.0 以上) が必要になります。Rust のインストールに使... 続きを読む

Goへのヘイトに対する考え方

2021/09/17 このエントリーをはてなブックマークに追加 256 users Instapaper Pocket Tweet Facebook Share Evernote Clip 矢先 ヘイト 既出 既存 言語

だいぶGoの特徴や既存の言語との考え方の違いが広まってきてるのかなぁと思っていた矢先だったので十年くらい前のような指摘をあえて今されていてびっくりした。 正直、ここに書かれたようなヘイト項目は既出すぎるので、もし影響の大きい項目を多くの人が同様に嫌っているならばGoはここまでの人気のある処理系になるこ... 続きを読む

GoのLanguage Specificationの特定の仕様に関わる処理系の実装を探す #golang - My External Storage

2019/06/13 このエントリーをはてなブックマークに追加 22 users Instapaper Pocket Tweet Facebook Share Evernote Clip spec golang ref golang.org 実装

Goの仕様はこのHTML1ページにまとまっている。 The Go Programming Language Specification https://golang.org/ref/spec 仕様に書いてある処理はどうやって実装されているのか調べたかった。 Goの仕様の1文からその仕様に関係する処理系のコードを探す方法をメモしておく。 TL;DR GoのLanguage Specificationに書いてあ... 続きを読む

TypeScript で WebAssembly 処理系を書いた話 - Speaker Deck

2019/04/19 このエントリーをはてなブックマークに追加 44 users Instapaper Pocket Tweet Facebook Share Evernote Clip TypeScript WebAssembly

All slide content and descriptions are owned by their creators. 続きを読む

Rust で Erlang 処理系を実装してみている – SUZUKI Tetsuya – Medium

2018/12/19 このエントリーをはてなブックマークに追加 60 users Instapaper Pocket Tweet Facebook Share Evernote Clip erlang rust Starlight medium 年内

今年の 9 月あたりから、 Rust で Erlang の処理系を実装してみています。まともに試せるほど進んでないんですが、気分的に年内に一区切りつけたいので公開しておきます。リポジトリはこちら。 https://github.com/szktty/starlight みています、というのはもちろん思いつきだからです。なにぶん Erlang は適用分野がベ... 続きを読む

Edge 終了に寄せて - mizchi's blog

2018/12/12 このエントリーをはてなブックマークに追加 431 users Instapaper Pocket Tweet Facebook Share Evernote Clip Edge mizchi's blog blink 終了 一式

初報を聞いたとき、描画系だけ blink に入れ替えて処理系は V8 使わず ChakraCore などに入れ替えるのかな、と思っていたが、どうも V8、というか chromium 一式を使うらしい。 正直に言って、Edge が死ぬことに、そこまで強く思うところはない。IE は死ぬのが決まっているし、Edge は内部的に自身のベンダープレフィッ... 続きを読む

アドビの日本語フォント開発 30年の歩み 前編 #フォントの日 #Typekit – Adobe Creative Station

2018/04/10 このエントリーをはてなブックマークに追加 18 users Instapaper Pocket Tweet Facebook Share Evernote Clip Typekit アドビ Ori フォント プリンター

連載  /   #フォントの日 アドビの日本語フォント開発 30年の歩み 前編 #フォントの日 #Typekit BY 山本太郎 2018.04.10 公開 (2018.04.09 更新) アドビが開発したPostScriptページ記述言語の処理系を搭載した、最初の日本語PostScriptプリンターが世に出たのは1989年のことです。そのプリンターに搭載されていた日本語フォントは、OCF(Ori... 続きを読む

LLVMとは | Developers.IO

2018/01/05 このエントリーをはてなブックマークに追加 61 users Instapaper Pocket Tweet Facebook Share Evernote Clip LLVM コンパイラ基盤 Ruby イマイチ エントリー

前回の記事「 Rubyの処理系とGCについて 」を書いたときに、LLVMがイマイチ理解できずもやっとしてたので調べました。このエントリーは「LLVMとは」でググった(先日の僕のような)人向けの記事です。間違ったことを書いてあったら教えてください。 疑問 この記事を書く前の疑問はおおよそ以下の様なものです。 LLVMはコンパイラ基盤って言われてるけど、コンパイラ基盤って何? LLVMはコンパイラ基盤... 続きを読む

Vim scriptを処理系レベルから高速化しようとしている話 - Qiita

2017/06/09 このエントリーをはてなブックマークに追加 55 users Instapaper Pocket Tweet Facebook Share Evernote Clip Qiita パーサー AST リポジトリ 引数

TL; DR Vim scriptをパースしてASTを作り、高速化を図ります。リポジトリはこちら→ wholekeik/vim AST化 Vim script は実行のたびにコマンドをパースしているので非常に遅い言語です。コマンドをパースしておいてASTとし、それを実行すれば高速化が見込めます。しかし、Vim scriptでは引数の解釈が各コマンドによって全く異なるため、共通のパーサーを書くのは不... 続きを読む

KMC の春合宿で Python の処理系の講座をした - 私が歌川です

2017/03/21 このエントリーをはてなブックマークに追加 19 users Instapaper Pocket Tweet Facebook Share Evernote Clip KMC Python アマゾン プログラミング言語 実態

2017 - 03 - 21 KMC の春合宿で Python の処理系の講座をした 技術 先日 KMC で春合宿があり,そこで Python の処理系に関する講座をしました. Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ. from kiki utagawa www.slideshare.net 内容 プログラミング言語 を実... 続きを読む

プログラミング言語作成ハンズオンを開催しました - kmizuの日記

2017/01/22 このエントリーをはてなブックマークに追加 43 users Instapaper Pocket Tweet Facebook Share Evernote Clip 文法 プログラミング言語 kmizu 機能拡張 基礎

2017 - 01 - 22 プログラミング言語作成ハンズオンを開催しました connpass.com 今回開催したこのイベントは、私が学習用に作成した プログラミング言語 nub github.com の文法や機能拡張を通じて、 プログラミング言語 処理系の作成の基礎について学ぶというものでした。 自分がこのイベントを開催したねらいは主に二つあって、 プログラミング言語 (処理系)作成に興味のあ... 続きを読む

末尾呼出し最適化が実装された - JS.next

2016/01/28 このエントリーをはてなブックマークに追加 83 users Instapaper Pocket Tweet Facebook Share Evernote Clip スタック JS.next エラー 再帰 ES2015

2016 - 01 - 28 末尾呼出し最適化が実装された ★☆☆ ES2015 新仕様実装 V8 概要 ある関数Aから別の関数Bを呼び出すとき、処理系は後で戻って来れるように一旦Aの状態を保存し、関数Bの処理に入る。 これが問題になるのは 再帰 の時で、数万回程度の 再帰 でスタックが一杯になり、エラーとなってしまう。 しかし、もし関数B呼び出しの際に、関数Aに戻ってきて処理を続ける必要のない形... 続きを読む

Pythonへのバグの混入を防ぎ、可読性も向上させるAPPLe - Qiita

2015/12/04 このエントリーをはてなブックマークに追加 25 users Instapaper Pocket Tweet Facebook Share Evernote Clip Apple Qiita 混入 Python ゴー

はじめに Pythonはさくっと書けてさくっと実行できて、しかも他のスクリプト言語と比べてチーム開発にもある程度耐えられるきちっとした構造ですばらしいですよね! 今日はそんなPythonプログラミングをもっと楽しいものにする珠玉のツールAPPLeを紹介します。 APPLeはPythonに拡張機能1を提供する処理系で、今までと比べものにならないくらい可読性が高く、さらに厄介なバグの多くを排除したコー... 続きを読む

2015-3-(1): 情報処理学会プログラミング研究会 発表資料 2015 年 11 月 5 日 Ruby処理系のコンパイル済みコードの設計 ○笹田 耕一1,a) 松本 行弘1,b) 概要: Ruby 処理系(Ruby 2.2)は、Ruby プログラム

2015/11/02 このエントリーをはてなブックマークに追加 37 users Instapaper Pocket Tweet Facebook Share Evernote Clip 笹田 コンパイ Ruby 松本 Ruby処理系

2015-3-(1): 情報処理学会プログラミング研究会 発表資料 2015 年 11 月 5 日 Ruby処理系のコンパイル済みコードの設計 ○笹田 耕一1,a) 松本 行弘1,b) 概要: Ruby 処理系(Ruby 2.2)は、Ruby プログラムをスタックマシン型仮想機械(VM)の命令列にコンパイ ルし実行する。実行時にコンパイルするため、変換に時間がかかる、という問題がある。また、複数... 続きを読む

Big Sky :: Perl6 の grammar で俺言語「しょぼいスクリプト」を作った。

2015/10/19 このエントリーをはてなブックマークに追加 62 users Instapaper Pocket Tweet Facebook Share Evernote Clip スキャナ シームレス デフォルト 実装 プログラミング言語

meta-tags: perl6 Perl6 には Grammar という機能があるのですが、これがまた凄いんです。スキャナとトークナイザと処理系が引っ付いている様な物がデフォルトで提供されているんです。 通常はこれらが別の機能として提供されており、プログラミング言語を実装する過程でデータの受け渡しがシームレスではなく、実装を変えたりするのが非常に面倒だったりします。しかしこれが Perl6 とい... 続きを読む

ES7 async/await でのエラーハンドリング - おなか周りの脂肪がやばい

2015/10/10 このエントリーをはてなブックマークに追加 65 users Instapaper Pocket Tweet Facebook Share Evernote Clip await エラーハンドリング async Babel ヤバイ

2015-10-09 ES7 async/await でのエラーハンドリング async/await は ES7 の機能で、非同期処理を記述する上で非常に便利な機能である(仕様は安定していないと思う) まだ実装している処理系はないと思うが、babel などの transpiler をつかうと利用できる async/await をつかうと非同期処理を以下のように書くことができる function a... 続きを読む

Kazuho's Weblog: 雑なツイートをしてしまったばかりにrubyを高速化するはめになった俺たちは!

2015/10/08 このエントリーをはてなブックマークに追加 333 users Instapaper Pocket Tweet Facebook Share Evernote Clip はめ Kazuho's Weblog Rope kazuho

雑なツイートをしてしまったばかりにrubyを高速化するはめになった俺たちは! 逆に言うと、Rubyの文字列型の内部実装がropeになれば、freezeしてもしなくても変わらない速度が出るようになって、結局freezeする必要なんてなかったんやーで丸く収まるんじゃないの?と思いました #雑な感想— Kazuho Oku (@kazuho) October 6, 2015とツイートしたところ、処理系の... 続きを読む

Make a Lisp で Lisp 処理系を学んでつくる (with Crystal) - sorry, uninuplemented:

2015/06/11 このエントリーをはてなブックマークに追加 101 users Instapaper Pocket Tweet Facebook Share Evernote Clip LISP Sorry uninuplemented Mak

2015-06-11 Make a Lisp で Lisp 処理系を学んでつくる (with Crystal) mal Lisp Crystal インタプリタ式の言語処理系を書いたことが無かったので一度実装してみようと思って,この手のは Lisp が定番だということで,前々から気になっていた Make a Lisp (mal) に挑戦してみました. Make a Lisp (mal) とは Mak... 続きを読む

 
(1 - 25 / 53件)