1 名前:login:Penguin [2009/07/05(日) 14:31:59 ID:IdyQQEIy.net] C#ライクなGNOMEのプログラミング言語Valaについて語り合いましょう 【GNOME Live!】 Vala live.gnome.org/Vala Tutorial live.gnome.org/Vala/Tutorial 【SourceForge】 ValaによるGNOMEアプリケーションのプログラミング sourceforge.jp/magazine/08/12/15/0143207
51 名前:login:Penguin mailto:sage [2009/10/14(水) 02:45:41 ID:Tl4bDpTI.net] 本当だ。言語としてはまだまだだな。 Cで書くより多少はましなの?
52 名前:login:Penguin mailto:sage [2009/10/14(水) 03:13:48 ID:cB0J9abS.net] Javaに 似せた Delphi、に似せた C のシンタックスシュガー もうわけわかめ
53 名前:login:Penguin mailto:sage [2009/10/15(木) 20:54:17 ID:DgT1fIFi.net] >47 遅レスだけど、gdkリファレンス見ると、Gdk.Deviceから辿るのが正解かも。 今回の事に限らず、Valaを使う時はValadocだけじゃなくて、 大本のリファレンスも見た方が良さげ。 >49 俺にとっては素のGObjectはIDEとかのサポートがないとマジで無理。
54 名前:47 mailto:sage [2009/10/16(金) 00:10:52 ID:6MqmLXIA.net] >>51 どうも。CもValaもよく知らないのですがgdkリファレンスと見比べると C側の引数がdoubleの配列のポインタで、Vala側はdoubleなんですよ この場合どのように宣言して渡せばよいのでしょう? library.gnome.org/devel/gdk/stable/gdk-Input-Devices.html#gdk-device-get-axis references.valadoc.org/gdk-2.0/Gdk.Device.get_axis.html
55 名前:48 mailto:sage [2009/10/16(金) 03:59:17 ID:csATjUPX.net] >>48 のページをちゃんと見てみたら、Not Available に含まれているのは (自分にとっては)それほど重要じゃない機能とか、そのうち実装されそうな ものばかりなんで、Vala は既に十分な機能が実装されていると思っていい 気がする。 ただ、 ・No operator or indexer overloading ・No method or constructor overloading だけはかなり痛いな。
56 名前:login:Penguin mailto:sage [2009/10/17(土) 01:48:24 ID:LT64hAQX.net] あー今見てみたけど、多分Valaのバグだね。vapiと実際のapiの型が合ってないよ。 ちなみにgdk_device_get_axis自体の使い方は www.codase.com/search/display?file=L2dlbnRvbzIvdmFyL3RtcC9yZXBvcy9jb2Rhc2UuYy9ndGsrLTIuNi43L3dvcmsvZ3RrKy0yLjYuNy90ZXN0cy90ZXN0aW5wdXQuYw==&lang=c# にあった。
57 名前:login:Penguin mailto:sage [2009/10/21(水) 03:08:37 ID:L4IsJKoL.net] vapiファイルって、C言語のヘッダーファイルから 自動生成出来ないもんでしょうか?
58 名前:login:Penguin mailto:sage [2009/10/21(水) 18:13:29 ID:MXQIE8Bx.net] >>55 live.gnome.org/Vala/Bindings ここにやり方が書いてるんだけど、、、うちではうまくいかない。 $ /usr/bin/pdfinfo -v pdfinfo version 0.12.0 Copyright 2005-2009 The Poppler Developers - poppler.freedesktop.org Copyright 1996-2004 Glyph & Cog, LLC できたら教えてください。
59 名前:login:Penguin mailto:sage [2009/10/22(木) 22:03:39 ID:s2CTYeqV.net] チュートリアルに一部記述が足りないね。 vapiファイルの生成手順の最後にvapigenを実行してるけど、 --pkg=gdk-2.0とか、依存するpkgの指定が必要だね。
60 名前:login:Penguin mailto:sage [2009/10/23(金) 00:06:30 ID:m2ioZZnh.net] >>57 thanks! $ vapigen --library poppler-glib poppler-glib/poppler-glib.gi --pkg cairo --pkg gtk+-2.0 これでうまく行きました。
61 名前:login:Penguin mailto:sage [2009/10/23(金) 03:52:26 ID:icsRYQ9+.net] あれ?gdbで普通にソースレベルデバッグが出来てるじゃん。 なんかスゲーな
62 名前:login:Penguin mailto:sage [2009/10/24(土) 16:09:46 ID:KyQnbJej.net] さんぷるこーど https://code.launchpad.net/lucruri forja.cenatic.es/plugins/scmsvn/viewcvs.php/modules/?root=desktopsl&pathrev=108 code.google.com/p/xnoise/ ふたつめのりんくは 10. のコードがさんこうになる こまかいぶぶんのはなし trac.usefulinc.com/doap/wiki/Sites www.vala-project.org/doc/vala-draft/interfaces.html www.mail-archive.com/vala-list@gnome.org/msg01652.html これくしょんとか www.mail-archive.com/vala-list@gnome.org/msg03130.html www.puppylinux.com/genie/strings.htm mail.gnome.org/archives/svn-commits-list/2009-September/msg01357.html gitorious.org/dova/
63 名前:login:Penguin mailto:sage [2009/10/24(土) 18:53:22 ID:KyQnbJej.net] >>60 補足: git.gnome.org/cgit/vala/log gtk+-2.0.vapi の gtk_tree_view_set_row_separator_func binding バグ修正に注意 (バージョンvala 0.7.7)
64 名前:login:Penguin mailto:sage [2009/11/04(水) 01:52:23 ID:IwHtn+sQ.net] 試しに、libgeeをC言語から使ってみたけど、いちいち抽象型とか イテレーター経由でアクセスするのが面倒だな。 ほとんど必須のライブラリなのに、GLibには取り込まれそうにないな。
65 名前:login:Penguin [2009/11/06(金) 01:21:47 ID:xHV7v7sp.net] 0.7.8リリースアゲ というか誰か内容を解説してくれ…0.7.7も今一分かってないし
66 名前:login:Penguin mailto:sage [2009/11/06(金) 15:30:15 ID:te0Yv9Ih.net] 各リリースの変更点なら live.gnome.org/Vala/Release をみればいいわけだけど? ドキュメントの翻訳でもしようかと思ったけどプロジェクトがもう少し落ち着いてからの方がいいよね?
67 名前:login:Penguin mailto:sage [2009/11/07(土) 00:17:25 ID:guTE5WEt.net] >>64 翻訳は、1.0が出てからで良さそうですね。 遊びで使う分には、十分の品質なので、 ドキュメントがあれば助かります。
68 名前:63 mailto:sage [2009/11/07(土) 03:11:53 ID:yhTezjEw.net] とりあえず、MLをあさったら0.7.8の解説があったんでのせとく。 String templates ---------------- string name = "Vala"; stdout.printf (@"Hello, $name!\n"); stdout.printf (@"2 + 3 = $(2 + 3)\n"); Non-null cast ------------- void main () { string? a = "hello"; string b = (!) a; } Chain-up for gobject-style construction scheme ---------------------------------------------- class MyWindow : Gtk.Window { public MyWindow () { Object (type: WindowType.POPUP); } construct { // ... } }
69 名前:login:Penguin mailto:sage [2009/11/07(土) 23:51:36 ID:93ohWCzP.net] 現状だと小数点末尾だけの更新でも、割と大きな変更をしてくるから、 ドキュメントを書いてもしょうがないかもね。 とりあえず周辺ツールのコンパイルができなくなっているのは 如何なものかと…
70 名前:login:Penguin mailto:sage [2009/11/08(日) 10:50:54 ID:82HSJzyW.net] う〜ん。vtgがビルドできないのか。困ったな。
71 名前:login:Penguin mailto:sage [2009/11/08(日) 11:03:50 ID:82HSJzyW.net] >>68 と思ったら、libgeeの問題だった。
72 名前:login:Penguin mailto:sage [2009/11/16(月) 06:00:06 ID:xOgX0uuq.net] ネタ投入 Javaとの比較 ttp://live.gnome.org/Vala/ValaForJavaProgrammers Vala(というかGObject)のガベコレ解説 ttp://live.gnome.org/Vala/ReferenceHandling 追加された。
73 名前:login:Penguin mailto:sage [2009/11/17(火) 03:13:15 ID:09KgNArQ.net] gdbのVala対応パッチの流れを追いかけていたら、5月頃に2回目のパッチ を送ったきり音信不通になってるっぽいな。 うまくいけば、7.0に入ったかもしれないのに…残念 ちゃんとマージされるまで面倒見てくれる人が現れてくれ!
74 名前:login:Penguin mailto:sage [2009/11/23(月) 17:58:45 ID:W0dlOsET.net] cat ../gee/gee.vapi ../ccode/ccode.vapi ../vala/vala.vapi ../codegen/codegen.vapi > vala-1.0.vapi git kara totte kite build suru. sikasi vala build on windows tte dou yatten noka wake wakame...
75 名前:login:Penguin mailto:sage [2009/11/28(土) 16:57:31 ID:RXaAAVqp.net] How to: install recently vala from git repository. $ sudo apt-cache showpkg valac (confarm vala-0.7.0 > valac ...) $ sudo apt-get install valac $ git clone git://git.gnome.org/vala $ cd vala $ ./autogen.sh --prefix=/usr; make; sudo make install
76 名前:login:Penguin mailto:sage [2009/11/28(土) 17:01:26 ID:RXaAAVqp.net] $ valac --version Vala 0.7.6 <= ubuntu 9.10 Vala 0.7.9 <= git repository
77 名前:login:Penguin mailto:sage [2009/12/02(水) 03:57:38 ID:VTtWLB6g.net] ネタ投入 本家のページにCharacter Sampleが追加されたけど、 string は unowned しないと丸ごとコピーされちゃんうんだよね。 int main() { string test = "hoge"; string copy1 = test; unowned string copy2 = test; stdout.printf("%p\n", test); stdout.printf("%p\n", copy1); stdout.printf("%p\n", copy2); return 0; } ↓ 0x9f667d0 0x9f667e0 0x9f667d0 とするとよく分かる。
78 名前:login:Penguin mailto:sage [2009/12/05(土) 17:02:41 ID:gmW717rE.net] www.radare.org/get/lacon-radare-2009/ nibble.develsec.org/?cat=7 radare2 ga jimi ni subarasii ...
79 名前:login:Penguin mailto:sage [2009/12/06(日) 19:17:44 ID:Ly6v7DBG.net] www.mail-archive.com/vala-list@gnome.org/msg03480.html what's the [SimpleType]? i first looking it ...
80 名前:login:Penguin mailto:sage [2009/12/07(月) 18:43:54 ID:VTAkmaDu.net] >>73 $ ./autogen.sh --prefix=/usr --enable-vapigen $ make $ make install
81 名前:login:Penguin mailto:sage [2009/12/07(月) 19:10:53 ID:obEYb5JW.net] >>74 ppaあるよ https://launchpad.net/~vala-team/+archive/ppa
82 名前:login:Penguin mailto:sage [2009/12/07(月) 23:22:44 ID:hzy1fvm3.net] >>79 74と別人だけどサンクス。うおー便利だ
83 名前:login:Penguin mailto:sage [2009/12/08(火) 03:59:32 ID:zChQtxr1.net] Emacs用のValaモードがショボショボなんで改良しようと思ってるけど なかなかムズいのー Semanticにも対応させたいし、まぁぼちぼちやっていくしかないか。
84 名前:login:Penguin mailto:sage [2009/12/13(日) 19:50:40 ID:BMvvMM6L.net] urmpi automake autoconf libtool flex bison make
85 名前:login:Penguin mailto:sage [2009/12/20(日) 16:13:54 ID:0O/mIIzO.net] Vala Releases Vala 0.7.9 released on December 19, 2009 Changes * Support array and string slicing. * Add --symbols commandline option. * Add avahi-gobject bindings (Sebastian Noack). * Add ccss-1 bindings (Ali Sabil). * Add libarchive bindings (Julian Andres Klode). * Add libmagic bindings (Jens Georg). * Add readline bindings (Jukka-Pekka Iivonen). * Add twitter-glib-1.0 bindings (Adrien Bustany). * Many bug fixes and binding updates. git repositoryにはあったようだけれど、 公式?が更新されてWindows版バイナリもDL出来る状態だったので一応報告
86 名前:login:Penguin mailto:sage [2009/12/21(月) 02:33:26 ID:2kmz3FOO.net] 相変わらず変更点の解説がないな… * Support array and string slicing. これはどういうことだ?
87 名前:login:Penguin mailto:sage [2009/12/21(月) 02:47:50 ID:2kmz3FOO.net] テストコードが追加されてた // slices t = s[2:4]; assert (t.length == 2); assert (t[0] == 'l'); assert (t[1] == 'l'); っていうことだな。
88 名前:login:Penguin mailto:sage [2009/12/27(日) 19:03:24 ID:nUx8bWnY.net] gtk-button.vala:8.5-8.26: error: The name `connect' does not exist in the contex t of `null' window.destroy.connect (Gtk.main_quit); ^^^^^^^^^^^^^^^^^^^^^^ gtk-button.vala:10.5-10.26: error: The name `connect' does not exist in the cont ext of `null' button.clicked.connect ((source) => { ^^^^^^^^^^^^^^^^^^^^^^ Compilation failed: 2 error(s), 0 warning(s) 0.5.4 でコンパイルしてみたらエラーが出て通らなかた イベントハンドルは += ではなくてなるべく connect を 使うのが推奨されてる…とかどこかで読んだような記憶があるようなないような…
89 名前:login:Penguin mailto:sage [2010/01/01(金) 00:06:48 ID:sfh07iOR.net] あけおめ。 今年こそ1.0がリリースされますように( ̄人 ̄)
90 名前:login:Penguin mailto:sage [2010/01/05(火) 02:22:15 ID:68YcuKLZ.net] >>86 しかし古いバージョン使ってるな。今の最新は0.7.9なんでそれで 一回コンパイルしてみ。
91 名前:login:Penguin mailto:sage [2010/01/06(水) 02:08:55 ID:sJSR3xqj.net] www.mechanicalcat.net/richard/log/Python simple な静的 html 出力ツール entitycrisis.blogspot.com/2009/08/simple-pygame-wrapper.html billmill.org/multi_line_lambdas.html mail.python.org/pipermail/python-dev/2006-February/060654.html 下から順に時系列で、なんとなく流れとして
92 名前:login:Penguin mailto:sage [2010/01/14(木) 13:47:25 ID:f9MyO6F7.net] // helloworld.cs using System; using System.Text.RegularExpressions; class HelloWorld { public static void Main() { System.IO.StreamReader sr = new System.IO.StreamReader(@".\\hello.gs"); //内容を
93 名前:すべて読み込む string gscode = sr.ReadToEnd(); //閉じる sr.Close(); Console.WriteLine(gscode); Regex r = new Regex(@"\(.*?\)", RegexOptions.Singleline); System.Text.RegularExpressions.MatchCollection mc = r.Matches(gscode); foreach (System.Text.RegularExpressions.Match m in mc) { //正規表現に一致したグループを表示 Console.WriteLine(m.Value); string before = m.Value; string after = before.Replace("\r\n", "").Replace(" ", ""); gscode = gscode.Replace(before, after); } Console.WriteLine(gscode); } } >csc hello.cs これと等価なコードって vala だとどう書いたらいいか わからないんだよな… [] [ここ壊れてます]
94 名前:login:Penguin mailto:sage [2010/01/14(木) 13:52:45 ID:f9MyO6F7.net] [indent=4] def foo(arg1: string, arg2: string): string return arg1 + arg2 init print foo( "hello ", "world" ) print foo("hello ", "world") /* EOF */[indent=4] def foo(arg1: string, arg2: string): string return arg1 + arg2 init print foo( "hello ", "world" ) print foo("hello ", "world") /* EOF */ hello.gs はこんなかんじ 空白は半角に置換しないと動かないかも…
95 名前:login:Penguin mailto:sage [2010/01/14(木) 13:58:24 ID:f9MyO6F7.net] なんか張り間違えてるしorz
96 名前:login:Penguin mailto:sage [2010/01/30(土) 14:42:11 ID:0hh2Dj8z.net] www.newtek.com/lightwave/core/lightWave_3D_with_CORE_technology_Features_Document.pdf 次期 lightwave はQTなんだな... COLLADAにBulletにPython載るとか C単体でトランスレータで組むのは 厳しいというが現状という...
97 名前:login:Penguin mailto:sage [2010/02/11(木) 08:53:33 ID:OAcrTRrZ.net] trac.yorba.org/browser/shotwell/trunk/vapi/FStream.vapi?rev=1036 vapi is simple. or vapi maintenance is hard and hard ...
98 名前:login:Penguin mailto:sage [2010/02/13(土) 17:13:42 ID:fQoCmgtg.net] >>94 乙
99 名前:login:Penguin [2010/04/02(金) 00:33:45 ID:rvSB9vMK.net] 0.8.0リリース上げ! experimental な機能以外はバグフィックスが主なリリースだな。
100 名前:login:Penguin mailto:sage [2010/04/16(金) 19:47:55 ID:/6r9tkwK.net] .bashrc export GOROOT=$HOME/go export GOARCH=386 export GOOS=linux $hg clone -r release https://go.googlecode.com/hg/ $GOROOT $cd $GOROOT/src $./all.bash Note: fedora case selinux error: groups.google.com/group/golang-nuts/browse_thread/thread/5ffcecb0814b01b8 $hg clone https://gobuild.googlecode.com/hg/ gobuild $make error: gobuild.go:62: undefined: os.Dir edit: os.Dir -> os.PathInfo $make $cp gobuild $HOME/bin $hg clone https://gopages.googlecode.com/hg/ gopages $cd gopages $gobuild gopages.go $cp gopages $HOME/bin $gobuild main.go $./main gopages serving on :9999
101 名前:97 mailto:sage [2010/04/16(金) 19:52:41 ID:/6r9tkwK.net] >>97 ad-hoc rhtml like template is good stuff. ^^;
102 名前:login:Penguin mailto:sage [2010/04/21(水) 01:15:16 ID:nUefU5z/.net] テキストファイルを読み込んで string を返すようにしようと思ったら、 意外とすっきり書けないな。 一番シンプルに書こうとするとどんな感じになるかな?
103 名前:login:Penguin mailto:sage [2010/04/21(水) 01:41:59 ID:nUefU5z/.net] 自己解決した。 var file = new MappedFile ("hoge.txt", false); var text = (string) file.get_contents (); でいいかな。
104 名前:login:Penguin mailto:sage [2010/04/22(木) 23:52:50 ID:Nm7c6dz1.net] >>100 gitorious.org/lethal-works/valagtkdoc/blobs/master/sectionsgenerator.vala --pkg vala-1.0 参考になるかも
105 名前:login:Penguin mailto:sage [2010/04/25(日) 01:04:30 ID:j8R9B01z.net] ありがと。見たところ読み込みにはMappedFileを使っているみたいだから、 やっぱりMappedFileで良さそうだ。
106 名前:login:Penguin mailto:sage [2010/05/01(土) 18:58:09 ID:lTmE6Ym2.net] >102 ちょっと遅いけど。 live.gnome.org/Vala/GIOSamples こっちの方が、順次データを読み取っていく分でかいファイルを扱う時に良さげ。
107 名前:login:Penguin mailto:sage [2010/06/08(火) 02:51:18 ID:RC5oVszE.net] void main () { int[] a = { }; a += 1; a += 1; } これをCに変換すると static void _vala_array_add1 (gint** array, int* length, int* size, gint value) { if ((*length) == (*size)) { *size = (*size) ? (2 * (*size)) : 4; *array = g_renew (gint, *array, *size); } (*array)[(*length)++] = value; } static void _vala_array_add2 (gint** array, int* length, int* size, gint value) { if ((*length) == (*size)) { *size = (*size) ? (2 * (*size)) : 4; *array = g_renew (gint, *array, *size); } (*array)[(*length)++] = value; } と全く同じ関数が2つ出来るのは無駄過ぎる…。バグだよなぁ。
108 名前:login:Penguin mailto:sage [2010/06/08(火) 23:45:06 ID:RC5oVszE.net] 0.9.1 リリース記念上げ! 今年中に 1.0 のリリースもあるかな。
109 名前:login:Penguin [2010/06/22(火) 00:49:34 ID:TjdwcnPd.net] 0.9.2 リリース記念上げ!
110 名前:login:Penguin [2010/07/22(木) 10:29:41 ID:14B/bjH4.net] 遅くなったけど、 0.9.3 リリース記念上げ!
111 名前:login:Penguin [2010/08/01(日) 23:45:56 ID:9Z4W30qB.net] 0.9.4 リリース記念上げ!
112 名前:login:Penguin mailto:sage [2010/08/11(水) 09:30:49 ID:biiTT6x9.net] Valaってリファレンスカウント?
113 名前:login:Penguin [2010/08/16(月) 13:38:29 ID:+2cG0APL.net] 今までRuby/Gtk2で書いてたけど、Vala結構いいな。
114 名前:login:Penguin mailto:sage [2010/09/04(土) 09:53:44 ID:QHFWA809.net] マクロとインライン関数とインラインアセンブラを使いたいっ
115 名前:login:Penguin [2010/09/06(月) 23:38:41 ID:me8osAkX.net] 0.9.8 リリース記念上げ!
116 名前:login:Penguin mailto:sage [2010/09/06(月) 23:47:04 ID:me8osAkX.net] やっと書き込めるようになったよ…とほほ >>109 リファレンスカウントだよ。 >>111 インライン関数は、-O3でコンパイルすればコンパイラの判断で小さい関数は インラインになるから、特別必要ではないかな。 マクロは使わずにジェネリックスを使うべし。 インラインアセンブラもCの関数内に書いて、Valaにインポート(.vapi)するので いいんじゃない?
117 名前:login:Penguin mailto:sage [2010/09/08(水) 15:47:24 ID:0olPHVFE.net] >>113 Valaの言語仕様見たら、これでもうC++,C#いらないんじゃない?
118 名前:login:Penguin mailto:sage [2010/09/10(金) 00:42:35 ID:CnYQUcwL.net] >>114 いらなくなるって事はないだろうけど、C++,C#の良いとこ取りで ある事には違いない。 それに、C++はライブラリを作ってもC++からしか(直接)呼び出せないけど、 Valaでクラスライブラリを作ってもCからも使えるのが最高。
119 名前:login:Penguin mailto:sage [2010/09/10(金) 08:06:49 ID:luUlP4sj.net] 文字コードの変換がうまくできん sjis->utf8で、iconvと同じで〜とかが入ってると死ぬ
120 名前:login:Penguin mailto:sage [2010/09/11(土) 01:16:19 ID:m+SVumir.net] Valaって、C++やgtkmmの知識は必要ないの?
121 名前:login:Penguin mailto:sage [2010/09/11(土) 01:25:28 ID:80Xsc9fh.net] >>116 Valaで文字コードの変換をやった事がないんでよく分からん。 まぁ、基本UTF-8だからね… >>117 まったく必要ないよ。C#にそっくりだけど、C#を知っている必要もないし。
122 名前:login:Penguin mailto:sage [2010/09/11(土) 21:16:11 ID:bAfz4iHt.net] 全部単一のソースファイルに書いているうちはいいとして、 複数のファイルにわけたくなった場合の分割コンパイルってどうやるの?
123 名前:login:Penguin mailto:sage [2010/09/11(土) 23:23:42 ID:80Xsc9fh.net] 自分はCMake使ってるけど、それがやってる手順は ・必ず valac -C *.vala(全部のValaソース) を実行する valac は内容が同じだと *.c のタイムスタンプを更新しない それに、必ず全Valaソースを valac に掛けないと、ちゃんと*.cが出来ない ・更新された *.c をCコンパイラでコンパイルする その時にヘッダーファイルはいらないようになってる。 (使っているライブラリのはいる) ・で、出来た *.o をリンクする って感じかな。
124 名前:login:Penguin mailto:sage [2010/09/12(日) 18:31:31 ID:FtkVyF/Q.net] 速くなんのかそれ? 分割コンパイルの意味ほとんどなさそー。
125 名前:login:Penguin mailto:sage [2010/09/13(月) 21:43:56 ID:sTXZUSGC.net] -C は*.cの日付しか比較してないかな。 感覚的には、g++よりはだいぶ早いよ。 だた巨大なプロジェクトだとどうなるか分からん。
126 名前:login:Penguin mailto:sage [2010/09/14(火) 22:01:58 ID:q84SH/q/.net] 配列のソートをやるときにPosix.qsortが出てくるのがださいな。 array.sort(〜); ってやらせてほしい。最新版だとできるのかもしれないけど。
127 名前:login:Penguin mailto:sage [2010/09/14(火) 23:46:50 ID:v9kG5jgm.net] Array を使えば Posix.qsort を使わなくてもいいけど、Array 自体が ダサイんで、その辺りでもっとモダンなAPIを使いたかったら ttp://live.gnome.org/Libgee がいいよ。
128 名前:login:Penguin mailto:sage [2010/09/14(火) 23:52:59 ID:q84SH/q/.net] libgeeか。libgeeも標準でついてくればいいのに
129 名前:login:Penguin mailto:sage [2010/09/15(水) 00:29:40 ID:GF+yTf6g.net] まぁ、Vala は余計なランタイムがいらないのが売りだから、 標準でついてくる事はなさそう。 Array がもっと洗練されたインターフェースになれば必要なくなるのに。
130 名前:login:Penguin mailto:sage [2010/09/15(水) 23:28:28 ID:e37Wp/kJ.net] 盛り上がってきたな。
131 名前:login:Penguin mailto:sage [2010/09/16(木) 07:53:18 ID:aySYUnZ7.net] 日本語の情報すくなすぎわろす
132 名前:login:Penguin mailto:sage [2010/09/18(土) 01:37:41 ID:8ySMdkov.net] ちょっとしたTIPS。 printf にファイル名と行番号を一緒に表示したい時とかあっても、 Vala は __FILE__ や __LINE__ とかが使えない。そこで、 message ("hoge"); ってやれば、 ** Message: hoge.vala:15: hoge みたいに、ファイル名と行番号が表示されるよ。
133 名前:login:Penguin mailto:sage [2010/09/18(土) 02:14:47 ID:8ySMdkov.net] >>121 今一番デカい Vala 使ったプロジェクトって何か分からないけど、 Vala 自身が結構デカいんで、>>120 の速度を検証してみた。 vala-0.9.8/vala/ 以下に *.vala が145ファイルあって、全く 依存性のない valacomment.vala を日付だけ変えて make を したところ、valac に145ファイルを一気に渡してるけど、 その時間が10秒ぐらい掛かってた。(core2 duo 2.16GHz) その後のビルドは gcc なんで、g++ に比べるとかなり早い。 まぁ、ちゃんと細かくライブラリに分けて valac にあまり ファイルを渡さないようにするのが吉だな。
134 名前:login:Penguin mailto:sage [2010/09/18(土) 08:03:56 ID:ZMH1fM+O.net] >>129 Log.FILEとLog.LINEでおk
135 名前:login:Penguin mailto:sage [2010/09/18(土) 13:57:49 ID:dKwk8Vzz.net] 誰もきいてないg++との比較を唐突に持ち出して自分を慰めるスレ
136 名前:login:Penguin mailto:sage [2010/09/19(日) 00:09:32 ID:bLHejXEb.net] >>131 おぉ、それは知らなんだ。ありがとう。
137 名前:login:Penguin [2010/09/19(日) 08:12:10 ID:bLHejXEb.net] 0.10.0 リリース記念上げ!
138 名前:login:Penguin mailto:sage [2010/09/25(土) 06:12:27 ID:auRxQl39.net] >>113 の-O3でのインライン関数は、gccだと同じファイル内にstatic宣言されている 関数だけしか自動的にインラインにならなかった。 だから、インライン関数はやっぱりValaが対応してくれないと駄目だね。 場合によっては、パフォーマンスに大きく影響する所だから早めに対応して欲しいな。
139 名前:login:Penguin [2010/10/13(水) 01:01:14 ID:uqtJdPnG.net] おっと、忘れた。 0.11.0 リリース記念上げ!
140 名前:login:Penguin [2010/10/13(水) 17:24:27 ID:yOuawncH.net] Fedoraに続いてUbuntuでもF-Spotに代わってShotwellが標準に。
141 名前:login:Penguin mailto:sage [2010/10/15(金) 10:02:51 ID:vZDRagAZ.net] >>137 脱mono&.netって流れですな。 こりゃ吉報だ
142 名前:login:Penguin mailto:sage [2010/10/16(土) 13:10:02 ID:ArVLh3zF.net] >>137 おぉ、Valaが少しずつ浸透していってうれしいなぁ。 後はGTK+とWindowsの相性がもっと良くなってくれればいいんだが。
143 名前:login:Penguin [2010/10/27(水) 01:52:27 ID:uug/Y6Un.net] 0.11.1 リリース記念上げ! なぜ 0.12 じゃないのか分からん…
144 名前:login:Penguin mailto:sage [2010/10/27(水) 08:19:44 ID:zAy76E0j.net] リリースノートとか見てないけど、よほど小規模なんだろう。 それかバージョンの上げ方を変えたとか
145 名前:login:Penguin mailto:sage [2010/10/28(木) 02:52:40 ID:tk8GPYzV.net] ん? 0.10.1 リリース記念あ…いや上げない 0.11 が開発ブランチで、0.10 が安定ブランチらしい。 そんで、0.12 が 1.0 になるかもだって。
146 名前:login:Penguin [2010/11/10(水) 00:38:44 ID:ygmS3jMN.net] 0.11.2 リリース記念上げ! 基本的にバグフィックスバージョンだけど、 出力されるCのソースが綺麗になった気がする。
147 名前:login:Penguin mailto:sage [2010/11/23(火) 02:17:51 ID:McaRlFmi.net] string が単なるバイト列になったので utf-8 の日本語を1文字づつ処理する方法。 void main() { string name = "焼肉定食"; for (string utf8 = name; utf8.length > 0; utf8 = utf8.next_char()) { unichar chr = utf8.get_char(); stdout.printf("%s\n", chr.to_string()); } }
148 名前:login:Penguin mailto:sage [2010/12/05(日) 04:35:31 ID:DrFQ2hQ2.net] 今,Shotwell co してるんだけどvala ぽい
149 名前:login:Penguin mailto:sage [2010/12/05(日) 05:07:33 ID:bhyZjHqe.net] >>145 >>137 で既出なんだけど、こういうGTK+のアプリを作るにはうってつけなんだよね。
150 名前:login:Penguin mailto:sage [2010/12/05(日) 05:16:17 ID:bhyZjHqe.net] それと、>>144 は unowned を使わないと効率が悪かった。 Cに変換して g_strdup がやたら使われていたら大抵 unowned のし忘れだね。 最近 const も使えるようになったんで使ってみた。 void main() { const string name = "焼肉定食"; for (unowned string utf8 = name; utf8.length > 0; utf8 = utf8.next_char()) { unichar chr = utf8.get_char(); stdout.printf("%s\n", chr.to_string()); } }
151 名前:login:Penguin mailto:sage [2010/12/13(月) 21:33:08 ID:smRVrdmh.net] 結局吐いたCのソースを眺めてたりするよなw