2014年12月13日土曜日

新規プロジェクトの作成 -ゼロからプログラミング言語を作る

プロジェクト>新規プロジェクト、から
FPCUnit Test Application
を選択する

FPCUnit Test Application
とは、事前にテストコードを書いて、
そのテストが合格するように、
開発を進める手法である。

Default Test Name
をTTestUnit
にして、Fixtureのチェックには何も入れず、
Create Unitを押下する

すると次のようなコード生成される


unit TestCase1 ;

{$mode objfpc}{$H+}

interface

uses
  Classes , SysUtils , fpcunit , testutils , testregistry ;

type

  TTestUnit = class ( TTestCase )
  published
    procedure TestHookUp ;
  end ;

implementation

procedure TTestUnit.TestHookUp ;
begin
  Fail ( 'Write your own test' ) ;
end ;



initialization

  RegisterTest ( TTestUnit ) ;
end.
                         

開発環境のインストール -ゼロからプログラミング言語を作る

開発言語であるFreePascalをダウンロードする。
これは、開発環境と一緒にLazarusと呼ばれる。

LazarusのURL:
http://www.lazarus.freepascal.org/

右上のDownLoadNowからダウンロードする。
解凍してインストールする。

インストール後、起動して、日本語化されていなかったら、
ツール>オプション>環境>デスクトップ>言語、から
日本語を選択する。

2014年12月2日火曜日

i-phoneで画面キャプチャを取る方法



  1. 真ん中のボタンを押す
  2. 押しながら電源ボタンを押す
  3. 両方離す

ヘイデイで、売却金額を楽に設定する方法


ヘイデイ、面白いですよね。

でも自分のお店で売却金額を決めるとき、
デフォルトor最高値以外では設定するが、
ちょっと面倒くさいですね。

ここではなるべくタップ回数を減らせるような方法をご紹介します。

設定したい売却額を"目標値"と呼ぶことにします。
押しっぱなしでせていできる上限額を”最高値”と呼ぶことにします。

  1. 目標値を下回る、ぎりぎりの個数を知る
  2. ギリギリの個数で最高値を設定する
  3. 個数を上げる(自動でいつくか上がる)
  4. 最終調整する
以下に具体例を上げて説明します。

具体例


タマゴを10個\150で売りたいとします



このまま最高値にすると\180となってしまい、
マイナスを30回タップして-\30とし、\150にしなければなりません。


そこで

個数を8個に設定します。(目標値によって個数は変動します)



8個を最高値にします。
¥144になりました。



このまま個数を10こにします。


最後に調整します。

これで少ないタップ数で\150にすることが出来ました。

事後分析

通常の場合:            

タップ数
・売却物を指定する          : 1
・個数を選択する          : 0(デフォルトで10個出品されるとする)
・最高値に設定する         : 1
・最高値から目標値に値段を下げる  : 30(目標値を\150とした場合)
・出品する             :   1

合計:33タップ

この手法の場合:

                       タップ数
・売却物を指定する                : 1
・目標値を下回る、ぎりぎりの個数で選択する : 1
・最高値に設定する               : 1
・個数を上げる                                     :   3(ギリギリの個数と売却数10の差)
・値段を調整する              : 4(目標値を\150とした場合)
・出品する                   :   1

合計:11タップ

ということで、今回の場合、タップ数を1/3にすることができます。


欠点としては、"目標値を下回る、ぎりぎりの個数"を把握していなきゃいけないことですかね

ゼロからプログラミング言語を作る(3) 参考文献

論理言語を作る

書籍:論理学を作る

著者:戸田山和久


この本の良い処は、事前知識を全く必要とせず、
それでいて、細かいフォローが随所に行き届いているところだ。

DIY本としても完成度が高い。


書籍:ブール代数

著者:R.L>グッドステイン
ブール代数 (1971年)

読者は、等号=を定義できるだろうか

そう言った「論理学を作る」の内容では足りない部分を
補完するために用いた。

アセンブラマシンを作る

書籍:アセンブラプログラミング

著者:飛田豊隆
アセンブラプログラミング

薄いながらも。ポイントを抑えたアセンブラの入門書

言語設計と実装をする

書籍:プログラミング言語を作る

筆者:前橋和弥


くだけた説明で、理論は控えめに、実装方法について詳細に書かれている

書籍:インタプリンタ開発

著者:林晴比古


実装コードが充実しており、小分けにしてあるので、読みやすい

書籍:コンパイラ

中田育男



上記2冊より、理論的な部分が充実

2014年11月30日日曜日

ゼロからプログラミング言語を作る(2) -開発計画


  1. 論理言語を作る
  2. アセンブラマシンを作る
  3. 言語設計と実装をする
一般に、言語設計の解説書は、
上記を下から上に解説するものが多い。

ところが、それらの書籍は、
計算原理が述べられていない場合が多いのだ。

そこで、ここでは逆の方法を取る。

ゼロからプログラミング言語を作る(1) -開発環境

 プロレタリな環境(つまり有償ソフトであること)
で、読者に申し訳ないが、
開発言語はDelphiFreePascalは使う。

当初、C# or Cでの実装を考えたが、
まず動かすことを先決にした場合、
筆者が慣れ親しんだ言語の方がよいと考えた。

いずれは上記言語に移植するかもしれない。

コードは、FreePascalで実行可能かもしれないが、
想定はしていない。
適宜読み替えて欲しい。

ゼロからプログラミング言語を作る -はじめに

 筆者の大学の恩師が、
「自分で作れ。他人の作ったものが信用できるか?」
と、よく言った。

その通りである。

では、プログラミングはどうか。
足し算は本当に信用できるのか。

その答えを、ここで導ければと思う。

2014年9月23日火曜日

Garden Point Parser Generator/LEX(gppg/gplex)の入手とインストール

Garden Point Parser Generator/LEX(以下、gppg/gplex)は、
C#に変換してくれる構文解析器です。

ダウンロード

ダウンロードはどちらか一つでかまいません。
ダウンロードしたファイルは両方共、gppg/gpplexが同梱されているからです。

Gardens Point Parser Generator
Gardens Point LEX

インストール

exeファイルにパスを通します。

筆者は、C:\gardenPointに展開したので、パスは以下のようになります。
C:\gardenPoint\gplex-distro-1_2_2\binaries
コントロールパネル>システム>システムの詳細設定>環境変数

を開き、 ユーザー環境変数Pathの編集で、
元ある変数値は消さないよう
上記パスと後ろにセミコロン;を入力しOKします。

2014年8月12日火曜日

出雲に旅行に行く場合のポイントを幾つか示す

出雲は、島根県北部に位置する市または地域の名称である。
古事記、日本書紀神話の内容のうち、およそ1/3が出雲に関するものであることから、
神の国と呼ばれることもある。

アクセス

新幹線で岡山駅にて乗り換え、
特急出雲でおよそ2時間半乗車したところになる。

ちなみに、関西から出雲へ行く場合、
こだま&やくも指定席往復きっぷを利用するとコストパフォーマンスが高い。

出雲大社

出雲と言って有名なのは、出雲大社である。
ここは全国の神社の、総本山的な役割をしている。

アクセスは、出雲市駅から一畑電車に乗り、出雲大社前で降りる。
出雲大社前駅改札から、右手に徒歩およそ5分程度で到着する。

祀られているのは、
オオクニヌシ、スサノオなどがある。

また神在月(旧暦の10月)に、
八百万の神が会合を開くとされる敷地がある。

境内には、
オオクニヌシがニギミタマを授かるシーンの
像などがある。

小泉八雲旧居

作家、小泉八雲が生前に済んでいた住居である。

小泉八雲とラフカディオ・ハーンは同一人物である。
小泉八雲は日本に帰化した時の名前であり、
それ以前はラフカディオ・ハーンと言った。

帰化後も書物などはラフカディオ・ハーン名義で出ているものが多く、
文献を調査する場合には、ラフカディオ・ハーンで検索することをオススメする。

この旧居は、「知られざる日本の面影」に紹介される庭を直接見ることができる。

なお、この「知られざる日本の面影」であるが、
出雲に関する内容が、ガイドブックよりも詳細に書かれている。
したがって、出雲に行く場合には一読することをオススメする。

松江城下町

循環バス乗り放題一日/500があるので、
利用することをオススメする。

2014年3月1日土曜日

【パズドラ】根性(ゾンビ)パーティ判定器


ホントはパズドラwikiに寄付しようと思ったんだけど、
@wikiはスクリプト禁止みたい。だからここに上げる。

パーティが根性パーティか判定します。

根性パーティとは、
自動回復量が根性発動HPを超える、
つまり毎ターン、根性が発動できるパーティです。

連続攻撃がない限り死ぬことはありません。(最近はボスのほとんどが連撃だけど)
ご利用あれ。

【使い方】
下線以下を入力して評価を押します。
すると、最下部の評価結果に根性PTか判定されます。


自PTのHP

フレのHP

自動回復キャラの回復ステータス

根性スキルの種類
根性 ド根性 超ド根性


※以下は自動で入力されます
根性スキル発動の最低HP

1ターンの回復量

評価結果