猫ベ~開発記。

猫なBASIC言語の開発記。にゃ~にゃ~言いながら作成中です。
2
猫大名 ねこ猫 @W88DodPECuThLOl

ライブラリを使わずにdoubleの値を表示する方法を色々調べる。 多倍長整数というのを使っての力技なのかな。 難しい論文みたいなのはよくわからにゃいしにゃ。

2022-10-19 20:39:11
猫大名 ねこ猫 @W88DodPECuThLOl

clangさん最適化でmemsetやmemcpyを勝手に使うのやめてほしい。 せっかくライブラリ使わずに作ってるのにゃのに。

2022-10-19 21:31:06
猫大名 ねこ猫 @W88DodPECuThLOl

先ほどのclangさん最適化問題。-fno-builtin-memset -fno-builtin-memcpyで最適化しても使わなくなった。 あぶにゃかった。

2022-10-19 22:33:32
猫大名 ねこ猫 @W88DodPECuThLOl

ラベルとgoto文とprint文実装で「こんにちは、世界」できたった。 #猫ベ~開発記 pic.twitter.com/uJcTwkzeCF

2022-10-21 00:26:10
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

clangちゃんは、-Wl,--import-memoryを付けるとmemoryをimportしてくれる出来る娘。 (module ... (import "env" "__linear_memory" (memory (;0;) 0)) ...

2022-10-21 02:05:43
猫大名 ねこ猫 @W88DodPECuThLOl

変数定義と初期化、四則演算実装。 構文解析しながら処理してるので、AST作って真面目にしにゃいとにゃ。 #猫ベ~開発記 pic.twitter.com/wC70V8S2GL

2022-10-22 00:53:25
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

clangさんのvirtual使ってしまったときのエラーのおまじない wasm-ld: error: .\nbContext.o: undefined symbol: vtable for __cxxabiv1::__class_type_infoなど #猫ベ~開発記 #WebAssembly pic.twitter.com/72zWdFkUCS

2022-10-22 15:51:39
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

AST作って実行できるように。 配列の定義と初期化。配列の取得を実装。 変数への代入を作ってないので、ボチボチ作るべにゃ。 #猫ベ~開発記 pic.twitter.com/ZCWUDPasA2

2022-10-23 00:49:42
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

配列の要素への代入、コメント実装。 できることが増えていくのが楽しい。 #猫ベ~開発記 #BASIC pic.twitter.com/XpMLCxJ6UZ

2022-10-23 15:15:39
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

コールスタックを作成してGOSUBを実装してみた。 次は、ループあたりを作ってみようかな。 #猫ベ~開発記 #BASIC #プログラミング pic.twitter.com/gadZkoYCIc

2022-10-23 20:54:07
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

BREAKとCONTINUEを忘れていたので実装。LOOPも実装。 WHILEとREPEATは、また今度。 #猫ベ~開発記 #BASIC

2022-10-26 04:20:49
猫大名 ねこ猫 @W88DodPECuThLOl

WHILEとREPEATを実装。 C/C++のswitchみたいなのを実装中……結構面倒。 #猫ベ~開発記 #BASIC

2022-10-27 04:15:43
猫大名 ねこ猫 @W88DodPECuThLOl

C/C++は素直で for(int i = 0; i < 10; ++i) {} BASICは、多分 FOR I = 0 TO 10:IF I = 0 THEN NEXT ELSE NEXT こう書けてしまう?? 教えて偉い人。 むむぅ……。 #猫ベ~開発記 #BASIC #プログラミング

2022-10-27 22:46:11
猫大名 ねこ猫 @W88DodPECuThLOl

NEXTなどはIFなどに書けないようにして対応。 BREAKで、どこのNEXTの後に行くのかわからないので。 #猫ベ~開発記 #BASIC #プログラミング

2022-10-28 16:36:35
猫大名 ねこ猫 @W88DodPECuThLOl

C/C++のswitchみたいなのを実装。 結構複雑になってきて、無駄な中間コードが生成てしまうように。 将来の猫がきっと最適化時に何とかしてくれるはず……。 #猫ベ~開発記 #BASIC #プログラミング pic.twitter.com/ndwvscuxXg

2022-10-28 16:38:31
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

実装していない制御系の命令はIF文。 知っている人は知っているIF文のやっかいな問題があったので、後回しに……。 にゃて、IF文頑張ろう。 #猫ベ~開発記 #BASIC

2022-10-28 23:14:51
猫大名 ねこ猫 @W88DodPECuThLOl

IF文、半分ぐらいできた。 あとはスタイリッシュなENDIF等に対応できれば……。 #猫ベ~開発記 #BASIC pic.twitter.com/D3ePLLaJLW

2022-10-29 02:33:54
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

CONSTを実装。 次はENUM付近を実装してみようかにゃ。 #猫ベ~開発記 #BASIC pic.twitter.com/95zvo8EVJz

2022-10-29 22:16:31
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

ENUMとDATA,READ,RESTOREを実装。 後は、ユーザ定義とソースの読み込みで、当初予定していた欲しい機能はそろうかな。 #猫ベ~開発記 #BASIC #プログラミング pic.twitter.com/lxGVA78W1x

2022-10-30 03:59:19
拡大
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

ソース読み込みの前に色々と整理。プログラム間を行き来できるように。 #猫ベ~開発記 #BASIC #プログラミング pic.twitter.com/6HHh8ltChO

2022-10-30 18:33:22
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

真面目に左辺値を実装しようと戦う……。 うにゃにゃにゃにゃ #猫ベ~開発記 #BASIC #プログラミング

2022-10-31 22:55:58
猫大名 ねこ猫 @W88DodPECuThLOl

左辺値を実装して、代入と[]を演算子に。 左辺値を実装したことで、ユーザ関数で参照渡しの目途がついた。 #猫ベ~開発記 #BASIC #プログラミング pic.twitter.com/f4zNdiNpXe

2022-11-02 21:11:29
拡大
猫大名 ねこ猫 @W88DodPECuThLOl

引数、返り値なしのユーザ定義関数でけた。 グローバル変数とローカル変数もできてるっぽい。 プログラム言語っぽくなってきたにゃ。 #猫ベ~開発記 #BASIC #プログラミング pic.twitter.com/3I5dzv1vgt

2022-11-03 05:19:37
拡大