タグ

goに関するvoidy21のブックマーク (27)

  • Big Sky :: GoのGTKバインディングで簡単なTwitterクライアント

    GoGTKバインディングを現在作業中なのですが、ようやく簡単なTwitterクライアントくらいならば作れる程度に出来上がってきたのでご報告。 mattn's go-gtk at master - GitHub Go binding for GTK http://github.com/mattn/go-gtk イベントハンドラがJavaScriptっぽく書けるので、結構見通し良いコードになります。 package main import "gtk" import "gdk-pixbuf" import "unsafe" import "http" import "json" import "io" import "os" import "strconv" import "strings" import "reflect" func url2pixbuf(url string) *gdkpi

    Big Sky :: GoのGTKバインディングで簡単なTwitterクライアント
    voidy21
    voidy21 2010/01/16
  • Big Sky :: 非同期UI

    最近、GoGTKバインディングを作ってるのだけど、先日ようやく簡易twitterクライアントを作れるまでに至ったのだが、そのtwitterクライアントの「タイムライン更新」ボタンを押した時に画面をブロックさせずに画面を更新する方法を考えてた。 Perl-GTKならばCoroを使ってこうするだろうか。 use strict; use warnings; use Gtk2 '-init', '-threads-init'; use AnyEvent; use Coro; use Coro::Timer; my $window = Gtk2::Window->new('toplevel'); $window->signal_connect( destroy => sub { exit; } ); my $vbox = Gtk2::VBox->new; my $button = Gtk2::Bu

    Big Sky :: 非同期UI
    voidy21
    voidy21 2010/01/08
  • Go の X11 ライブラリを試してみる - moriyoshiの日記

    default ブランチの方の pkg/exp 以下にすでに含まれている、パッケージ draw/x11 を試してみた。このパッケージは Xlib を介さず、直接 X プロトコルを喋って X サーバと通信して画面描画を行うようになっている。まったくよく実装するよほんとに。 次のプログラムは、以下のようにカラフルな円をひたすら描画するもの。 ブレゼンハムとかもう忘れてるので Wikipedia からちょっとパクりました。ごめんなさい。 package main import ( "os"; "fmt"; "image"; "draw"; "draw/x11"; "rand"; "time" ) func drawHorizontalLine(img draw.Image, sx int, ex int, y int, c image.RGBAColor) { if sx > ex { t :=

    Go の X11 ライブラリを試してみる - moriyoshiの日記
    voidy21
    voidy21 2009/12/16
  • Big Sky :: GoのGTKバインディング進捗

    GtkTreeModelとか面倒くさい部分に差し掛かってます。でもこれないとコンボボックスもツリーもリストも作れないんすよね。 いまんところこんな感じ。 イベントクロージャが内包出来てJavaScriptを書いているかの様にGTKプログラミングが出来ています。 //-------------------------------------------------------- // GtkButton //-------------------------------------------------------- button := gtk.ButtonWithLabel("Button with label"); button.Clicked(func(w *gtk.GtkWidget, args []unsafe.Pointer) { print("button clicked:

    Big Sky :: GoのGTKバインディング進捗
    voidy21
    voidy21 2009/12/16
    おおお
  • GoとJavaScript ①golangのコンパイルがきわめて高速って、実はブラウザ・・・ - Weblog towards a Word-Progress

    プログラミング言語Go(以下、golang)のコンパイルはきわめて速い。 return文が残念とかgenericsないのー・・・とか言われているgolangであるが、コンパイルが遅いとこぼしている人はたぶんいない。 (というか、さすがにコンパイルの遅さが問題になるレベルのコードを書いているのは、現時点ではGoogleの中の人だけだろう) で、これは何百万行とかになるソースコードをGoogleの中の人たちは書くことがあって、そうした場合に生産性を確保するため・・・とか言われて、そりゃGoogle様だし・・・とかみんなそこは突っ込んでない感じなんだけれど、ほんとだろうか?? 落ち着いて考えてみるに、 まだまだ小学生レベルの完成度のgolangが、Googleの中 で近い将来に広く使われるとは、ちょっと自分には思えない。 ・・・となると、結果的に相当の話題となったgolangは、まずはGoog

    voidy21
    voidy21 2009/11/28
  • Big Sky :: Goでmigemoライブラリ作った。

    そろそろgoでライブラリを作る頃かなーと思って、migemo(cmigemo)を使う物を書いてみた。 mattn's go-migemo at master - GitHub migemo extension for go コードの中ではKoRoNさんのcmigemoを使った。コードは少ないけど実は少しハマって、今日はそれを書き記したい。 migemoでは、正規表現文字列やパターン文字列をunsigned char*で引数として扱っているんですが、cgoを使ったC言語ライブラリの取り込みを行う場合、char*と型が合わなくてコンパイルエラーが発生する。しかしC言語の様に *C.uchar(p) 等と書けない(これだとucharの参照になってしまう)Go君は、致し方なくchar*を引数に持つwrapper関数を用意するしかないんだけど、実はcgoにわせるgoファイルでは package m

    Big Sky :: Goでmigemoライブラリ作った。
    voidy21
    voidy21 2009/11/28
  • Go をちょっと試すのに便利な wrapper 二題 - 酒日記 はてな支店

    8g とか 6l とかのコマンドが (分かりにくい|打ちづらい) ということに定評のある Go ですが、パッケージを作るような場合は Makefile をこんな風に書くと make 一発でことが済むので簡単です。via http://blog.yappo.jp/yappo/archives/000697.html でもちょっとした code snippet を試すのに Makefile を用意するのも面倒だし、ということでこんなやっつけ wrapper を二つ書きました。 gorun http://gist.github.com/239255 引数に与えたソースを complie, link, 実行する perl script. $ cat hello.go package main import "os" func main() { arg := os.Args[1]; os.Stdou

    Go をちょっと試すのに便利な wrapper 二題 - 酒日記 はてな支店
    voidy21
    voidy21 2009/11/25
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Google's Go Guide - プログラミング言語Goの情報サイト

    随時更新して行きます。イベントサイト公開後に中止、延期、オンラインまたはオフライン化するケースがありますので、必ずリンク先の情報をご確認ください。 5/3(金) 10:00〜12:00 [オンライン] Women Who Go Tokyo 読書会 - Go言語による分散サービス#115/3(金) 17:00〜19:00 [岡山県岡山市] Goルデンウィークだよ、Goをやろう Day35/4(土) 17:30〜19:30 [岡山県岡山市] Goルデンウィークだよ、Goをやろう Day45/5(日) 18:00〜20:00 [岡山県岡山市] Goルデンウィークだよ、Goをやろう Day55/7(火) 20:00〜21:00 [オンライン] Goオンラインもくもく会 #25/10(金) 19:30〜21:20 [東京都台東区] Asakusa.go #25/11(土) 10:00〜12:00 [

    voidy21
    voidy21 2009/11/23
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

    voidy21
    voidy21 2009/11/23
  • プログラミング言語「go」は本当に速い? | Happy My Life

    C/C++で書いたのと同じくらい速いよ、とWebサイトにも書かれているgoだが、そのgoのベンチマークが言語別のベンチマーク比較サイトであるThe Computer Language Benchmarks Gameで計測できるようになっていた。 さて、当にC/C++並に速いのか、お手並み拝見。 実行環境 Ubuntu 9.04 (64bit版) quad-core 2.4Ghz Intel® Q6600 4GB メモリ ベンチマーク結果(C++と比較) 詳細はGo 6g ÷ C++ GNU g++にて。 ソースコードは、goが短い(最大1/3)が、実行速度、メモリ消費量は C++の圧勝(最大58倍の差)。 ベンチマーク結果(Java6 Serverと比較) 詳細はGo 6g ÷ Java 6 -serverにて。 メモリ消費量はgoの方がよい結果を出しているが、実行速度はJavaと結構差

    voidy21
    voidy21 2009/11/18
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

    voidy21
    voidy21 2009/11/18
  • はてなブログ | 無料ブログを作成しよう

    雨季のバンコク2泊4日旅行記 夏は苦手と言いながら、春先の憂を吹き飛ばしたくて、今年も海外旅行の予定をいれてしまった。昨年20年以上ぶりに海外に足を伸ばし、旅をすると人生の栞が増えることを実感してから、だんだん旅が好きになってきたように思う。 今年の行先は雨季まっさかりのタイ・バ…

    はてなブログ | 無料ブログを作成しよう
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

    voidy21
    voidy21 2009/11/16
  • Matzにっき(2009-11-13) - [言語] The Go Programming Language

    _ [言語] The Go Programming Language もう知っている人は知っているGoogleからのシステムプログラミング新言語Go。 すっかり祭りには乗り遅れた感があるけど、少しだけコメントをつけておこう。 目次 言語仕様 言語実装 技術的でない話 まとめ 言語仕様 総合的に見て、非常にバランスを考えているように思える。 JavaC++のような複雑さを排して、シンプルに徹する一方、 言語好きを刺激するような新しいアイディアをそこかしこに配置している。 特徴である「コンパイルが高速」というのも、 このシンプルな言語仕様が寄与していると思われる。 個人的に、注目したのはオブジェクト指向機能と、並列機能。 interfaceによる、継承のないオブジェクト指向(duck typing)は、かなり私好みである。 昔からこういう言語が欲しかった。interfaceのみ動的結合を許す

    voidy21
    voidy21 2009/11/16
  • 限界を打ち破るはScalaかGoogleのGoか (「Scala入門」に勝手流追記その2) - Weblog towards a Word-Progress

    Scala入門 勝手流追記 その2。元記事が大上段なので、こちらも大上段に。 Scalaで実サービスをリリースしている著者らのJavaの限界を超えて実用化を目指す新開発言語「Scala」のメリットとは~前編(codezine誌) 今回は、codezine、1位と2位の記事がScalaGoであること(11/12時点)にちなんで両者を比較しつつ、元記事に一点だけ突っ込む。 JRuby/Jythonなどスクリプト言語由来の言語と異なり、Javaと同様の静的コンパイル言語であるScalaは、Javaバーチャルマシンの主流言語の座をめぐり、Javaに挑む挑戦者に位置づけられる。 その試みが成就するのは、早くとも数年後であろうが、Javaの袋小路を打ち破る方向性をScalaは示したといえる。 Javaに対するScalaの利点は、以下の3つであろう。 不変性(val)の上手な導入による容易な並列処

  • inforno :: 個人的Go雑感&amp;メモ

    GoogleGoという新しいプログラミング言語 を出したようで。早速、インストールして軽くドキュメントを流し読みしてみました。 英語なんて読みたくないよ、という人もいるかもしれないし、誰かの役に立つかもしれないので自分用メモおいときます。完全に自分用なんである程度他の言語の知識がある人向けな上、ざっくり流し読みなんで間違ってるかも。 どんな言語? ネイティブコードを吐く、コンパイル型。 速度はCレベル。 GC搭載。ポインタはあるけど、ポインタ演算はできません。 各種アーキに最適化された、それぞれのコンパイラセットを持ちます。例: 6g, 6l : amd64 8g, 8l : i386 linux, mac, naclに対応。 動的型言語と静的型言語のおいしいとこどり。 concurrent処理が組み込まれてます。 個人的雑感 こんな言語設計思想かなあと感じたり とにかく、シンプルな言

    voidy21
    voidy21 2009/11/15
  • 「10〜30分で何となく分かるGo」という資料 - moriyoshiの日記

    Python Hack-a-thon #2 のために作りました。単なるまとめなので、間違いがあったらぜひ指摘してください。 10〜30分で何となく分かるGoView more documents from ... .... 追記: サンプルコードの zip はこちら

    「10〜30分で何となく分かるGo」という資料 - moriyoshiの日記
    voidy21
    voidy21 2009/11/15
  • go言語snippetと注意点 - ラシウラ

    以前書いたpythonicなA*関数をままgoで書いてみました。 astar.go: http://gist.github.com/233012 astar_main.go: http://gist.github.com/233013 参考python版: http://gist.github.com/147645 そのとき調査で理解したものを紹介します。 0値 goの0値(初期値を設定しないときのデフォルト値)がどうなるか、そしてどう比較するかの例です。 http://golang.org/doc/go_spec.html#The_zero_value package main import "fmt" type location struct { x, y int } func main() { var v location; fmt.Printf("%v\n", v); //fmt.

    go言語snippetと注意点 - ラシウラ
    voidy21
    voidy21 2009/11/15
  • Go言語は良い言語です - Yet Another Ranha

    http://atnd.org/events/2115 というイベントがありました。11月14日に、Google渋谷オフィスでありました。 まずはじめに、Googleさんには場所を提供してもらった上にGoogleの中の人にも参加してもらって結果盛り上がったので当にありがとうございましたとしか。ありがとうございました。 で、次に、Go言語のマスコットキャラクターの名前は一部の賛同を得て勝手に「たわしくん(TAWASHI-KUN)」という事にしておきました。ダメだと思います。でもなんという名前なんでしょう。 今調べると、ちゃんと名前があったので、駄目です。 (http://japan.cnet.com/special/story/0,2000056049,20403390,00.htm) 取りあえずgoコンパイラ(8g)が落とせたかどうかですけどまぁ落とせませんでした。 どういう方向で攻めた

    Go言語は良い言語です - Yet Another Ranha
    voidy21
    voidy21 2009/11/15