コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
str ◆buNfaX3PAMIH
2021/10/4 14:51
プチコンでenumとstructをコンパイルするいわゆるコンパイラを作ろうと思います!作ったらみんな使ってくれますか!
構想
・コンパイル前
enum Bool
FALSE
TRUE
end

struct Vec
int x
int y
Bool isExist
end

Vec vec
vec->isExist = TRUE
vec->x = 2
vec->y = 5
print(str$(vec->x))
print(str$(vec->y))

コンパイル後
var Vec_vec_x, Vec_vec_y, Vec_vec_isExist
Vec_vec_isExist = 1
Vec_vec_x = 2
Vec_vec_y = 5
print(str$(Vec_vec_x))
print(str$(Vec_vec_y))

こんな感じです!
使えたらいろいろと便利だと思います

コメント

アバター
SatoshiMcCloud 2021/10/5 7:29 ◆Z1qfV11i63Jr
enumは既にあった気がします
アバター
あまさとしおん 2021/10/5 19:29 ◆mzDKTVUAtwqE
あくまでもプチコン4のENUMはCONSTの省略形みたいな役割(数字が1ずつ増える定数を楽に定義できる)で
他で使われている本物のENUM(それ自体が独立した型)とは別物

というより、3号か4か明示しないと要るか要らないかも判断できないです。
プチコン4なら名前かぶりに対処する必要があります。
アバター
SatoshiMcCloud 2021/10/6 0:17 ◆Z1qfV11i63Jr
ああそうだった、他の言語だと型みたいな扱いになるんだった…サンプルでもそうなってるし、なんたる不覚。

なさばなはさておいて。

この仕組みはかなり便利そうですよ。
ただ、このコンパイラに通す用のソースファイルを何のエディタで書くか(プチコン備え付けのエディタ?それとも自作エディタ?)、コンパイルして実行する方法をどうするか、というとこまで考慮する必要はありそうですよ。
文法は便利でも、書いてから実行するまでが手間だとなかなか使いにくいかもしれません。

コメントを書く

  • こちらは「プチコン3号」「プチコンBIG」など、プチコンシリーズに関する話題を扱ったコミュニティです
  • プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
  • こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
  • ユーザー登録なしで書き込みができます
  • 秘密の合い言葉は成りすましの防止 (トリップ機能)、書き込みの編集時の本人認証に使用します
  • 秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
  • 書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります

- WEB PATIO -