タグ

プログラミングとrustに関するItisangoのブックマーク (5)

  • はじめに

    Rust Playgroundではコンピュータに何もインストールすることなく、オンラインでRustを試すことができます。 インストールせずにRustを試す Rustup:Rustインストーラおよびバージョン管理ツール 一般によく採用されるRustのインストール方法は、Rustupというツールを介するものです。このツールはRustインストーラとバージョン管理ツールを兼ねたものです。 あなたはmacOSLinuxまたはその他のUnix系OSを使用しているようです。RustupをダウンロードしてRustをインストールするには、ターミナルで以下のコマンドを実行してください。それから画面に表示される指示に従ってください。Windowsユーザである場合には、「その他のインストール方法」を参照してください。 curl --proto '=https' --tlsv1.2 -sSf https://sh

    はじめに
  • 「名前の束縛」という名の束縛 - モナドとわたしとコモナド

    実用的なプログラミングにおいて、名前と概念を結びつける「束縛」はほぼ必須の概念である。しかし、その言葉には大きな誤解と混乱が根付いていた。 事の発端となったのは「Haskellにおいては、変数は値を代入するものではなく、値に束縛するものである」という議論である*1 *2。しかし、これは大きな誤解を孕んでいる。言葉の定義に立ち返ってその誤解を解いていこう。 束縛とバインディング 実は「束縛」には二つの意味がある。一つは、数学的な意味での変数の束縛*3、もう一つは、識別子と実体の結合という意味での束縛*4だ。 前者は変数の導入と言い換えることもできる。ラムダ計算におけるラムダ抽象と変数の関係もこれである。重要なのは、これはあくまで変数とそれを導入する抽象の関係であり、変数と実体の関係ではないことだ。 「AをBに束縛する」と言った場合後者で、プログラミングの文脈ではこちらを耳にすることが多いだろ

    「名前の束縛」という名の束縛 - モナドとわたしとコモナド
  • 2016年注目していきたい技術 | κeenのHappy Hacκing Blog

    2016年個人的に注目したいというか力を入れたいというか成行を見守りたいというか、そんな技術達を書き連ねていく。ものによっては「何を今更」と思うかもしれないがあくまで私にとって、だ。 順不同。 Apache Drill 公式。様々なデータソースに対してANSI SQLでクエリを投げれるやつ。 ビッグデータの時代にETL無しで迅速にデータを分析出来るようにするために開発されてるらしい。 様々なデータソースというのは当に凄くて、CSVとJSONをJOIN出来たりする。 あるいはTSVの生ログとRDBにあるマスタデータをJOIN出来たりする。 個人的にはデータベースから抽出したCSVにクエリを投げたい時に便利かな、と思って注目してる。viewや一時テーブルを作る権限がないデータベースだってある。 あるいは、Zookeeperを使って分散モードで実行も出来るのでBigQueryみたいなのをオンプ

    2016年注目していきたい技術 | κeenのHappy Hacκing Blog
  • libtrusterdをRustで動かした: misc

    おはようございます。奥さん出張中の息子達との実家生活もそろそろ終了です。kjunichiです。 TL;DR https://github.com/trusterd/libtrusterd/tree/master/examples/trusterd_rs 初めに Rustも1.0がリリースされたり、rebuildfmでもRustが話題になった回もあったので、また、懲りずにやってみることにした。 libtrusterdをRustで動かそうとして学べたこと Cの文字列を扱う 以前は、 title.with_c_str(| title | unsafe { cvNamedWindow(title); } と変換していたところ、1.0以降は以下のようになった。 use with Gist Search Link https://doc.rust-lang.org/std/ffi/struct.C

    libtrusterdをRustで動かした: misc
  • システムプログラミング言語 - saneyuki_s log

    第7回くらいのServo Readingで話したことをざっくりまとめた。誰がどれを話したかはmangleしてあるので御容赦を。 個人的にざっくりとTwitterなどなどをクロールして得た感想だけど、GoはCompiled Pythonともいうべき立ち位置な気がする。PythonとかPerlとかRubyとかシェルスクリプトとか以上C未満な箇所を、JavaScalaよりももっとスマートに置き換える、そういう意味での「システム」開発言語。 対する?Rustは、カーネルとかブラウザエンジンとかゲームエンジンとか、ハードウェアに近いエリアの計算機資源をがしがしと叩きまくるための言語。C/C++の面倒くさい因習やエクストリームな部分をうまく隠蔽しつつ、時々必要になったらunsafeブロックで例外的に許容する。その安全性の担保として、コンパイラを使った静的チェックをCPUとメモリにものを言わせてブイブ

    システムプログラミング言語 - saneyuki_s log
    Itisango
    Itisango 2013/10/15
    “Rustは、カーネルとかブラウザエンジンとかゲームエンジンとか、ハードウェアに近いエリアの計算機資源をがしがしと叩きまくる言語。”
  • 1