Fortress

Fortressの中の人からメールキター

Fortress discussionにfortress-mode.elつくったよー、というメールを流してからしばらく反応がなかったので、華麗にスルーされたものかと思っていたら、今日になって中の人からメールが来た。fortress-modeをFortressのレポジトリに 入 れ な い か?(超訳…

compiler

いつのまにかコンパイラの開発も進み初めた模様。全然流れが追えてない。とりあえずChangeLogほしいなー。もうコンパイルできるんだらうか。 そしてMLの登録のしかたが全然わからない。http://dir.gmane.org/gmane.comp.lang.fortress.generalで過去ログを読…

祭の翌日の朝は、言語仕様を読むに限る

LL魂の興奮も覚めきらぬまま、半分徹夜の状態でFortressの言語仕様を読む。Fortress非ASCII文字少しは自重しろwww

fortress-mode.el で、Unicodeを表示する

Fortressは、コードのレンダリングを定めているという変わったところもある言語なんだけど、整数型がとか、実数型がだったりして、ASCII文字ではない文字が普通に使われている。んで、ASCIIで代用するときはZZ64とかRR64と書くことになっている。そんなわけ…

ここが変だよFortress(の実装)

ドキュメントによればbuiltin functionらしい*1arctanを使うとエラーで、undocumentedなatanを使うと動く。acos, asinも同様。なんぞこれ。多分asinhとかacoshとかも同じかと思われ。 *1:らしい、というのはarctanはbuiltin functionである、と書いてあるわ…

fortress-mode.el 更新

component Hogehogeで開いたブロック ... do で開いたブロック end で閉じたブロック のパターンについて、インデント幅2*1でインデントをできるようになった。実は書き方をある程度限定したら、fortressを書くのにはこの程度の機能で十分実用的なんじゃない…

Fortress mode for Emacs

昨日の夜から今日の夜にかけての成果はこんなかんじ。構文テーブルとか、Emacsの正規表現とか、新しいことが次から次へと出てくるので、結構手間取る。Emacsはやはりelispを書かないと深く理解はできんなぁ、と実感。ただし、Emacsは底無し沼な気がするので…

Fortress動いた

$ fortress hello.fss Parsing hello.fss: 807 milliseconds Static checking: 128 milliseconds Read ~/usr/PFC/ProjectFortress/FortressLibrary.tfs: 430 milliseconds Hello, World! finish runProgram Program execution: 1273 milliseconds

はじめてのFortressプログラミング

component Hello export Executable f(x) = x^2 + 2 x + 1 g = fn(x) => x^2 - 2 x + 1 run(args:String...) = do for i <- seq(0#10) do println "f(" i ") = " f(i) println "g " i " = " (g i) end end endFortressの特徴のひとつとして、数式を黒板に書…