Art Directing for the Web. Five minutes with CSS Template Areas
はじめに最近 Rust に興味が湧いて少しずつ触ってみています。学習用に何かガッツリと取り組める題材が欲しいなぁと思い、Writing An Interpreter In Go という本にある Monkey というプログラミング言語の Go 実装を Rust で書き直す、ということをやってみました。 そして、Rust で書き直しただけでは少し物足りない感じがしたので、先の本には登場していない要素として Formatter 及び、wasm32-unknown-unknown をターゲットに Wasm へコンパイルしブラウザで動作させるところまで実装しました。 ちなみに Writing An Interpreter In Go は、既に様々な方が読まれているような有名な本なので特別紹介はしませんが、かなりの良書なので「読んだことない!」という方は是非読んでみると面白いかもしれません。 『Wri
Rust for the web "Can we create web apps in Rust?" - Many people asked. So am I. My primary goal when I started learning Rust is to make a move from my ducky JavaScript tech stack (Node.js Express), that means, to make web apps in Rust. And after a year, I learned something. So I write this post to tell you my journal into Rust Web Programming. There are many approach to creating web apps in Rust,
機能改善 イベント資料の投稿において、SlideShareやSpeakerDeckと同様に、Docswellの資料を埋め込みスライド表示できるように対応いたしました。資料の投稿機能は、資料URLを指定するだけで、URLから取得した情報を、適した形でconnpass上で表示・共有できる機能です お知らせ connpassプライバシーポリシーの内容を一部更新しました。詳細につきましてはこちらをご覧ください。
disclaimer 追記で注意書き足すのはどうなんでしょうね。ということで追記です。 別にギョムでガンガン書いてるとかではないです。 ノミコンの方も含めてドキュメント全部読んだ、API 一通り眺めた、型推論というかリージョン推論部分の概要眺めた、関連する論文読んだ、言語触った、程度の人間が書いてます。 正しくない、不正確な部分もあると思います。 雑です、すいません。 TL;DR 的には、C++ 置き換えるための言語として作られたので当然 C++ にあった概念引き継いでますよみたいな話です。 以下追記前の元の全文。 以下の記事が結構人気と聞きました。 Rustは何が新しいのか(基本的な言語機能の紹介) - いもす研 (imos laboratory) ここでは、記事中の「新しくない」部分を historical な話を交えて説明する形で何か書きたいと思います。 記事を否定するようなものでは
Rust は、Firefox を開発する Mozilla が開発し、次世代ブラウザの開発に使っているプログラミング言語です。借用検査という概念を導入することによりメモリ安全およびデータ競合安全をコンパイラが保証する言語であり、2015年中頃の安定版のリリースあたりから次第に注目を集めるようになりました。 メモリ安全とは、メモリの範囲外アクセスや二重解放、ヌル参照、未初期化領域へのアクセスがない状態を表します。ただし、Rust の言うメモリ安全とは、メモリリークをしないことを保証するものではありません。 データ競合安全とは、あるひとつのオブジェクトに対しての読み込みおよび書き込みのが同時に起き結果が不定になる状態にならないことを表します。競合状態とは異なります。 無名関数という概念を様々な言語が次々と導入したように、プログラミング言語は相互に影響を及ぼし徐々に変化しています。Rust は「寿
Get full access to Programming Rust and 60K+ other titles, with a free 10-day trial of O'Reilly. There are also live events, courses curated by job role, and more.
cargo installで入れられそうなやつを雑にまとめてみた。 ripgrep(rg) - はやいgrep、あるいはag。 xsv - CSVツールキット。 alacritty - 速いらしいターミナルエミュレータ。 parallel - GNU parallelのRust版。 coreutils - GNU coreutilsのポート。使えないオプションや未実装のものも結構ある。 oxipng - pngファイルのサイズ圧縮。 rpc-perf - twitter製のrpcのベンチマークツール。memcachedの設定いじったときとか。 watchexec - ファイル変更にhookしてコマンド実行するユーティリティ。 flow - logのリアルタイム解析。 exa - lsのRust実装。デフォルトでいい感じになっているがコマンド体系が違うので慣れずに使わなくなってしまった。gi
κeenです。ここのところRustの開発ツール回りでリリースが続いてセットアップが楽になってるようだったので最新の情報をお届けします。 とりあえず私は既存の環境があるので一旦全て破棄してから再度セットアップしてみます。 Rustのインストール rustup.rs - The Rust toolchain installerがリリースされたので以下で一発です。 $ curl https://sh.rustup.rs -sSf | sh そして をシェルのrcファイルに書き加えたらOKです。 今のシェルにも反映するには同じく上記のコマンドを打ちます。 周辺ツールのインストール cargoがあるので楽ですね # コードフォーマッタ $ cargo install rustfmt # 補完、定義ジャンプなど $ cargo install racer まあまあ時間がかかります。 エディタ(Emac
おれはOSを書く仕事をしたこともあるし、今までの仕事はほとんどがいわゆるシステムソフトウェアだった。しかし多くの人はウェブアプリケーションとかそういうところからキャリアをスタートさせるみたいで、そういう人の中でちょっと意識の高い人は「自分はアプリのことしかわからないから低レベルのことを勉強しなきゃならないな」となる人がいて、例えば伊藤直也さんなんかはがんばってLinuxカーネルの勉強をしていたようである。というかそういう有名人に触発されて、低レベルもやらなきゃなみたいな風潮があるといってもよい。そもそも「低レベルとはなんぞや」みたいなところがおれの中にはあるが、OSがどう動いてるかとか、コンパイラは何をしているのかとかは、基本なのでざっくりとでも知っておくべきだとは思う。 ただ、そこからどう捻れたのかわからないが、「Rustは低レベルに入門する最後のチャンスだ!」「Rustを勉強すれば低レ
Firefoxの次世代Webエンジン「Project Quantum」発表。Rust言語によるServoの技術を採用し、2017年内に劇的な高速化を実現すると Project Quantumは、Mozillaが開発を推進しているRust言語による新型の高速ブラウザエンジン「Servo」の技術をFirefoxに取り入れ、PCやスマートフォンで普及しているマルチコアとGPUを積極的に活用することで、劇的な高速化を実現するとしています。 Pages will load faster, and scrolling will be silky smooth. Animations and interactive apps will respond instantly, and be able to handle more intensive content while holding consist
κeenです。 先日、先輩社員と話してるとシェルを作る話になりました。 だいたいのコンピュータサイエンスの学生なら学部生の頃に課題でシェルを作りますが数学科にいた私は作ったことありませんでした。 でも、その時「今ならシェルなんて作ろうと思えばすぐに作れますよ」なんて言っちゃったのでなんか作りました。 まあ、習作程度の雑なものです。 作ったのはこれ、KeenS/igaguri: my toy shell written in Rust。 名前は、Shellは木の実を覆う殻のようにカーネルを覆う殻とのことなのでRustのロゴに似てる毬栗を選びました。 パーサ パーサコンビネータライブラリのnomを使いました。 雰囲気こんな感じ。 named!(token<String>, map!(map_res!(is_a!("abcdefghijklmnopqlrstuvwxyzABCDEFGHIJKLM
「Rust 入門してる #1」 に続き、ぼちぼちと Rust を学んでます。 今日は所有権システムと可変性についてのメモです。 4 月 14 日に Rust 1.8 がリリースされたので、バージョン 1.8 のドキュメントを読んでます。 *1 所有権システムについては下記の 3 ページを読みました。 Ownership References and Borrowing Lifetimes 可変性については次のページ。 Mutability 基本的にはそんなに難しいことは書かれてないですが、後で説明される内容が出てきたり説明があまりうまくなかったりで理解が難しい感じがしますね。 まあざっくりと理解して読み進めていけば良さそうです。 所有権システム (Ownership system) Rust の最も独特で感動的な機能であり、Rust 開発者はこれに精通すべきとのこと。 メモリ安全がこの機能
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く