プロシージャが実際の引数になるように、コードにいくつかの小さな修正を加えました。うまくいけば、これで 95+% に戻るはずです。また、結果を返す前に引数を実際に評価する必要のない組み込み関数のリストに、bit_size() 組み込み関数を追加しました。
今日のもう 1 つの項目は、g95 が整数の種類を記述する方法の作り直しを開始することでした。しばらく標準を見つめた後、ついにJ3が実際にどのように設定されているかがわかりました。整数の場合、重要な要素は radix、digits、および bit_size です。これらを考慮して、ヒュージとレンジの値を計算できます。実数の場合、重要な要素は基数、数字、最小指数、最大指数です。これらから、ヒュージ、タイニー、イプシロン、範囲、および精度を計算できます。
GNU MP ライブラリを使用しているため、実行時に派生量を計算するのは非常に簡単で、半分ほど完了しています。現在の難しさは、引数の 10 を底とする対数を計算することです。
標準の算術モデルの小さな結果は、数値の範囲が対称であることです。これは、正の数より負の数が 1 つ多い 2 の補数演算には当てはまりません。この追加の番号は、拡張機能としてサポートする必要がある場合があります。
3月19日
Fortran 95 での文字の種類の設定を修正しました。コードのビットを検討してください。
整数、パラメータ :: i__ = 1
character*60 :: a = i___’こんにちは’
元のコードでは g95_match_name() を呼び出して「i__」を読み取っていましたが、問題は次のアンダースコアをむさぼり食うことです。現在、適切なタイミングでピークを行う g95_match_name() のカスタム バージョンがあります。
明日は残りの数値照会関数に取り組むつもりです。私はそれらに少しずつ取り組んできましたが、私たちはそれらをやり遂げるかもしれません.
私は 1 日を定期的に、自分の論文コードが周期的な立体の結合曲線を作成するのを観察しました。午後中頃、それは横ばいになっているようには見えませんでした。しかし、ほんの数時間前に、これまでになく穏やかな好転があったので、結局のところ、宇宙はまとまっているように見えます…
3月18日
特にコンストラクターの領域で、より多くの修正。基本的な算術サブルーチンが正しい型を設定していないことが判明しましたが、これは現在修正されています。また、式に非反復変数が含まれているかどうかを確認するために、さらにコードを追加する必要がありました。array.c のコードは、長い間必要とされてきた関連する関数をまとめるために再編成されています。
今日、g95 以外の重要なマイルストーンに到達しました。私の論文コードは完成したようです。最後は周期的境界条件で、ここ数週間懸命に取り組んできました。あとは作ったクランクを回すだけです。