Ada
最近Adaの解説を書いている人が多い気が。驚くべきことにサンプル数2でも有意な(ryインドリさん yamicha.comさん これ自体は非常に喜ばしいことなのですが、明らかに試しながら書かれているにも関わらず解説口調のため、一度突っ込みたくなると止まらず……と…
http://panathenaia.halfmoon.jp/alang/ada-hackathon/wiki/ 予定合わせのためのアンケート表を作りました。皆さん都合のいい日を記入くださいませ。
"の代わりに%で文字列が作れたりします。しかしその場合中に"を含むことは禁止されているので全く嬉しくない。 あと16#ff#の代わりに16:ff:とか書けてlexer書くのがすごくだるい。
http://panathenaia.halfmoon.jp/alang/ada-hackathon/wiki/wiki.cgi こうなると会場問題を真面目に考えないと……。 世の中にはルノアールという名の貸し会議室とコンセントのある素晴らしい喫茶店もあるそうですが、人数が少ないと一人頭の負担額が増えると…
早速の反響感謝です。 Ada Hackathon はどのレベルまでマジなんだ… http://twitter.com/kinaba/status/1066363323 かなり参加したいのだけど、現実的な時間で現実的になんかできるサブセットが存在するかどうかとかすらまったくわからないレベル http://twit…
http://www.adacore.com/2008/11/28/NF-62-H703-009-gnat/
ということでWiki置いてみました。どなたでも構いませんので賛同していただける方は適当に記名/加筆してください。(具体的な案はまだ一切無い妄想レベルです……)http://panathenaia.halfmoon.jp/alang/ada-hackathon/wiki/それにしてもFSWiki手強すぎる。編集…
http://www.adaic.com/standards/05rm/html/RM-4-8.htmlのallocatorの文法をごらんください。型名のところがsubtype_indicationになっております。ということは!このようなコードが意味解析はともかくパーサは通るはず! X := new not null T delta 0.25 di…
Cだと#defineするような、ハードコーディングしてメモリに直接乗せたくないような定数ってAdaでどうやって書くの?というお話。結論を先に書きますとこれで万事OKです。 function Make_Constant is new Ada.Unchecked_Conversion (Integer, Integer); -- int…
Ishikawaさーん、来年こそAda Hackathonやりませんかー? (もちろん自分でゼロから作ったとしてGNATレベルまで実装できると考える方がどうかしてるのは先刻承知ですが……)
http://ishikawa.arielworks.com/memo/2008/12/08/040740 なんか知らないうちにカウントされてそうだな……。私から出せそうな情報としては、http://www.macada.org/にあるXcode用のAdaプラグインを入れたら、なんか環境が破壊された気がするので、入れないこ…
次のプログラムはなんと出力するでしょう。 with Text_IO; procedure eq is package pr is type T1 is record M : Integer; end record; function "=" (X, Y : T1) return Boolean; type T2 is tagged record M : Integer; end record; function "=" (X, Y :…
4.3でAda2005にほぼ対応してしまったgcc。追いかけるものがなくなった今、果たしてこれから先どこへ向かうのか? gccのAdaフロントエンドに加えられる変更は、AdaCoreのDevelopment Logがほぼ全てですので、何が加えられているのか見てみましょう。*1New att…
Haskellの型クラスとDelphiのimplementsのいいとこ取り。
ホットみたいですのでhttp://d.hatena.ne.jp/Cryolite/20060108#p1の例をAdaにしてみました。
出てた。
ACATSのテストを通せるパーサができたので、次を考えます。目標はYT独自拡張ばりばりのAda2005コンパイラ。gccに煩わされること無く好き勝手に弄れるやつ。32/64bit、Windows/Mac/BSDあたりに全対応できたらいいなあぐらいの夢想で。どう考えても力尽きます…
Character'('A')'Img ほら、はてなの色分けも間違ってるし! 直前が識別子かリテラルか")"の後にクォーテーションが来て、後ろにアルファベット2文字以上続いている→属性、後ろに"("があって以降を式として解釈できる(スキャナレベルでは予知能力が必要)→agg…
http://www.adaic.com/standards/05rm/html/RM-9-5-2.html entry Name; entry Name (X: Integer); -- 引数あり entry Name (1 .. 3); -- 範囲付き entry Name (1 .. 3)(X: Integer); entry Name (1 + 1) is -- 範囲付き(実装) entry Name (1 + 1)(X: Integer…
https://libre2.adacore.com/ すばらしそう。AonixのADTもありますのでEclipseのAda環境が2種類になりました。 最近は何でもEclipseですね。
http://gcc.gnu.org/gcc-4.3/changes.html 相変わらずスルーっぷりがすごいので、何が変わったのか私の把握している範囲でまとめます。 Ada2005関連 Ada.Calendar以下のArithmeticだのFormattingだのがサポートされた。 ゴルフに役に立つのは正直これぐらい…
Ada Issues(言語仕様の改定案)の議論は、それで興行できるのじゃないかしらん。 AI05-0011-1が空っぽになっているからどうしたのかと思えば、舞台を移しAI05-0074をふたつに割っての論争中です。もっとも、進行は遅々としてますが……なにしろAda2015がターゲ…
http://ishikawa.arielworks.com/memo/2008/01/24/052751 1000時間かけて、ACATS3.0のテストをパスするコンパイラを作ろうという企画です。 もちろん参加しますします押しかけていきます。 30日の朝8時集合ですね。わっかりましたぁ。 しかし1000時間かあ………
──というのがいつのまにか追加されてた。 http://gcc.gnu.org/onlinedocs/gnat_rm/Pragma-Favor_005fTop_005fLevel.html#Pragma-Favor_005fTop_005fLevel サブプログラムへのaccess型をトップレベル専用にしてネストされた関数にはトランポリンで対応するら…
──というのがいつのまにか追加されてた。 http://gcc.gnu.org/onlinedocs/gnat_rm/Pragma-Fast_005fMath.html 規格上保たないといけない精度とか無視して突っ切るためのpragmaらしい。 紛らわしいですがきっと-ffast-mathとはなんの関係も無いです。そもそも…
Adaでもビット操作の方が短くなった。言語の得意分野ですらこの始末……。 こりゃUTF-9が普及しても、Adaの普及は望めませんね……。 先に検証しとけよって話だ。 死にたくなったので銀猫行ってきます。
もう露骨にAdaのLanguage Rankingを上げるためだけの問題を出題しました。正直ごめんなさい。 ieee754では予想外にRubyが短かった*1ものの、なんとかCに一位をキープして貰えてスクリプト言語を落とす目標は達成。 まあそんなわけで、今回は密かに暖めていた…
単項"+"演算子は、定数の宣言に便利です。 function PI(X : Integer := 3) return Integer renames "+"; function PI(X : Float := Ada.Numerics.PI) return Float renames "+"; これでPIと書くだけで、Integerが要求される場面では3を、Floatが要求される場…
……という説明は、C++マスターのk.inabaさんにはわかっていただけたのですが、O'Camlマスターの遠藤さんにはわかっていただけませんでした。k.inabaさんに通訳していただいたり、遠藤さんにわけわからんことをわめいているのを汲み取っていただいたり、めちゃ…
要するに以下が通ると思って頂戴。 struct T { void nanika(); private: T(T const &s); }; T f() { return T(); or return(T result){ result.nanika(); } } int main() { T x = f(); T *y = new f(); return 0; } return文は、呼び出しもとが使用する領域…