発表で紹介したやつのリンク https://github.com/k0kubun/gosick https://github.com/k0kubun/thunderbolt https://github.com/k0kubun/tetris https://github.com/k0kubun/go-termios
The latest news from Google on open source releases, major projects, events, and student outreach programs. We are excited to announce the first group of winners for the 2024 Google Open Source Peer Bonus Program! This program is designed to recognize open source contributors who have been nominated by Google employees for their exceptional contributions to open source projects. It is worth reiter
Rebuild A Podcast by Tatsuhiko Miyagawa. Talking about Tech, Software Development and Gadgets. 0:00 miyagawa: 今日で2回目だよね、これ出てもらうの。 lestrrat: 2回目ですね。 miyagawa: lestrrat さんこと、牧さんです。 lestrrat: 牧です。よろしくお願いします。 miyagawa: 牧さんといえば、前出てもらったときも Perl の関係の YAPC とかでお馴染みだと思うんですけど。最近、GitHub とか Twitter とかの活動状況見てると、別のことをずっとやっていそうな雰囲気がすごいあってですね。それは何かというと、Go、Golang ですね。で、結構その辺の話を他のゲスト、例えば typester さんのときとかにちょこっと話したりした
Go 1.2が12月1日にリリースされました。 そして、同時くらいに社内のGo readability approverの一員になったので、ちょっとCode Readabilityについて書いてみようと思います。 Google社内では、主要なプログラミング言語について Readability というのが存在します。 「C++のReadabilityを持っている」とは、C++のコードをスタイルガイドに従ったコードを読み書きできる能力があることを意味しています。社内のコードベースと一貫したコードで開発できるということです。Readabilityをもっていない人は、Readabilityを持っている人にcode reviewしてLGTM/Approvalを貰わないとコードをrepositoryにcommit/submitすることができません。 readability approverは、ある開発
“Yet another emulator?” There is no point beating around the bush, people have written Gameboy emulators before with great success, however I’ve always been curious as to how they are done. This project was set up as a learning exercise to help me understand how the basic principles of how computers function at the lowest level and how you can simulate them in software. Since then it’s become my s
Goでは、Example用のコードをgodocに表示させたり、テストとして実行して結果をチェックをすることができます。Example用のコードを書いて、それをドキュメントにコピペする作業や、その内容が古くなって動かないということから開放してくれます。 この仕組についてはtestingパッケージに説明があります。 testing - The Go Programming Language http://golang.org/pkg/testing/ 実際に適当なパッケージを作って試してみます。パッケージ名をexexとします。 $ mkdir -p go-example-example/src/exex $ cd go-example-example $ export GOPATH=`pwd` 適当に関数や構造体を用意します。 go-example-example/src/exex/hello
Golangでスライスに対して、 map, filter(select), some(any), every(all), reduce(inject, foldl), reduceRight(foldr)を作る関数を書いてみました。 静的型言語でジェネリックがないGoだと、それらの関数そのものは書けない、もしくは書けても特定の型に専用か、interface{}を使うことになって使いにくくなってしまうのでリフレクションを使って動的に関数を作ってみることにしました。そのせいで静的チェックがあまり効かないので、堅牢なものを書きたいときにはふつうにforとrangeを使うのがいいと思います。リフレクションを使った例としては面白い気がしました。 var twiceInt func([]int) []int enumerable.MakeMap(&twiceInt, func(i int) int {
先日、Go言語バージョン1.1がリリースされました。安定しているのは勿論、幾つか新機能が追加されましたが、何よりもパフォーマンスチューニングが施された一番嬉しいですね。 Go 1.1 performance improvements | Dave Cheney This is the first in a series of articles analysing the performance improvements in the Go 1.1 relea... http://dave.cheney.net/2013/05/21/go-11-performance-improvements さて今日はVimを使ってGo言語を開発する方法を紹介したいと思います。 VimでGo言語を開発するには、Go言語のリポジトリに含まれる misc/vim にランタイムパスを追加します。以下を vimr
公式サイト A Tour of Go Web上で実行しながら学ぶことができる公式のチュートリアルです。 チュートリアル 公式のチュートリアルです。初学者向けからジェネリクスのチュートリアルなども用意されています。 A Tour of Goが終わった後に取り組むと良いでしょう。 Go Wiki Go Code Review Commentsなどが掲載されているGitHub上のWikiです。 パッケージドキュメント 標準パッケージやサードパーティ製のパッケージのドキュメントが見れるサイトです。検索もできます。 入門 プログラミング言語Go完全入門 筆者が作っている巨大なGoの入門資料です。なぜGoが作られたのか、から最新のジェネリクスの情報、静的解析まで扱っています。 Gopher道場 Goを体系的に学べる場です。10時間くらいある動画教材(自習室から入手可)もあります。 Go の最初の手順
ゴルーチンによる Lisp Future 形式の実現 2013-04-19 (鈴) 1. はじめに 2. インタープリタのスレッド・セーフ化 3. Future 形式と Force 関数の実装 4. 4 コア CPU での高速化の実験 5. おわりに src/lisp/data.go: cons セルとシンボルその他 (オリジナルとの差分) src/lisp/env.go: 環境と評価器 (オリジナルとの差分) src/lisp/globals.go: トップレベルの環境 (オリジナルとの差分) qsort.l: クイックソートのプログラム例 README.txt 他のファイルについてはオリジナルを参照 lisp-25-04-16.tar.bz2: ソース一式: 16661 バイト 1. はじめに 近年普及したマルチコア CPU の能力を活用するために,プログラムを手軽にコンカレント化でき
Go 言語による簡単な Lisp 2013-04-04 (鈴) 1. はじめに 2. 字句解析 3. 構文解析 4. 環境と評価器 5. おわりに tiny-lisp.go: 主手続き src/lisp/data.go: cons セルとシンボルその他 src/lisp/env.go: 環境と評価器 src/lisp/globals.go: トップレベルの環境 src/lisp/interp.go: ファイルや文字列を入力とするインタープリタ src/lisp/lex.go: 字句解析および構文解析 8queens.l: 8クイーン問題のプログラム例 (Let Little Lambda Lisp be a Little Lazy §7 から再掲) README.txt lisp-25-04-01.tar.bz2: ソース一式: 11728 バイト 1. はじめに Go 言語による有理数電
history 13/3/31 Tag について追加 intro Go を触ってて interface を用いた設計がまだまだよくわかってなかったので、一旦まとめることにしました。 Go には明示的な継承の機能は無く、 interface も例えば Java のそれとはかなり毛色が違うので、(Class ではなく) Struct の設計に結構癖があると感じます。 Go の interface は言語設計的にもかなり尖っていて、 Go という言語を強く特徴付けていると同時に、 Go 言語自体の開発者たちもこの機能をかなり重要視しています。 例えば、 Go の開発者の一人である Russ Cox 氏によれば Go's interfaces―static, checked at compile time, dynamic when asked for―are, for me, the most
新機能 バウチャーによるイベント管理機能をリリースしました。協賛企業の社員や関係者のイベント参加を円滑にすることに活用いただけます。詳しくはヘルプページをご覧ください。 新機能 connpass APIに新しく、所属グループを取得できるAPIやユーザーの参加イベントAPIを追加しました。各APIの詳細な仕様や利用方法につきましては、 APIリファレンス をご確認ください。またAPI利用希望の方は connpassのAPI利用について をご覧ください。 お知らせ 2024年9月1日より、connpassではスクレイピングを禁止し、利用規約に明記しました。以降の情報取得にはconnpass APIをご利用ください。APIご利用についてはヘルプページをご確認ください。
最近バージョン1リリースを目標にガチャガチャと凄い勢いでパッケージ構成が見直されていますが、その中でGo言語向けに新しいパッケージが入りました。 これまででもsqlite3やmysql向けに何人もの人が個性的なドライバを書き、インタフェースも揃わず、中には開発をやめ、それを使ったアプリケーションの開発も止まるという悪循環になろうとしていました。 そんな中入ったのがdatabase/sqlです。Go言語としてはデータベースの枠組みだけ提供し、ドライバはサードパーティに作ってもらうというもくろみです。これによりデータベースに関してはドライバを構成通りに開発すれば使用者側は同じインタフェースで呼び出せるという物です。PerlでいうDBIですね。 誰もあまり手を付けてなさそうだったので、3本ばかしドライバを書かせて頂きました。 SQLite3 mattn/go-sqlite3 - GitHub s
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く