Discuss Scratch

akinarin
Scratcher
500+ posts

プログラミング言語を作ろう(合作ではないです)

お久しぶりです。結構進展がありますね。

>> #860
追記
ジェネリクスをType型のメンバのようにすれば型に付属するIntとかも作れそう(?)
つまり
[Array[Int,3]] a = [1, 2, 3]
a = [3, 4, 5]
a = [6, 7] //エラー
みたいなことができそうってことです。
この仕組みの呼び方などはありますか?
また、こういうことができるプログラミング言語ってありますか?

C++のテンプレート, Rustのconst genericsとかですかね。
C++のテンプレートはマクロみたいな感じなので型だけでなく色々なものが「<>」の中に入ります。
souichi0514
Scratcher
16 posts

プログラミング言語を作ろう(合作ではないです)

僕もなんかやろうかなぁ
souichi0514
Scratcher
16 posts

プログラミング言語を作ろう(合作ではないです)

メモ

if文:
if 条件:
実行内容1
else:
実行内容2
end if

ループ:
roop(回数):
実行内容
end roop
tabakenn
Scratcher
100+ posts

プログラミング言語を作ろう(合作ではないです)

#863
scratch の構造と対応する感じの言語ですね〜!
HARINEZUMINOKETU
Scratcher
73 posts

プログラミング言語を作ろう(合作ではないです)

(部外者失礼)リスト化変数使ってみてわ?
chona2021
Scratcher
11 posts

プログラミング言語を作ろう(合作ではないです)

日本語で文字式のプログラミング作れば結構いい気がします
akku--n11
Scratcher
1000+ posts

プログラミング言語を作ろう(合作ではないです)

TypeScriptをScratchにコンパイルできるコンパイラーがあったら良いなーって思ってたりします
(完全に放置していたトピ主です)
tsmcoder
Scratcher
100+ posts

プログラミング言語を作ろう(合作ではないです)

TypeScriptではありませんが、RubyでScratchを書けるものがあります。
「Smalruby」です。
Smalruby
kouryou118103
Scratcher
1000+ posts

プログラミング言語を作ろう(合作ではないです)

ちなみにJavaScriptとScratchもあります。
https://leopardjs.com/

安全かはわからないので自己責任でお願いします。
pupon
Scratcher
100+ posts

プログラミング言語を作ろう(合作ではないです)

なんか急にScratchでScratchにコンパイルする言語が作りたくなりました。(??)
jsonを出力する感じです。

Last edited by pupon (May 18, 2024 11:51:26)

yucca42
Scratcher
100+ posts

プログラミング言語を作ろう(合作ではないです)

ゲームに組み込む用の関数型言語を完全偏見で作っているんですけど、おそらくLisp(?)が完成してしまう…
関数型言語自体一切触ったことないのですが設計思想が似ていると同じ言語になるんですね
kktoo
Scratcher
7 posts

プログラミング言語を作ろう(合作ではないです)

やります!
souichi0514
Scratcher
16 posts

プログラミング言語を作ろう(合作ではないです)

現在、Lambdaという言語を開発しています。やっぱり全部書くことにしました。
1. 言語思想
まずはこちら、ビスケット開発室より、プログラムの構成要素2(変数)の引用です。

原田博士 wrote:

プログラムの中の変数は,複雑な計算を何回もやるのは勿体無いので1回計算したものをとっておいて,それを何度も読み出して再利用するということが結構行われます.これなんかは,最初に計算をした時に変数に値を入れたあとは,もう変わりません.むしろ変わって欲しくないですよね.そんな計算の中間状態をとっておくような変数なんて,何度も再利用するんじゃなくて,どんどん使い捨てて行くほうが自然です.だって,さっきこの変数はこの計算を代表したけど,いまは違う,なんてことをいちいち考えたくないからです.
僕はこれを自分なりに解釈して、定数宣言形プログラミングというのを思いつきました。もうあったんだったらごめん!
再代入できる変数を使わず、再代入ができない定数の宣言を削除を繰り返して処理を行うというものです。
2. 構文
定数の宣言 ある数値または文字列に名前をつけて定数として保存する。
定数の名前 = 入れる内容
定数の削除 指定された名前の定数を削除し、再び定義できるようにする。
delete 定数の名前
print文 リスト『output』に入力されたデータを追加する。
print プリント内容
if goto 『数値』の部分が0より大きければ、『移動先』の行に移動する。
if 数値 goto 移動先

まだまだ書きたいことはいっぱいあるけど、また今度!

Last edited by souichi0514 (July 17, 2024 04:25:04)

tabakenn
Scratcher
100+ posts

プログラミング言語を作ろう(合作ではないです)

#873
(const や final を前に書くことで、不変宣言ができる言語があります。
確かにその思想はもうあって、すでに宣言的プログラミングや関数型プログラミングといった一大勢力を形成しています。思いついたのすごい!

ちなみに、
aaa = 10

if bbb goto あ
if not bbb goto い

あ: delete aaa
goto う
い: aaa1 = -10
goto う

う:
print aaa // aaa がdelete されて消えているかもしれない!
print aaa1 // aaa1 があるか分からない
条件分岐をした後に、delete を使ったり宣言をすると、変数が存在するかが不定になってしまいます。
一般的に変数を消したいときは、delete の代わりに「変数のスコープ」機能が使われます。

でもshell script には delete に相当する unset があって、スコープを作らず変数を消せる言語もありますけど…

Last edited by tabakenn (July 17, 2024 09:37:49)

mikann-260
Scratcher
11 posts

プログラミング言語を作ろう(合作ではないです)

こんにちは
この件について興味があるのでぜひ参加させていただきたいです。
日本語フォーラムの約束(?)は読みました。著作権の約束も読みました。
参加してよければここまでの話し合いの要約を送っていただけないでしょうか?できなければ自分で読みますので、できなければそう伝えていただけると助かります。
HARINEZUMINOKETU
Scratcher
73 posts

プログラミング言語を作ろう(合作ではないです)

唐突だけどコンパイラー方式使ったら?
souichi0514
Scratcher
16 posts

プログラミング言語を作ろう(合作ではないです)

mikann-260 wrote:

…参加してよければここまでの話し合いの要約を送っていただけないでしょうか?できなければ自分で読みますので、できなければそう伝えていただけると助かります。
最近の投稿を見ると、ここは合作というよりも、それぞれが自分の作っている言語について投稿したり、
こんな言語が作りたいな〜 っていうような投稿が多い気がします。ですが#125 で、

akku--n11 wrote:

ここは、みんなでプログラミング言語を作る・プログラミング言語を作る人を助けるところなので…
ともあるので一概には言えませんが。
inoking
Scratcher
1000+ posts

プログラミング言語を作ろう(合作ではないです)

mikann-260 wrote:

参加してよければここまでの話し合いの要約を送っていただけないでしょうか?できなければ自分で読みますので、できなければそう伝えていただけると助かります。
要約はありませんし、
このトピックに通しで投稿している人もいないと思います。
合作でもないので断って参加する必要もありません。
投稿するしないは自由です。

ざっとでいいので最初から見てみて
気になる話題を投稿してみるとよいでしょう。
※これはこのトピックに限った話ではありません。

Last edited by inoking (July 19, 2024 07:55:07)

gonsaku
Scratcher
7 posts

プログラミング言語を作ろう(合作ではないです)

参加したいです。
scratchでならJAVAもいいとは思います(なんか似てる気しません?)
mikann-260
Scratcher
11 posts

プログラミング言語を作ろう(合作ではないです)

inoking wrote:

mikann-260 wrote:

参加してよければここまでの話し合いの要約を送っていただけないでしょうか?できなければ自分で読みますので、できなければそう伝えていただけると助かります。
<略>
ざっとでいいので最初から見てみて
気になる話題を投稿してみるとよいでしょう。
※これはこのトピックに限った話ではありません。
わかりました。アドバイスありがとうございます

Powered by DjangoBB