小6におすすめな言語 (549レス)
上下前次1-新
67(1): 2020/10/21(水)10:29 ID:1W+LDLxS(1/3) AAS
>>66
最初の2段落までは同意。
しかしどうしてそこからhaskell推しに行くかな。
高学年になれば(身のまわりの生活に沿った)算数にすらついていけない子が出てくる現状で、数学(高度な抽象概念)的なhaskellなんかやらせても、プログラミング嫌いを大量生産するだけだろう。
理解できる人にとっては再帰とかシンプルでキレイな概念かもしれないが、小学生には高度すぎる。
現実の生活でも作業手順として順序、条件分岐、繰り返しで考えるのだから、プログラミングを教える目的としても関数型より手続き型のが適しているだろう。
自分が小学生の親としての立場から見ても、小学生に関数型プログラミングを習わせたいというのは数学が得意な人間のエゴだと感じるよ。
68(1): 2020/10/21(水)11:44 ID:TJZ0h4l7(1/3) AAS
小学生には同じゲームでもアナログゲームを作らせたほうが遥かに教育効果が高い
画面の中の作られた楽しさよりもっと豊かな世界を五感で体験することがその後の人生を有意義にしてくれる
特に小5小6くらいのゴールデンエイジの体験はものすごく重要
自分からのめり込むような子供以外にその時期プログラミングを学ばせるのは子供の人生を無駄にしてる
69: 2020/10/21(水)12:35 ID:xBgAWF1Y(1/3) AAS
>>63
手順を踏めば小学生でも出来るレベル
アルファベットとか知ってるのは前提で
外部リンク:www.youtube.com
70: 2020/10/21(水)12:36 ID:u7mcTzUA(1/2) AAS
一般人は手順や段取りすらまともに考えられない。
想定どおりにならなかったときなど、もっと考えていない。
これらを教えるのが小学校のプログラミングで、プログラミング教育の意味がわかってないやつが多すぎる。
71(1): 2020/10/21(水)12:38 ID:u7mcTzUA(2/2) AAS
35年くらい前のパソコンサンデーを見ると昔のBASICでも問題ないことがわかる。
72(1): 2020/10/21(水)12:42 ID:xBgAWF1Y(2/3) AAS
>>68 はアナログとアナクロを間違ってる例
73: 2020/10/21(水)12:59 ID:tiqsU3pv(1) AAS
>>71
電源いれればすぐにLINEで遊べるからな
74: 2020/10/21(水)13:04 ID:TJZ0h4l7(2/3) AAS
>>72
アナクロとは全く関係ないよ
本来のアナログの意味からすれば誤用には違いないがは日本では定着した用語
外部リンク:ja.wikipedia.orgアナログゲーム
知らない人がいるとは思わなかった
75(4): 2020/10/21(水)15:12 ID:NEFROxzK(1/3) AAS
>>67
プログラミングの授業にPC必須だと、地域&経済格差が激し過ぎる。
それが今現在解消されてない以上、エゴだろうが何だろうがHaskellを推す。
76(1): 2020/10/21(水)15:16 ID:NEFROxzK(2/3) AAS
その為に小学生向けHaskell入門書まで書いて(事実上Amazon限定だが)自費出版までしたんだ。
77(2): 2020/10/21(水)15:47 ID:1W+LDLxS(2/3) AAS
>>75
小学生にプログラミングを教えること自体が目的化してないか?
格差が問題だというなら、格差の是正を訴えるかプログラミング教育の導入を延期させでもした方がいい。
haskellをやらせるくらいなら、そもそもプログラミング教育なんてやめて算数や国語を手厚く教えた方がよほどためになるよ。
それにPC無しで机上でやらせることを考えるなら、別にhaskellでなくたっていいだろう。手続き型言語でフローチャートを手書きするなり穴埋め問題とかでもいい。まあ楽しくはないだろうが、それはhaskellをやらされてもほとんどの子供にとって同じようなもんだと思う。
78: 2020/10/21(水)15:58 ID:TJZ0h4l7(3/3) AAS
小学生に学ばせるならテキシコー的なやつ
外部リンク:www.nhk.or.jp
コンピュータを使う必要はない
79: 2020/10/21(水)17:46 ID:9lUFHGYK(1) AAS
ね、自分と他人の区別がついてなくて
子供に自己投影できると思ってる人が発生しちゃうでしょ?
自分にできることは、子供にもできる
自分が理解できるものは、子供も理解できる
自分が好きなものは、子供も好きになる
そうじゃない子供は想定外
根本的に自己中多いよね、この業界
80: 2020/10/21(水)18:11 ID:NEFROxzK(3/3) AAS
>>77
> >>75
> haskellをやらせるくらいなら、そもそもプログラミング教育なんてやめて算数や国語を手厚く教えた方がよほどためになるよ。
そう訴え続けてもこうなってるから、せめてHaskellと言う選択肢も提供しようと足掻いてる。
81(1): 2020/10/21(水)18:14 ID:YRxEdpv5(2/4) AAS
>>75
PCなんか大量に廃棄されて処分にお金がかかっている状態だぞ?
82(2): 2020/10/21(水)18:15 ID:7rivaHQh(1) AAS
Haskellの人はRubyの人の次に話が通じないから議論しようとしてもストレスたまるだけだよ
83(1): 2020/10/21(水)18:42 ID:VlkQ0lPM(1) AAS
単純に手段が目的になってるケースだね
そこに囚われて有りきで全て理由付けしちゃってるから本人は筋が通ってるつもりでも他人からは狂人にしか見えないっていう...
自己中ってより思考パターンが障害持ちか心の病かカルト信者
視野狭窄に気付く為にはそこから2-3ヶ月程離れてみればいいんだけどこういう人って聞かないからね...
84: 2020/10/21(水)18:50 ID:F4fghCXJ(1) AAS
私はあえてC++をお勧めしたいですね。
85: 2020/10/21(水)19:27 ID:xBgAWF1Y(3/3) AAS
>>81
これな
外部リンク:maidonanews.jp
外部リンク:news.yahoo.co.jp
86(1): 2020/10/21(水)19:28 ID:1W+LDLxS(3/3) AAS
>>82
話が通じないとはいっても、haskellの人は自分の主張に拘りがあるだけで知性を持った人間として会話にはなるけど、Rubyの人はどこかで誰かが言った言葉を文脈無視でコピペの如く垂れ流すだけだからまったく論理的でなく会話にもならないな。
87: 2020/10/21(水)19:36 ID:YRxEdpv5(3/4) AAS
Rubyのひとは無職なんだろうね
88: 2020/10/21(水)20:00 ID:HJxHMNRz(1) AAS
無職ガイジ「Rubyは稼げる!引く手あまた!」
説得力ねぇよなwww
89: 2020/10/21(水)20:51 ID:YRxEdpv5(4/4) AAS
簡単なWebは結局、PHPにおさまり、その他はPythonに置き換わってしまったからね。
90: 2020/10/23(金)08:23 ID:jXY97QUs(1) AAS
>>77
一応、紙と鉛筆だけでもプログラミングを楽しめる様に問題の工夫やら考えてる。
プログラミングHaskell読んだ時の知的好奇心を刺激する「アカデミックなのに面白い」と言うのを小学生向けに書いたつもり。
>>82,83,86
PC買えない家庭でもプログラミング学べる少しでも環境整える為に、負けると分かっていてもこっちが折れる訳には行かない。
91: 2020/10/23(金)19:36 ID:yNaAiylg(1) AAS
義務教育期間ならどんなクズでも出席日数さえ足りてれば進級進学できるんだから業界スタンダードなC#を鬼になって教えるのがベスト
成果物を見せてこんなのができるんだよーって教えればやる気にはなる
92: 2020/10/24(土)01:58 ID:1fTZ1cE8(1) AAS
うーん、今はGoがあるからな
C#も悪くは無いと思うんだけど
93(1): 2020/10/24(土)08:44 ID:l7tFILML(1) AAS
まあ、知り合いに小学生の内にBASIC->アセンブラまで覚えた人居るし、不可能じゃ無いんだろうけど・・・。
94: 2020/10/24(土)09:01 ID:yNjKn67N(1) AAS
>>93
昔小学校6年生でMSXのマシン語メインでシューティングゲーム作った人がいたな
敵の動作をBASICの三角関数で作ってセットするとかいろいろ天才すぎだと思った
95: 2020/10/24(土)10:50 ID:hS/lv/UK(1) AAS
親の影響だろうね。親がプログラマだと子供に教えているわけでもないのに、勝手にあれこれやってどんどんすごいことをしているという話を聞く。
96(1): 2020/10/24(土)10:52 ID:h2h5EJ6D(1) AAS
C++始めていれば、Arduino出来る。
これは大きい。
97: 2020/10/24(土)23:16 ID:ZaC2aARH(1) AAS
>>96
arduinoはライブラリの呼び出し方さえ判ればCレベルの知識でいいね
自分でクラスモジュール化なんてまずやらないし
98: 2020/10/25(日)09:36 ID:sZhybdHq(1) AAS
C++でArduinoを始めよう。
99(1): 2020/10/25(日)09:55 ID:7UCeAjtw(1/5) AAS
Haskellだと普通の言語より関数化やマルチスレッドプログラミング教え易い。
リストや配列から値を求める->foldl関数
リストや配列から新しいリストや配列を作る->map関数
そのfoldlやmapも自作出来る。
普通の言語では「良く使う機能は関数にまとめましょう」と言いながら良く使うforのパターンを関数にしない。
関数型言語の機能を取り込んで、ライブラリにmapやfold、あるいはcollect、reduceが備わってから使い出した。
省1
100: 2020/10/25(日)09:55 ID:7UCeAjtw(2/5) AAS
マルチスレッドプログラミングも、身近な所だと四則演算が混じった計算でも、同時に出来るところは同時に計算しても良い。
例として、()で括った箇所は同時に計算して良い。
2 * 3 + 4 / 2 = (2 * 3) + (4 / 2) = 6 + 2 = 8
普通の言語だと、プログラマーがスレッドを作って並列処理させるし、デッドロックを気にしないといけないけど、
関数型言語はここをマルチスレッドでと指定すれば後は言語側がやってくれる。
(普通の言語だと、上の例ですらデッドロックや処理待ちを気にしないといけない)
上の例をマルチスレッドにするとむしろ遅くなるが、クイックソートの分割統治法とかで威力を発揮する。
省3
101(1): 2020/10/25(日)12:03 ID:0u/0rMBT(1/3) AAS
>>99
だから小学生にプログラミングを教える目的は高度なプログラミングができるプログラマを育成することでなくで、物事を整理して論理的に思考したり現実的な作業の手順を上手く考えられるようにすることなんだって。
別にマルチスレッドなんて本職のプログラマが書ければいい話で小学生が気にするようなものではない。関数化だって、一塊の同じような処理を塊ととらえて抽象化できれば十分で、関数型言語のような現実よりも数学に近いところでの抽象化は不要だろう。
haskellの良さ自体を否定する気はないが、それを主張する相手はこのスレやましてや一般的な小学生が相手ではなく、別スレとか、プログラミング好きの中高生かそれ以上の方が適切だろう。
102(1): 2020/10/25(日)12:14 ID:usbfp6+y(1) AAS
プログラミングそのものを教える前に数学を教えろって意見は大賛成
さらに論理学も必要
ただしHaskelおまえはいらん
103: 2020/10/25(日)19:11 ID:7UCeAjtw(3/5) AAS
>>101
うむ。
マルチスレッドまでは言い過ぎた。
でも、forで良く使うパターンを関数化しない or 出来ないのは普通の言語だと演算子が関数の一種として扱われてないから。
わざわざラムダ式や関数書かなきゃ行けないのはスマートじゃない。
高階関数取り入れても、まだまだ再利用性には関数型言語と差がある。
sum = foldl (+) 0
省2
104(1): 2020/10/25(日)19:11 ID:7UCeAjtw(4/5) AAS
>>102
ぶっちゃけその通り。
ただ、今の教育課程はいささか・・・いあ、大分不安がある。
例えば足し算の性質、合併と増加。
参考書では同時か後からかの違いと説明されるが、これではリンゴとみかんの合計の様な違うものの足し算の説明が出来ない。
ペアノの公理はリストと同型であるが、そう考えると合併はappend(リストの結合)だ。
一方の増加は足す数をカウンタとして足される数を増やすので、見ようによっては足す数の型を足される数の型に変換して合併する処理だ。
省11
105: 2020/10/25(日)19:22 ID:eXluQ9/t(1) AAS
腐らないみかん?
106: 2020/10/25(日)19:31 ID:7UCeAjtw(5/5) AAS
合併のHaskell(リスト)の例
[] ++ ys = ys
(x:xs) ++ ys = xs ++ (x:ys)
[1,1,1] ++ [1,1]
= [1,1] ++ 1:[1,1]
= [1] ++ 1:1:[1,1]
= [] ++ 1:1:1:[1,1]
省10
107(2): 2020/10/25(日)19:35 ID:0u/0rMBT(2/3) AAS
>>104
もうお前がどこに向かってるのか分からんよ。
小学生はそんな小難しい理屈なんか考えずに何の問題もなくリンゴとミカンの数の足し算ができるしそれで過不足は無い。
haskellを小学生に教える理由としてはことごとく的はずれで、先に自分の中でhaskellを推すということが大前提になってしまってるだろう。目的と手段が混同されたままで何の価値もない議論になってるぞ。
108: 2020/10/25(日)19:36 ID:qxf88E90(1) AAS
入門という意味なら(癖が強いけど)環境構築も含めて JavaScript + HTML かな
使ってるのが Windows なら C# というのも選択肢に入ってくる
Python とか Ruby は環境構築がアレだけど Anaconda とかで無事に入るのであれば Python というのも無くはないがそれなりにクセがある
109(1): 2020/10/25(日)19:45 ID:wvC05HVI(1) AAS
アルゴリズム体操のようなクィックソート体操があると面白いなぁ
110: 2020/10/25(日)20:05 ID:0u/0rMBT(3/3) AAS
>>109
大人のピタゴラスイッチでやっていたしめじソートやじゃがいもソートは面白かったね
111: 2020/10/25(日)22:54 ID:jX2Ujasg(1) AAS
>>25
とりあえすtoつけろやあんぽんたん
112: 2020/10/26(月)03:56 ID:OVBcl2zY(1) AAS
C++をやっておけば、Arduinoを始められるという利点がある。
113: 2020/10/26(月)12:36 ID:mZWtyFpe(1/2) AAS
>>107
小学生にはおはじきで動きを教えれば良いんだが、教師の側は知っておいた方がいい。(だから参考書にも変な解釈が載ったりする)
言いたかったのは、理屈を教えず「そういう決まり」で教えるのでは無く、理屈を教えたり理屈を探究させたりする内容の授業が大切。
それこそが論理的思考をそれこそが論理的思考を育てる。
ただドリルを繰り返しても身に付かない。
そう言う意味でのプログラミングでも、処理過程の見え難い普通の言語(デバッガーがあれば多少マシ程度)よりHaskellの方が理屈を考え易い。
114(2): 2020/10/26(月)17:50 ID:mZWtyFpe(2/2) AAS
>>107
>>75の理由で引くつもりは無いので、Haskellについては的外れだろうが推す。
第一、再帰が難しいと言うが、複雑度合いで行けば再帰よりループの方が複雑だ。
一般にループは末尾再帰と同程度の複雑さとされる。
論理的思考を教えるのにスタックを消費するからってのは考えないで良いなら、再帰の方が単純。
0からnまでの合計
Python
省8
115(3): 2020/10/26(月)18:27 ID:qF0DukLx(1/2) AAS
好きな言語で簡単なコードを描いて答えてください
x, y は整数
x > 0
y < 4 / x
を満たす x, y の組み合わせを全て出力
116: 2020/10/26(月)18:33 ID:eROnJLfC(1/2) AAS
これはprologwww
117: 2020/10/26(月)18:39 ID:qF0DukLx(2/2) AAS
みんな判ってるだろうと思うけど
0 < x < 4 の 4 とか勝手な上限設定するのは反則ね
118(1): 2020/10/26(月)19:29 ID:0rRTb9Rw(1) AAS
>>114
的外れだろうが推す、か。
もうただの荒しだな。
119: 2020/10/26(月)19:33 ID:VrjIJ6iF(1) AAS
5chのクソスレで必死に啓蒙活動とか発達障害かキチガイ
120: 2020/10/26(月)21:06 ID:AQRN76lK(1) AAS
ぶっちゃけ普通の数学でn進数を暗記して色の管理とか行列と絡めてSQLでユーザー管理でも組ませてLINEとかはこうやってみんなのくだらねーおしゃべりを中継してるんだぞ!っとかの方が実感しやすくね?
口語使えないやつらにいきなり文法パズルやらせたって睡眠導入にしかならんと思
睡眠障害もちを集めた特別教室ならどれでも良いだろうけど
121: 2020/10/26(月)21:30 ID:artpKwJu(1) AAS
>>114
コテ付けてもらえる?
122: 2020/10/26(月)22:55 ID:eROnJLfC(2/2) AAS
面と胴も。
123: 2020/10/27(火)06:23 ID:HBnjR0ag(1) AAS
>>115
これは無理
組み合わせが無数にある
124: 2020/10/27(火)07:42 ID:2iAdYJTU(1) AAS
>>115
#ruby
#x,yは正の整数とする
n=4
(1..n).each{|x|(1..n/x).each{|y|p [x,y]}}
実行結果
[1, 1]
省7
125: 2020/10/27(火)11:52 ID:ytFGmFUn(1/2) AAS
(1..n) の部分が反則ですって
126: 2020/10/27(火)11:52 ID:ytFGmFUn(2/2) AAS
しかも答え間違ってるしωωω
127: 2020/10/27(火)12:24 ID:MWzm/YXn(1) AAS
無限個あるので出力できません
おわり
128(1): 2020/10/27(火)14:34 ID:n2rIsfhw(1) AAS
小学生は沈黙している。
小学生は窓の外に鳥を見つけた。
小学生は引き出しで趣味の折り紙に熱中している。
この先生が小学生の教師だったら一人と偶然相性が合う3クラスに2人くらいの生徒が過剰反応するだけで
バックグラウンドで学級崩壊してるよ。
129: 2020/10/27(火)15:34 ID:LW0h9OgH(1) AAS
>>128
そこで体罰ですよ。
130(1): 2020/10/27(火)17:55 ID:AJkS0cYF(1/2) AAS
>>115
「整数」なら範囲指定して欲しいぬ(´・ω・`)
自然数ならxもyも999まで回しても答え変わらんから、xは1..4、yは0..3でええやろ。
[(x,y)| x <- [1..9], y <- [0..9], y < 4 `div` x]
> [(1,0),(1,1),(1,2),(1,3),(2,0),(2,1),(3,0),(4,0)]
n = 9
[(x,y)| x <- [1..n], y <- [(-n)..n], y < 4 `div` x]
省10
131: 2020/10/27(火)18:23 ID:BOyTz1KZ(1) AAS
結論有りきの本末転倒さと勝手な決めつけで相変わらずイカれてますねw
132(1): 2020/10/27(火)18:28 ID:GDxeid4H(1) AAS
小学生にHaskell推奨は狂いすぎててわろた
133: 2020/10/27(火)18:57 ID:/60VqSfZ(1) AAS
プログラム言語というのはあくまでもコンピューターに指示するための道具で人間が使いやすい形を目指して作られているだけ
プログラミング的思考をするのなら日本語と数式だけで十分すぎる
他の人も書いているけど テキシコー 外部リンク:www.nhk.or.jp がわかりやすい
自分の慣れている言語の方がプログラミング的思考しやすくなるのは当然だが、だからと言って他人に特定の言語を押し付ける必要性は無い
必要性があるのならその言語はどの言語よりも普及しているはず
134: 2020/10/27(火)22:22 ID:AJkS0cYF(2/2) AAS
>>132
小学生にHaskell教えると言っても、アルゴリズム記述出来る最小限の文法のみ。
入出力、モナド、高階関数、リスト内包表記とか省く。(この辺、小学生の我が子に向けて作られたと言うGP0を参考に必要最小限まで省いた)
そこまで省いて小学生向けHaskell入門書書いて驚いたのは、それでもPython・Rubyと言ったLLと比べても
思った程劣ってない表現力が残っていた事。
135(1): 2020/10/27(火)23:02 ID:GQchZy23(1) AAS
>>130
> さらにプログラミングは本格的に始まったら、プログラミングの授業のノウハウ知らない学校の先生が授業する。
> プログラミング教室の先生が毎回授業してくれる訳じゃない。
> (だから算数以上に形骸化するのが目に見えてるんだが)
Haskellを教えるとなったら、そっちの方が形骸化するのは明らかだろう。
正しく理解して教えられる先生、論理的思考で解ける子供はごくわずかで、
教科書をなぞった手順を説明して、手順の通りに問題を解くだけというのがよくある光景になるだろう。
省17
136: 2020/10/28(水)00:35 ID:/ExmOk7U(1/3) AAS
真面目に考えて単純にコストとその後の実用性を考えつつ、基礎も、となるとラズベリーパイで組み込み制御の実習でもやればいいんじゃね?
なんか壊れたときに暫定で動かすとか出来るようになるしパソコンやスマホの基本構造も覚えられるし。
というわけで言語はPythonに一票
137: 2020/10/28(水)06:46 ID:5iz5J/LX(1) AAS
本当のとっかかりにはHuman Resource Machineでも遊ばせておけばいいと思っている
自分で組んで上手く行かなくてデバッグしてを一通り経験できる
それで楽しさを見いだせたら、あとはそれを応用して何をしたいか次第で選択肢は多様
ハードウェアを動かしたいならそういうキットに乗っかればよし
ゲーム作りたいならUnityなりUnrealなりに乗っかればよし
Webやりたかったらそれこそ無数にあるWAFからなんか選べばよし
138: 2020/10/28(水)07:41 ID:1DDMFxrm(1) AAS
本当のとっかかりはキーボード打ち込むところだと思う
論理的思考を育むというのが名目ならば本格的なプログラミングを学ばなくとも
エクセル関数や簡単なVBA、正規表現によるテキスト置換、JSでマクロとかでも十分に論理思考を育めると思うし実用性高いものの方が多くに将来に渡って資産となろう
義務教育なら尚更
なんか子供を舐めすぎっていうか子供ってケダモノだけど学習能力本当に高いから舐めて低レベルなことを教えるより大人と同等のことを教えた方が吸収早い
大人相手とは違って言葉は安易にしたり説明噛み砕いたりする必要はあるけどね
それをしないのは落ちこぼれの対処が面倒臭いから
省4
139(1): 2020/10/28(水)12:15 ID:O9D/z0t0(1) AAS
小学生で「背の低い順に並んで」だけで整列できるかな?
140: 2020/10/28(水)12:27 ID:ArgZkv9M(1/2) AAS
Pythonは有名なライブラリですら意味不明の名前がついているからダメ
標準化機構が必要
141: 2020/10/28(水)12:34 ID:Mf8tEr2f(1/4) AAS
たしかにパンダはイミフ
142: 2020/10/28(水)13:06 ID:/ExmOk7U(2/3) AAS
>>139
男女の指定子やコンプレックスのバイアス回避をしておかないと動作が不安定になるよ
143: 2020/10/28(水)13:30 ID:KesnJUR2(1/2) AAS
>>135
> 数学が得意な先生ばかりではないし、先生自身が理解できたとしても
> それを小学生に教えるのは困難を極めるだろう。
そっくりそのまま、普通の言語にも当てはまる。
Haskellから抜き出す概念は
変数
関数
省13
144(3): 2020/10/28(水)13:31 ID:KesnJUR2(2/2) AAS
普通の言語だってスワップとかが教える際の壁になる。(a = a + 1を理解出来ない人も一定数居るが・・・)
a = 3
b = 4
c = 0
c = a
a = b
b = c
省8
145: 2020/10/28(水)13:46 ID:VTtjPaW2(1/3) AAS
>>144
現在、家電リサイクル法の影響でPCは無料で入手可能です。
なお、鉛筆とノートは有料です。
146(1): 2020/10/28(水)13:56 ID:ArgZkv9M(2/2) AAS
代入演算子のあるPascalでいいじゃん
147: 2020/10/28(水)13:59 ID:hMYVwwX8(1) AAS
小6だからって変な言語おすすめする必要ないよな・・・
OSを作りはじめるスーパー小学生かもしれんのにその可能性を叩き潰す必要ある?
上下前次1-新書関写板覧索設栞歴
あと 402 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s