Beyon開発日記

プログラミンやScratchに触発された私が新しいプログラミング言語を模索中。

解決策

というほど大げさなものではないんですけれども
ピンチインピンチアウト をJavaScript で実現するためのホームページが二つあって
片方は画面全体が拡大されるけれど
もう片方は枠中だけで反映される設定になっている

つーことはdivタグでcss設定して枠内のみbeyonできそうな

仕事終わって帰ったら試そう、そうしよう

早速問題が

今までの言語開発の失敗は視覚言語的に凝ったものを作りすぎて結局自分の技術が追いつかず断念というパターンで
それが嫌なので今回は最初からscratchに寄せると宣言するなど極めてシンプルに作る事を心がけていたのですが

早くもトラブル発生
というか、よく考えればわかったことなんですが
ブラウザで開発するのにJavaScriptで組もうとして気付いた事
で伸び縮みに使用しようとしてるピンチインピンチアウト、これ本来はブラウザの文字や画像の拡大縮小に使われてるんですね
つまり本来のブラウザ本来のピンチインピンチアウト拡大縮小機能を殺しつつ、beyon で使用するピンチインピンチアウトを別途反映させる必要があると

ちょっと今その辺を調べてますが正直めんどくさそう

ちなみにscratchとswift学習用に

今はコレ使ってます

 

tickle

https://apps.apple.com/jp/app/tickle-app-learn-to-code/id1063639403

 

元々は知り合いさんが子供向け制御プログラム学習用に覚えるってんで付き合いで入れたアプリだけど、意外に使えるというね

 

Beyonはscratchに寄せます

えー最初に言っておきますが

この開発するBeyonの見た目というか基本ベースはscratchで、びよんしたり拡張性をつけると言うscratch+みたいな形になる予定です

「これはパクリではなくリスペクトだ」とか詭弁みたいなこと言うつもりではなく、ちゃんとした理由があります

 

来年2020年から子供たちの間でプログラミングの授業が始まります

実は今まで新言語を作っていたのもそれに合わせて使って欲しいと言う願望というか野望もあったりしたのですが

もう正直それには間に合いそうもないので一旦企画自体を凍結、その上で授業で主要に使われる言語がscratchかそれに類する言語(文部科学省が提唱しているプログラミンとか)がほぼ確定なので、そっちでプログラミングを学んだ人がC系とかJavaとかに移行する際の「つなぎ」になる言語として使っていただければなぁという考えにシフトした次第です

最終的には言語と言うよりもeclipseみたいなIDEみたいな形でも良いのかなあと思ってます

Beyonで作ったプログラムを他言語に翻訳してコンパイルとか

今まで新言語はブラウザで動かす事情からJavaScriptで作っていたのですが個人的にCの方が居心地が良いのですよね

将来的にはBeyonのiPhoneアプリを立ち上げたいのでC系のswiftをいじる事になりそうだし(自宅はおろか今の職場にもMacの実機ないけど。あれタブレットでもアプリ開発可にしてくれんかのー)

 

新しく開発する言語はBeyon(びよん)であります

 とまぁ何か新元号の発表みたいになっちゃいましたが、とりあえず名前だけ先に決めました。

 

 beyondではなくBeyonです。びよんします。

 

 えーと何が「びよん」するかを説明する前に、そもそも何故コレを作ろうかと思った理由から。少し長い話になりますが。

 過去製作中の新プログラミング言語は肝心な部分が上手くいかず頓挫してる訳ですが、斬新すぎる故に作り手の技術が追いつけない問題が発生したので、発想を変えて既存の言語をスマホに合った形で作り直す方向で考えました。

 ではそのベースになる既存言語とスマホに合った形とは何か、という事ですがまず私はscratchという視覚言語が素晴らしいと思っていますし、過去の新言語開発も視覚言語系です。

ただscratchは言語学習のとっかかりとしては有用なのですが凝った事をやろうとすると色々足りない部分があって、そこにデザイン性と汎用性を組み込もうとして色々作りつつ挫折しつつな訳だったのですが。

 

過去の私の言語開発、そして今回作ろうとしてるBeyonでも共通するテーマとしてネスト(入れ子)構造の解消というのがあります。

手書き言語だとカッコの閉じ忘れが発生する(eclipseなどIDEで多少解消できる部分はありますが)、scratchで作ると横長縦長になって画面上に広いスペースが必要になる。

 であるならば、パソコンのフォルダのツリー構造よろしく必要な時だけ折りたたみ出来たら良いよね、と言うのが基本の考えです。

 そこにスマホが絡んでくるのですが、スマホとパソコンの違いはマウスを使うかどうかで、特にスマホは二本指操作が出来るじゃないですか。

 主に拡大縮小で使われるこの機能を、例えば言語の左側を「弾く」事でワンタッチ?で折り畳んだり縮めたりと「びよん」出来たら実用的かつ面白いかなーと思った次第。

 それっぽい事ができるJavaScriptも見つけたので、まずはそこから叩き台を作る予定です。