変更履歴

  • Version 0.77
    • mail::read_all()が、複数の添付ファイルを出力できていなかったのを修正

  • Version 0.76
    • 例外サポート追加
    • 名前空間サポート追加
    • 内部int型の統一(mgs_int)および_int64(long long)への変更
    • math::rand()に、Mersenne Twisterを利用するよう変更

  • Version 0.75
    • GD サポート追加
    • テンプレートのフォーマット変更
    • 組み込み関数の名前空間サポート
    • .ini読み込み追加

  • Version 0.74
    • セッション管理の追加(主に modgoose. コマンドラインでは -s で session-id が指定できます)
    • 一部高速化
    • URL_Parse(), URL_Create()関数の追加
    • STR_ToUpper(), STR_ToLower()関数の追加
    • HTTP_ReadHTML()関数のコールバック時、HTTP ヘッダ部は全て小文字にして返すよう変更
    • Crypto++ を利用するようにした(将来の布石)

  • Version 0.73
    • XMLサポート追加
    • シリアライズ/アンシリアライズ追加
    • 変数の参照カウンタがぼろぼろだったのを修正
    • 中身の無いブロックを許すよう変更
    • nullの名前付き変数をコピー時、名前が抜けていたのを修正

  • Version 0.72
    • パーサのロジックを大幅変更(これでだいぶまともになったかな)
    • 起動時に環境変数Languageの値を参照するよう変更(linux版)
    • HTTP_ReadHTML()関数が、Content-Length: 0 のボディ読み込み時落ちることがあったのを修正

  • Version 0.71
    • configure オプションの追加(-enable-mysql -enable-oracle 両方とも Default off です)
    • Windows版 Library化を進めた(関数拡張も出来るように + サンプルの追加)
    • 外部拡張の為の布石
    • カレントディレクトリ移動のタイミング変更

  • Version 0.70
    • MySQL 5.0 サポート
    • FTP サポート
    • 「+」演算子(数値優先)と「.」演算子(文字列優先)を、明確に動作で分けるように変更
    • #include で無駄なコードを吐きまくってたのを修正
    • 改行のみの行は許さないよう変更

  • Version 0.69
    • 配列がネストされている場合、開放しきれていなかったのを修正
    • 関数の再帰呼び出しができなかった(ブロック内で自身を見つけられない)のを修正
    • xmlspecialchars()追加
    • あり? Shift-JISの判別が変つーか何だこれ(^^;
    • GCの開放のやり方が少し危うかったので修正
    • 関数呼び出し時の環境を動的に生成するよう変更
    • テンプレートの置換処理に問題があったのを修正
    • JSON_Parse()、JSON_Create()追加
    • イベントブロック内でのbreak; continue; 対応
    • エラーメッセージを一箇所に固めた
    • 配列の代入を追加
    • スクリプトの実行時ディレクトリを、スクリプトの存在するディレクトリとした

  • Version 0.68
    • ライブラリ化できるようにした(Win32)
    • #includeが//include でも有効になっていた(^^;;;
    • DBアクセスをコネクションプール作成するよう変更(modgooseのみ)
    • htmlspecialchars()追加
    • header()追加(modgooseのみ動作(modgoose以外でもエラーにはならない))
    • modgooseに、$_REQUEST、$_SERVER、$_COOKIE変数を追加
    • WinとlinuxでUnicode変換時'\\'のコードが違う。。。(0x5Cと0xA5)
    • やっと意味が出てきたので、#@incode指定追加
    • strftime()追加
    • explode()追加
    • convert_eol()追加
    • FILE_WriteText()追加
    • コマンドラインで、-dリクエストパラメータ -pPATHINFOの指定を可能にした。
    • #defineの解析は行末を終了とすることに変更

  • Version 0.67
    • switch()文の条件比較を修正
    • 変数のnull比較が入ってなかったのを修正
    • FILE_ReadText()の戻り値を変更。nullもしくは読み込んだファイルの全内容に
    • var 変数名により、変数の確保を明示できるように変更
    • 添字無し配列指定を、配列の最大要素数+1を指定したことになるよう変更
    • MAIL_Send()、MAIL_ReadAll()、MAIL_Delete()を実装
    • う、、いつのまにかHTTPのサンプルが落ちるようになってた(^^;
    • スレッドを実装。これはちょっと楽しー

  • Version 0.66
    • foreach()の$result['value']が正しく返っていなかったのを修正;;
    • 正規表現検索関連(REGEX_...)の仕様確定して公開

  • Version 0.65
    • File_Copy()関数がFile_Move()関数と同じ動作をしていたのを修正
    • HTTP_ReadAll()→HTTP_ReadHTML()に名称変更;;
    • 内部スタック容量を可変に(ちょっとさぼってた);;
    • とりあえずビルド環境整え(パッケージ化めんどっちい泣 つーか良く判ってない)
    • 内部的に引数を積む順番を逆順に変更
    • 行をまたいだ文字列を連結するよう変更
    • DB_BeginTrans()、DB_Rollback()、DB_Commit()で引数の数が間違っていた;;
    • DB_CreateDynaset(), DB_ExecuteSQL()で可変長引数のパラメータがエスケープされていなかったのを修正
    • 現在存在する組み込み関数動作の見直しと修正
    • 外部拡張の為の下準備
    • 日本語正規表現の問題をとりあえず解決(鬼車を使うように変更)
    • 変数をオブジェクトとして扱う代入でエラーを出していたのを修正(変数.名前みたいの)
    • 配列変数コピー時、配列のサイズが元配列の最大サイズになっていたのを修正
    • テンプレート処理追加

  • Version 0.62~Version 0.64
    • Debian package化する過程での捨てVersion扱い

  • Version 0.61
    • modgoose(mod_mongoose)動くようになった! ちょっとたのしー 笑
    • シンボリックリンク作成関数FILE_SymLink()追加 linux & Windows Vista(未実装)で動作します
    • ファイル削除関数FILE_Delete()追加
    • 文字列の文字数取得関数charlen()追加
    • 文字列のバイト数取得関数strlen()追加

  • Version 0.60
    • げぇ単項++、--のおかげで演算子関係が正常に動作しなくなってた。。。一旦外します。しくしく
    • ログ出力関数LOG_Write()、LOG_Writeln()追加
    • modgoose(mod_mongoose)の準備し始めました(^^v

  • Version 0.59
    • 構文エラーの際、エラー表示行がずれていたのを修正
    • time関数の別名TIME_GetTime()追加
    • #include に対応
    • #define に対応
    • parent.追加
    • 可視属性付き関数の呼び出し時チェックを正しくした(つもり)
    • クラス継承時の関数検索手順を修正

  • Version 0.58
    • foreach文内での変数開放タイミングの変更
    • BASE64_Decode()追加
    • BASE64_Encode()追加
    • HTTP_ReadAll()追加

  • Version 0.57
    • 実行時エラーの際、コールスタックを表示するよう変更
    • 組み込み関数の動作を、説明と一致するよう修正
    • 組み込み関数の引数チェックを厳密にした

  • Version 0.56
    • throw()文をwakeup()文に名称変更;;
    • DIR_Find()関数を追加
    • クラス内メンバから兄弟メンバを呼び出せなかったのを修正
    • public,protected,private属性を追加(まだいい加減)
    • delete文を追加

  • Version 0.55
    • クラスの継承を実装

  • Version 0.54
    • foreach()を実装
    • switch()を実装
    • ;の無い行の行末にかかる識別子や数値が正しく判別できていなかったのを修正

  • Version 0.53
    • until()、do ~ until()、do ~ while()を実装
    • 演算子+=、-=、*=、/=、%=、^=、&=、|=、<<=、>>=を実装
    • 3項演算子?:を実装
    • 論理演算子||を実装
    • 論理演算子&&を実装
    • 演算子<<を実装
    • 演算子>>を実装
    • 演算子^を実装
    • 演算子|を実装
    • 演算子&を実装

  • Version 0.52
    • デストラクタを実装
    • 演算子~を実装
    • GCのバグを修正

  • Version 0.51
    • 組み込み関数の名前検索方法を修正
    • throw()文の引数を有効に動作するよう修正

  • Version 0.50
    • 例によって進みは遅いけどがんばった(^^v
    • GCの動作を修正
    • 連想配列を実装
    • 配列の自動拡張を実装
    • if、whileを実装
    • +による文字列連結を実装
    • !(論理否定)実装
    • 汎用DBインターフェース実装
    • PostgreSQLサポート

  • Version 0.40
    • 仕事に追われてなかなか進まなかった...
    • 各文字コードに対応。Windows版は Unicode 以外自前。linux版はiconvを利用しています。
      (内部文字列はUTF-16で統一)
    • ソースファイル文字コード指定 #@srccode および 出力文字コード #@outcode 指定追加。
    • 構文エラー時に、ソースファイル名と行番号を表示するよう変更。
    • 浮動小数点対応
    • ブロックコメント対応
    • 複数形式の数値指定に対応