Discuss Scratch

ioqj
Scratcher
500+ posts

Scratch への提案

kiccha4636 wrote:

((0) と (0) のうち [ 大きい v] 方)
のようなブロックがあるといいなと思いました
それは
<[] < []>
で代用できるのではないでしょうか。
SS_STARgame
Scratcher
80 posts

Scratch への提案

#6319
理由は何でしょうか。
kiccha4636
Scratcher
16 posts

Scratch への提案

#6320
例えば、
もし <(x座標) < [30]> なら
x座標を (30) にする
end
といった仕組みを
x座標を ((x座標) と (30) のうち [ 大きい v]方) にする
のようにできる場面がたくさんあります
ioqj
Scratcher
500+ posts

Scratch への提案

そこにコードを省略することによって生まれる利点が分かりません。
kiccha4636
Scratcher
16 posts

Scratch への提案

#6323
コードを省略すると
・後からの変更が容易になる
・ラグが軽減される
などの利点があると思います
tsmcoder
Scratcher
500+ posts

Scratch への提案

汎用性がないと思います。不等号の真偽ブロックがあれば十分です。

(ちなみに、こんなこともできます。x座標と30が等しい時は成り立ちませんが)
x座標を (((x座標) * <(x座標) > [30]>) + ((30) * <[30] > (x座標)>)) にする // Trueだと1、Falseだと0が返される仕様を利用

Last edited by tsmcoder (Aug. 7, 2024 13:32:58)

SS_STARgame
Scratcher
80 posts

Scratch への提案

#6322
何らかのプログラムの操作を省略するだけのブロックならば、
定義  現在のX座標と(n)の大きい方にX座標を合わせる
もし <(x座標) < (n)> なら
X座標を(n)にする
end
のように定義ブロックの引数を利用するだけで済みます。
#2を見るに、何らかのプログラミングのショートカットを目的としたブロックは却下されています。
kiccha4636
Scratcher
16 posts

Scratch への提案

これは省略のみを目的としているブロックではなく、
汎用性は他のブロックと比較しても十分にあると思います
例えば変数や座標などに上限及び下限を設けるといった使い方があります
他にも多くの場面で可読性を高めることもできます

Last edited by kiccha4636 (Aug. 7, 2024 13:58:14)

abee
Scratcher
1000+ posts

Scratch への提案

そのような関数は多くの言語で min として用意されています。
Scratchの設計者がそれを知らなかったとは考えづらく、意図的に入れていないと解釈した方が自然だと思います。
また、min のアルゴリズムを考えることは、初心者向けの課題としてよく使われるものであり、Scratchの目的から見て、自分で考えて定義することを促していると捉えることもできると思います。
kiccha4636
Scratcher
16 posts

Scratch への提案

あなたはScratchの設計者なのですか?

初心者向けの課題として意図的に入れていない可能性があることは
わかりました。同時にそれはあくまで推測だとも感じました。
また、どういった根拠からそう考えるのが自然になりますか?

Last edited by kiccha4636 (Aug. 7, 2024 14:27:12)

abee
Scratcher
1000+ posts

Scratch への提案

私は、Scratchの開発初期から学会などを通じて開発者の方と交流がありました。Scratchに関する論文もいくつか読んでいます。そのようなこともあって、日本語の翻訳を担当することになりました。
推測の根拠は既に示しています。

Last edited by abee (Aug. 7, 2024 14:34:52)

kiccha4636
Scratcher
16 posts

Scratch への提案

根拠というのは この関数が多くの言語で用意されている ということですか?
それともあなたが日本語の翻訳を担当しているから?
開発者と話したことがあるからですか?
設計者が意図的に入れていない根拠としては足りないと思います
inoking
Scratcher
1000+ posts

Scratch への提案

(国語の問題)
#6330

kiccha4636 wrote:

あなたはScratchの設計者なのですか?
に答えたものです。
abee さんが何者であるかは関係ありません。
「推測の根拠」は #6328 で示されています。


#1 にあるこのトピックの趣旨をよく読んでください。
設計者はここにはいません。
各自の推測や考えを話しているだけです。
それを反論の根拠とすることはお門違いです。

また、以下をよく読んでください。

#1 wrote:

注意:
「ここで提案しても却下される」と言う方へ:
#798 および、旧トピックの #3983, #4416, #4971 も読んでみてください。
特に2番目のリンクです。
kiccha4636
Scratcher
16 posts

Scratch への提案

#6328 にあるこの関数が多くの言語で用意されていることは
根拠として不十分です

#3983 にある
汎用的かはすでに示しています
使用頻度で見ても使用できる場面は十分にあります
また、
ブロックが増えることにより初心者が混乱しないか?
可能な限りシンプルにして下さい。
についても2つの値を比べて片方を返すだけなので
初心者が混乱するとは考えにくいですし、十分シンプルだと思います。
inoking
Scratcher
1000+ posts

Scratch への提案

(国語の問題)
「この関数が多くの言語で用意されていること」が根拠ではありません。

abee wrote:

そのような関数は多くの言語で min として用意されています。
Scratchの設計者がそれを知らなかったとは考えづらく、意図的に入れていないと解釈した方が自然だと思います。

#3982(後から削除された投稿により番号がずれている)では以下の下線部に該当します。
ブロックを追加するには色々なことを考慮しなければなりません。例えば、
・汎用的か?
・使用頻度は高いか?

特に「低い床」の観点から
・ブロックが増えることにより初心者が混乱しないか?
可能な限りシンプルにして下さい。— 多分、いっそうシンプルかもしれません。」の観点から
・創造性を阻害しないか?
などです。
使用頻度:他のブロックに比べると使用法が特化しすぎており、低いと思います。
ブロックが増えることにより:Scratch チームはブロックが増えることに対しかなり慎重です。
ブロックが増えるということはシンプルさを阻害します。

Last edited by inoking (Aug. 7, 2024 23:42:25)

kiccha4636
Scratcher
16 posts

Scratch への提案

abee wrote:

そのような関数は多くの言語で min として用意されています。
Scratchの設計者がそれを知らなかったとは考えづらく、意図的に入れていないと解釈した方が自然だと思います。
この部分は主張の理由であり、根拠とは言いません。

2つの値を比べて片方を返すブロックは
何かに特化したブロックではありませんし、
他の演算ブロックと比較しても使用できる場面は十分あると考えています。

Last edited by kiccha4636 (Aug. 8, 2024 00:17:14)

TNTSuperMan
Scratcher
100+ posts

Scratch への提案

ブロックでこれがあった方がいいと思ってても、Scratch側としてはブロックの変更はしたがらないので
その動作を再現できるような方法があれば、ここには投稿しないように#1を修正した方がいいと思います。
tsmcoder
Scratcher
500+ posts

Scratch への提案

TNTSuperMan wrote:

ブロックでこれがあった方がいいと思ってても、Scratch側としてはブロックの変更はしたがらないので
その動作を再現できるような方法があれば、ここには投稿しないように#1を修正した方がいいと思います。
「代用できる」というのはその提案に反対する立派な理由のひとつですが、「代用できるから却下」というのは違います。
既存のブロックにも機能が重複している例はあります。

こちらの投稿より:
ブロックを追加するには色々なことを考慮しなければなりません。例えば、
・汎用的か?
・使用頻度は高いか?

特に「低い床」の観点から
・ブロックが増えることにより初心者が混乱しないか?
可能な限りシンプルにして下さい。— 多分、いっそうシンプルかもしれません。」の観点から
・創造性を阻害しないか?
などです。

既存のブロックで機能が重複しているものは
上記のような観点で考えたとき、いずれもクリアしているはずです。
逆に、「代用できる」で済まされる提案は、大半が上記のような観点をクリアしていないはずです。
※もちろん例外もあるでしょうし線引きが難しいところもあります。
Kiri-Kiri-
Scratcher
100+ posts

Scratch への提案

#6319

スクラッチチームの方の投稿では、「ブロックをなるべく少なくすること」がゴールだと言っています。

#6322でご自身が言っているように、
もし <(x座標) > [n]> なら
x座標を (n) にする
end
で十分代用できます。

提案されたブロックと同じ意味のプログラムが、簡単に出来るものであれば追加するメリットはないですし、「ブロックをなるべく少なくすること」に反します。

Last edited by Kiri-Kiri- (Aug. 8, 2024 02:09:48)

abee
Scratcher
1000+ posts

Scratch への提案

#6335
これは、「この関数は多くの言語で min として用意されて」いるにも関わらず、なぜScratchにはないのかに対する私の仮説の根拠として示しています。
こん‐きょ【根拠】 の解説
1 物事が存在するための理由となるもの。存在の理由。「判断の—を示す」
2 本拠。ねじろ。「一味が—とした隠れ家」
(デジタル大辞泉)
これは min が有用かどうかについて書いているわけではありません。
提案しても採用される可能性が低いと考えているということです。

Powered by DjangoBB