探検
小6におすすめな言語
2020/08/25(火) 15:17:33.43ID:j49hN96g
教えてください。
28デフォルトの名無しさん
2020/09/19(土) 14:14:51.88ID:UH13Why+ これ思い出した
WareZ isn't soft.
WareZ is name of bad copy soft.
Do you understand?
You never come here.
あまりに簡単すぎる英語で書きました。
これで分かるかな?
馬鹿だからわかんないかもね
You is a big fool man.
Hahahaha.
WareZ isn't soft.
WareZ is name of bad copy soft.
Do you understand?
You never come here.
あまりに簡単すぎる英語で書きました。
これで分かるかな?
馬鹿だからわかんないかもね
You is a big fool man.
Hahahaha.
2020/09/19(土) 16:43:58.37ID:Ke+xqhHz
WareZ isn't (a)soft.
WareZ is (the) name of (a) bad copy soft.
Do you understand?
You never come here.
You (are)a (total) fool(ish) man.
Hahahaha.
WareZ is (the) name of (a) bad copy soft.
Do you understand?
You never come here.
You (are)a (total) fool(ish) man.
Hahahaha.
2020/09/19(土) 17:25:27.87ID:2HkJedVD
31デフォルトの名無しさん
2020/09/19(土) 18:33:00.44ID:/ZqQW4lo >>30
頑張りを評価するだけ偉いな
頑張りを評価するだけ偉いな
32デフォルトの名無しさん
2020/09/20(日) 16:41:45.45ID:Ai6dHVB9 日本語
2020/09/21(月) 11:21:27.63ID:ZlQZfuJS
小学生はエロい
34デフォルトの名無しさん
2020/09/21(月) 21:25:33.10ID:cxCVzlZ/ 議論にもなってないけど、割と本気でHaskellは授業で使うプログラミング言語にピッタリなんだけどな・・・。
>>21の例の通り、宿題をPCに解かせるプログラムを自分がPCになって解く事が出来るから、
PCに宿題を解かせる事だけが上手くなって算数は身に付かないって心配が無い。
(ほぼ数学なので、紙と鉛筆で実行過程をエミュレート出来る)
PCでしか実行出来ない他のプログラミング言語に対する大きなアドバンテージだと思うんだけど。
>>21の例の通り、宿題をPCに解かせるプログラムを自分がPCになって解く事が出来るから、
PCに宿題を解かせる事だけが上手くなって算数は身に付かないって心配が無い。
(ほぼ数学なので、紙と鉛筆で実行過程をエミュレート出来る)
PCでしか実行出来ない他のプログラミング言語に対する大きなアドバンテージだと思うんだけど。
2020/09/21(月) 22:22:18.48ID:y+YY/hAY
まず手持ちのスマホで実行できないと納得しないよ
2020/09/22(火) 02:26:01.20ID:CP+6Jcr0
>>11
ご同輩 でもマシン語メインだからベーマガは1回だけ(不採用)
ご同輩 でもマシン語メインだからベーマガは1回だけ(不採用)
2020/09/22(火) 03:13:05.42ID:2kmwzB0g
2020/10/03(土) 05:16:22.19ID:TZMEpNzL
jsなら7行テトリスがスマホで遊べるかんな
2020/10/10(土) 09:01:52.22ID:qt6u2bFw
この国は終わってる。 かなり老害が進んでる。
中学校で使われているプログラミングの教科書を全部購入して比較
Jul 17, 2018
https://yandod.github.io/blog/2018/07/17/programming-textbook/#
中学校の技術の各社の教科書でしょうかいされているプログラミング言語の例。
共通しているのはBASICとC。
東京書籍はCOBOL、Java、JavaScript、
開隆堂はFORTLAN、
教育図書はPascalを挙げている。
中学校で使われているプログラミングの教科書を全部購入して比較
Jul 17, 2018
https://yandod.github.io/blog/2018/07/17/programming-textbook/#
中学校の技術の各社の教科書でしょうかいされているプログラミング言語の例。
共通しているのはBASICとC。
東京書籍はCOBOL、Java、JavaScript、
開隆堂はFORTLAN、
教育図書はPascalを挙げている。
40デフォルトの名無しさん
2020/10/18(日) 11:21:27.89ID:H1xH1BRx elisp
lisp
lisp
2020/10/18(日) 11:28:37.00ID:CqLBM1Q2
Pythonこそオススメしたい。
文法は簡潔で分かりやすいし。
文法は簡潔で分かりやすいし。
42デフォルトの名無しさん
2020/10/18(日) 12:19:22.62ID:vmWunLYe >>37
まあ、都市部から地方まで遍く子供達がPCとScratch使えればHaskellの出番は無いんだけどね。
小6向けは言語を変えるんじゃなくて、さらに複雑なアルゴリズムを学ぶ方向かな。
暇つぶしに組み合わせnCrを書いてみた。
数学
0! = 1
n! = n * (n - 1)!
n P 0 = 1
n P r = n * (n -1) P (r - 1)
n C r = n P r / r!
Haskell
fact 0 = 1
fact n = n * fact (n - 1)
n `p` 0 = 1
n `p` r = n * (n - 1) `p` (r - 1)
n `c` r = n `p` r `div` fact r
まあ、都市部から地方まで遍く子供達がPCとScratch使えればHaskellの出番は無いんだけどね。
小6向けは言語を変えるんじゃなくて、さらに複雑なアルゴリズムを学ぶ方向かな。
暇つぶしに組み合わせnCrを書いてみた。
数学
0! = 1
n! = n * (n - 1)!
n P 0 = 1
n P r = n * (n -1) P (r - 1)
n C r = n P r / r!
Haskell
fact 0 = 1
fact n = n * fact (n - 1)
n `p` 0 = 1
n `p` r = n * (n - 1) `p` (r - 1)
n `c` r = n `p` r `div` fact r
43デフォルトの名無しさん
2020/10/18(日) 12:19:51.59ID:vmWunLYe Python
def fact(n):
a = 1
for x in range(1,n + 1):
a *= x
return a
def p(n,r):
a = 1
for x in range(n - r + 1,n + 1):
a *= x
return a
def c(n,r):
return (p(n,r) // fact(r))
Haskellのfactと`p`はPythonの書き方に合わせるとそれぞれ
fact n = product [1..n]
n `p` r = product [(n - r + 1)..n]
になる。
数学ではproductはΣ(シグマ/sum)の掛け算バージョンであるΠ(大文字のπ)に相当。
普通の言語にはsumはあってもproductは何故か無い。
(まあ作れば良いんだけど)
def fact(n):
a = 1
for x in range(1,n + 1):
a *= x
return a
def p(n,r):
a = 1
for x in range(n - r + 1,n + 1):
a *= x
return a
def c(n,r):
return (p(n,r) // fact(r))
Haskellのfactと`p`はPythonの書き方に合わせるとそれぞれ
fact n = product [1..n]
n `p` r = product [(n - r + 1)..n]
になる。
数学ではproductはΣ(シグマ/sum)の掛け算バージョンであるΠ(大文字のπ)に相当。
普通の言語にはsumはあってもproductは何故か無い。
(まあ作れば良いんだけど)
2020/10/19(月) 20:33:09.80ID:ACTVJQSq
だいたい独善親父が自分の宗教を子供に強制するカタチになるんだよなぁ
巨人の悪口吹き込んで、大洋ホエールズを応援するように仕向けたり
邪悪なM$の野望を打ち砕くために、子供には真に自由なFreeBSD以外を与えないようにしたり
シンプルな古典言語でいいんだよ
巨人の悪口吹き込んで、大洋ホエールズを応援するように仕向けたり
邪悪なM$の野望を打ち砕くために、子供には真に自由なFreeBSD以外を与えないようにしたり
シンプルな古典言語でいいんだよ
2020/10/19(月) 22:11:20.12ID:qSr3w0qH
>シンプルな古典言語でいいんだよ
lispだな
lispだな
2020/10/20(火) 10:25:31.31ID:qYYfNILy
Show you guts cool say what 最高だぜ
47デフォルトの名無しさん
2020/10/20(火) 10:39:02.86ID:pHiz9StD >>45
forth
forth
2020/10/20(火) 11:02:42.35ID:3k48bEYB
> だいたい独善親父が自分の宗教を子供に強制するカタチになるんだよなぁ
> FreeBSD以外を与えないようにしたり
> FreeBSD以外を与えないようにしたり
49デフォルトの名無しさん
2020/10/20(火) 11:40:25.09ID:1v+j53eJ >>44
それこそ数学で十分で、小学生なら>>19みたいに算数に再帰の概念加えるだけで良いんだけどね。(x,yを丸や四角に置き換える)
掛け算だけでも色々な視点から考察出来るし。参考に下は>>19の別視点。
後々、関数型言語や普通の言語との相関も見えて来る。
結局、目的の式を思い付くのが重要で、言語はそれを動かす手段に過ぎないと分かる。
数学(iは右下添字)
y
x × y = Σ xi = x1 + x2 + .. xy
i = 1
Haskell
x × y = sum [x |_ <- [1..y]]
Python
def mul(x,y):
a = 0
for i in range(1,y + 1):
a += x
return a
それこそ数学で十分で、小学生なら>>19みたいに算数に再帰の概念加えるだけで良いんだけどね。(x,yを丸や四角に置き換える)
掛け算だけでも色々な視点から考察出来るし。参考に下は>>19の別視点。
後々、関数型言語や普通の言語との相関も見えて来る。
結局、目的の式を思い付くのが重要で、言語はそれを動かす手段に過ぎないと分かる。
数学(iは右下添字)
y
x × y = Σ xi = x1 + x2 + .. xy
i = 1
Haskell
x × y = sum [x |_ <- [1..y]]
Python
def mul(x,y):
a = 0
for i in range(1,y + 1):
a += x
return a
50デフォルトの名無しさん
2020/10/20(火) 11:52:55.92ID:1v+j53eJ そもそも算数が教育の質が低下してるせいで掘り下げる事をしてないのがプログラミングなんてのが必須になった要因。
プログラミングも形骸化するのは目に見えてる。
プログラミングも形骸化するのは目に見えてる。
2020/10/20(火) 12:08:05.44ID:y00O+Rim
小・中学生が学ぶべきは
日本語 >>> 算数 >>> 英語 >>> 数学 >>> コンピュータ/情報リテラシー >>>>>>>>>> プログラミング
小6だと学年トップクラスで賢い子じゃなければスクラッチのような簡単お遊び系を余暇の時間にやるので十分
日本語 >>> 算数 >>> 英語 >>> 数学 >>> コンピュータ/情報リテラシー >>>>>>>>>> プログラミング
小6だと学年トップクラスで賢い子じゃなければスクラッチのような簡単お遊び系を余暇の時間にやるので十分
52デフォルトの名無しさん
2020/10/20(火) 12:09:31.16ID:pHiz9StD python
functools.reduce(operator.add, range(1, y+1))
functools.reduce(operator.add, range(1, y+1))
2020/10/20(火) 12:15:41.01ID:3k48bEYB
>>50
教育の質って低下しているの?
教育の質って低下しているの?
2020/10/20(火) 12:55:14.98ID:dIM1eY4o
日本語書くのが下手なやつはプログラム書くのも下手
55デフォルトの名無しさん
2020/10/20(火) 13:05:08.13ID:1v+j53eJ >>53
低下と言うか、受験やテスト目的の「やり方だけ教える」教育が続いて久しい。
プログラミングも算数も論理的思考を育む目的だが、それはやり方だけ教えるのでは身に付かない。
どうしてそう言うやり方なのか?を理解しないと暗記やコピペで終わる。
小数点同士の割り算で、割る数も割られる数も10倍100倍して商を出すが、余りはその後1/10,1/100して元に戻すのは何故か?
これを説明出来る教師が何割居るか。
本屋の参考書すらただの1冊も説明した本が無い。
AIに負けない子供を!と声だけ大きくて、実態は全然変わってない。
低下と言うか、受験やテスト目的の「やり方だけ教える」教育が続いて久しい。
プログラミングも算数も論理的思考を育む目的だが、それはやり方だけ教えるのでは身に付かない。
どうしてそう言うやり方なのか?を理解しないと暗記やコピペで終わる。
小数点同士の割り算で、割る数も割られる数も10倍100倍して商を出すが、余りはその後1/10,1/100して元に戻すのは何故か?
これを説明出来る教師が何割居るか。
本屋の参考書すらただの1冊も説明した本が無い。
AIに負けない子供を!と声だけ大きくて、実態は全然変わってない。
2020/10/20(火) 13:25:12.32ID:C+6cO9mm
2020/10/20(火) 13:50:08.91ID:Mso39Itu
1. 基礎をやる。
2. 応用をやる。
3. 抽象的ロジックを学ぶ。
おすすめは2.から入ることです。
小学生にはとにかく簡単に作って簡単に動かせる
プログラミングツールを使うのが本人の興味や好奇心を
刺激してそれについてより学びたいという気持ちを育むのに
適していると思います。
それに適しているのはScratchやUnityであると思います。
Unityは言語ではなく開発環境ですが。
2. 応用をやる。
3. 抽象的ロジックを学ぶ。
おすすめは2.から入ることです。
小学生にはとにかく簡単に作って簡単に動かせる
プログラミングツールを使うのが本人の興味や好奇心を
刺激してそれについてより学びたいという気持ちを育むのに
適していると思います。
それに適しているのはScratchやUnityであると思います。
Unityは言語ではなく開発環境ですが。
2020/10/20(火) 14:12:17.59ID:3k48bEYB
マイナスのつく計算すら習っていない小学生に三角関数の知識が必須なゲーム制作を教えられる自信が無いのだが。
2020/10/20(火) 14:37:32.68ID:BGCClquZ
マウスのひだりボタンをおさえながら〜
もじのうえまでもっていって〜
そうっ!そこではなす!
もじのうえまでもっていって〜
そうっ!そこではなす!
60デフォルトの名無しさん
2020/10/20(火) 17:48:46.97ID:jhsdR4Vv >>)49
#ruby
def mul(x, y)
(1..y).sum{x}
end
#ruby
def mul(x, y)
(1..y).sum{x}
end
2020/10/20(火) 18:01:04.79ID:fAfKHlRh
2020/10/20(火) 18:59:53.34ID:78+LbKIW
2020/10/20(火) 19:12:25.82ID:cYFqOukv
Unityは2010年頃にちょっとだけしか触っていないけど、あれって小学生でも扱えるものなの?
当時は文献が少なすぎて挫折したけど...。
当時は文献が少なすぎて挫折したけど...。
2020/10/20(火) 23:18:37.01ID:pTHIPiuS
unity2018くらいからインターフェースが日本語化出来る様になって
サードパーティー製のアセット
(手裏剣エフェクト等)が標準で入ったりして
VS2019communityとの連携対応でコード補完も充実して敷居が下がったと思う
キーボード打つのはファイル名やオブジェクト名の入力くらいで
他はほぼマウス操作だけでも3Dゲームがコンパイル出来る
サードパーティー製のアセット
(手裏剣エフェクト等)が標準で入ったりして
VS2019communityとの連携対応でコード補完も充実して敷居が下がったと思う
キーボード打つのはファイル名やオブジェクト名の入力くらいで
他はほぼマウス操作だけでも3Dゲームがコンパイル出来る
65デフォルトの名無しさん
2020/10/21(水) 04:56:16.26ID:YRxEdpv5 そういうことじゃないと思うよ
66デフォルトの名無しさん
2020/10/21(水) 09:01:09.21ID:/UqyrNIf >>57
何故、基礎を飛ばして応用?
子供が楽しんでるのはゲーム作りではなく、発表して見て、触ってもらう事。
基礎でも小さな応用の発表と意見交換の繰り返しで自然な曲線で応用に行く。
プログラミングは独立した授業ではなく、算数や社会と言った授業の中に取り込まれる内容だという事を忘れちゃいけない。
ゲームを作らせるのが、プログラミングの目的では無い。
ちなみに、HaskellはPrologに比べると少々面倒臭いが、普通の言語に比べると比較的簡単に家系図とか作れる。
(まあ、Prologのロジック部分はSQLと名を変えて生き残ってるんだが)
Scratchって関数の再帰呼び出し出来たっけ・・・?(ちょっとしか触って無いけど手続きがあるだけで、関数無かった気がする)
家系図もだけど、ハノイの塔とかクイックソートとか、再帰出来ないと難しいアルゴリズム有るけど・・・。
そう言うの学ぶ辺りでPythonとかに行くのだろうか。
PC無い家庭でも学べるHaskellが良いんだが、採用されないよなぁ・・・。
>>60
交換法則とカリー化で。
replicate使用例: replicate 3 1 = [1,1,1]
Haskell
(×) x = sum.replicate x
使用例: 3 × 4 = (sum.replicate 3) 4 = sum [4,4,4] = 12
何故、基礎を飛ばして応用?
子供が楽しんでるのはゲーム作りではなく、発表して見て、触ってもらう事。
基礎でも小さな応用の発表と意見交換の繰り返しで自然な曲線で応用に行く。
プログラミングは独立した授業ではなく、算数や社会と言った授業の中に取り込まれる内容だという事を忘れちゃいけない。
ゲームを作らせるのが、プログラミングの目的では無い。
ちなみに、HaskellはPrologに比べると少々面倒臭いが、普通の言語に比べると比較的簡単に家系図とか作れる。
(まあ、Prologのロジック部分はSQLと名を変えて生き残ってるんだが)
Scratchって関数の再帰呼び出し出来たっけ・・・?(ちょっとしか触って無いけど手続きがあるだけで、関数無かった気がする)
家系図もだけど、ハノイの塔とかクイックソートとか、再帰出来ないと難しいアルゴリズム有るけど・・・。
そう言うの学ぶ辺りでPythonとかに行くのだろうか。
PC無い家庭でも学べるHaskellが良いんだが、採用されないよなぁ・・・。
>>60
交換法則とカリー化で。
replicate使用例: replicate 3 1 = [1,1,1]
Haskell
(×) x = sum.replicate x
使用例: 3 × 4 = (sum.replicate 3) 4 = sum [4,4,4] = 12
2020/10/21(水) 10:29:00.69ID:1W+LDLxS
>>66
最初の2段落までは同意。
しかしどうしてそこからhaskell推しに行くかな。
高学年になれば(身のまわりの生活に沿った)算数にすらついていけない子が出てくる現状で、数学(高度な抽象概念)的なhaskellなんかやらせても、プログラミング嫌いを大量生産するだけだろう。
理解できる人にとっては再帰とかシンプルでキレイな概念かもしれないが、小学生には高度すぎる。
現実の生活でも作業手順として順序、条件分岐、繰り返しで考えるのだから、プログラミングを教える目的としても関数型より手続き型のが適しているだろう。
自分が小学生の親としての立場から見ても、小学生に関数型プログラミングを習わせたいというのは数学が得意な人間のエゴだと感じるよ。
最初の2段落までは同意。
しかしどうしてそこからhaskell推しに行くかな。
高学年になれば(身のまわりの生活に沿った)算数にすらついていけない子が出てくる現状で、数学(高度な抽象概念)的なhaskellなんかやらせても、プログラミング嫌いを大量生産するだけだろう。
理解できる人にとっては再帰とかシンプルでキレイな概念かもしれないが、小学生には高度すぎる。
現実の生活でも作業手順として順序、条件分岐、繰り返しで考えるのだから、プログラミングを教える目的としても関数型より手続き型のが適しているだろう。
自分が小学生の親としての立場から見ても、小学生に関数型プログラミングを習わせたいというのは数学が得意な人間のエゴだと感じるよ。
2020/10/21(水) 11:44:36.58ID:TJZ0h4l7
小学生には同じゲームでもアナログゲームを作らせたほうが遥かに教育効果が高い
画面の中の作られた楽しさよりもっと豊かな世界を五感で体験することがその後の人生を有意義にしてくれる
特に小5小6くらいのゴールデンエイジの体験はものすごく重要
自分からのめり込むような子供以外にその時期プログラミングを学ばせるのは子供の人生を無駄にしてる
画面の中の作られた楽しさよりもっと豊かな世界を五感で体験することがその後の人生を有意義にしてくれる
特に小5小6くらいのゴールデンエイジの体験はものすごく重要
自分からのめり込むような子供以外にその時期プログラミングを学ばせるのは子供の人生を無駄にしてる
69デフォルトの名無しさん
2020/10/21(水) 12:35:36.64ID:xBgAWF1Y >>63
手順を踏めば小学生でも出来るレベル
アルファベットとか知ってるのは前提で
ttps://www.youtube.com/channel/UCxqWXALpfawX5T45-4qD1Qg/videos
手順を踏めば小学生でも出来るレベル
アルファベットとか知ってるのは前提で
ttps://www.youtube.com/channel/UCxqWXALpfawX5T45-4qD1Qg/videos
70デフォルトの名無しさん
2020/10/21(水) 12:36:41.91ID:u7mcTzUA 一般人は手順や段取りすらまともに考えられない。
想定どおりにならなかったときなど、もっと考えていない。
これらを教えるのが小学校のプログラミングで、プログラミング教育の意味がわかってないやつが多すぎる。
想定どおりにならなかったときなど、もっと考えていない。
これらを教えるのが小学校のプログラミングで、プログラミング教育の意味がわかってないやつが多すぎる。
71デフォルトの名無しさん
2020/10/21(水) 12:38:23.44ID:u7mcTzUA 35年くらい前のパソコンサンデーを見ると昔のBASICでも問題ないことがわかる。
72デフォルトの名無しさん
2020/10/21(水) 12:42:52.02ID:xBgAWF1Y >>68 はアナログとアナクロを間違ってる例
73デフォルトの名無しさん
2020/10/21(水) 12:59:52.53ID:tiqsU3pv >>71
電源いれればすぐにLINEで遊べるからな
電源いれればすぐにLINEで遊べるからな
2020/10/21(水) 13:04:59.75ID:TJZ0h4l7
>>72
アナクロとは全く関係ないよ
本来のアナログの意味からすれば誤用には違いないがは日本では定着した用語
https://ja.wikipedia.org/wiki/アナログゲーム
知らない人がいるとは思わなかった
アナクロとは全く関係ないよ
本来のアナログの意味からすれば誤用には違いないがは日本では定着した用語
https://ja.wikipedia.org/wiki/アナログゲーム
知らない人がいるとは思わなかった
75デフォルトの名無しさん
2020/10/21(水) 15:12:34.70ID:NEFROxzK76デフォルトの名無しさん
2020/10/21(水) 15:16:02.79ID:NEFROxzK その為に小学生向けHaskell入門書まで書いて(事実上Amazon限定だが)自費出版までしたんだ。
2020/10/21(水) 15:47:07.22ID:1W+LDLxS
>>75
小学生にプログラミングを教えること自体が目的化してないか?
格差が問題だというなら、格差の是正を訴えるかプログラミング教育の導入を延期させでもした方がいい。
haskellをやらせるくらいなら、そもそもプログラミング教育なんてやめて算数や国語を手厚く教えた方がよほどためになるよ。
それにPC無しで机上でやらせることを考えるなら、別にhaskellでなくたっていいだろう。手続き型言語でフローチャートを手書きするなり穴埋め問題とかでもいい。まあ楽しくはないだろうが、それはhaskellをやらされてもほとんどの子供にとって同じようなもんだと思う。
小学生にプログラミングを教えること自体が目的化してないか?
格差が問題だというなら、格差の是正を訴えるかプログラミング教育の導入を延期させでもした方がいい。
haskellをやらせるくらいなら、そもそもプログラミング教育なんてやめて算数や国語を手厚く教えた方がよほどためになるよ。
それにPC無しで机上でやらせることを考えるなら、別にhaskellでなくたっていいだろう。手続き型言語でフローチャートを手書きするなり穴埋め問題とかでもいい。まあ楽しくはないだろうが、それはhaskellをやらされてもほとんどの子供にとって同じようなもんだと思う。
2020/10/21(水) 15:58:42.25ID:TJZ0h4l7
2020/10/21(水) 17:46:15.23ID:9lUFHGYK
ね、自分と他人の区別がついてなくて
子供に自己投影できると思ってる人が発生しちゃうでしょ?
自分にできることは、子供にもできる
自分が理解できるものは、子供も理解できる
自分が好きなものは、子供も好きになる
そうじゃない子供は想定外
根本的に自己中多いよね、この業界
子供に自己投影できると思ってる人が発生しちゃうでしょ?
自分にできることは、子供にもできる
自分が理解できるものは、子供も理解できる
自分が好きなものは、子供も好きになる
そうじゃない子供は想定外
根本的に自己中多いよね、この業界
80デフォルトの名無しさん
2020/10/21(水) 18:11:28.44ID:NEFROxzK81デフォルトの名無しさん
2020/10/21(水) 18:14:01.54ID:YRxEdpv5 >>75
PCなんか大量に廃棄されて処分にお金がかかっている状態だぞ?
PCなんか大量に廃棄されて処分にお金がかかっている状態だぞ?
2020/10/21(水) 18:15:34.58ID:7rivaHQh
Haskellの人はRubyの人の次に話が通じないから議論しようとしてもストレスたまるだけだよ
2020/10/21(水) 18:42:36.68ID:VlkQ0lPM
単純に手段が目的になってるケースだね
そこに囚われて有りきで全て理由付けしちゃってるから本人は筋が通ってるつもりでも他人からは狂人にしか見えないっていう...
自己中ってより思考パターンが障害持ちか心の病かカルト信者
視野狭窄に気付く為にはそこから2-3ヶ月程離れてみればいいんだけどこういう人って聞かないからね...
そこに囚われて有りきで全て理由付けしちゃってるから本人は筋が通ってるつもりでも他人からは狂人にしか見えないっていう...
自己中ってより思考パターンが障害持ちか心の病かカルト信者
視野狭窄に気付く為にはそこから2-3ヶ月程離れてみればいいんだけどこういう人って聞かないからね...
84デフォルトの名無しさん
2020/10/21(水) 18:50:50.64ID:F4fghCXJ 私はあえてC++をお勧めしたいですね。
85デフォルトの名無しさん
2020/10/21(水) 19:27:44.36ID:xBgAWF1Y >>81
これな
ttps://maidonanews.jp/article/13832528
ttps://news.yahoo.co.jp/articles/2bdeaa658828fa87b1c94118f6e251b2a62a8f9d
これな
ttps://maidonanews.jp/article/13832528
ttps://news.yahoo.co.jp/articles/2bdeaa658828fa87b1c94118f6e251b2a62a8f9d
2020/10/21(水) 19:28:10.08ID:1W+LDLxS
>>82
話が通じないとはいっても、haskellの人は自分の主張に拘りがあるだけで知性を持った人間として会話にはなるけど、Rubyの人はどこかで誰かが言った言葉を文脈無視でコピペの如く垂れ流すだけだからまったく論理的でなく会話にもならないな。
話が通じないとはいっても、haskellの人は自分の主張に拘りがあるだけで知性を持った人間として会話にはなるけど、Rubyの人はどこかで誰かが言った言葉を文脈無視でコピペの如く垂れ流すだけだからまったく論理的でなく会話にもならないな。
87デフォルトの名無しさん
2020/10/21(水) 19:36:03.57ID:YRxEdpv5 Rubyのひとは無職なんだろうね
2020/10/21(水) 20:00:14.54ID:HJxHMNRz
無職ガイジ「Rubyは稼げる!引く手あまた!」
説得力ねぇよなwww
説得力ねぇよなwww
89デフォルトの名無しさん
2020/10/21(水) 20:51:52.80ID:YRxEdpv5 簡単なWebは結局、PHPにおさまり、その他はPythonに置き換わってしまったからね。
90デフォルトの名無しさん
2020/10/23(金) 08:23:31.05ID:jXY97QUs2020/10/23(金) 19:36:19.57ID:yNaAiylg
義務教育期間ならどんなクズでも出席日数さえ足りてれば進級進学できるんだから業界スタンダードなC#を鬼になって教えるのがベスト
成果物を見せてこんなのができるんだよーって教えればやる気にはなる
成果物を見せてこんなのができるんだよーって教えればやる気にはなる
92デフォルトの名無しさん
2020/10/24(土) 01:58:47.06ID:1fTZ1cE8 うーん、今はGoがあるからな
C#も悪くは無いと思うんだけど
C#も悪くは無いと思うんだけど
93デフォルトの名無しさん
2020/10/24(土) 08:44:28.68ID:l7tFILML まあ、知り合いに小学生の内にBASIC->アセンブラまで覚えた人居るし、不可能じゃ無いんだろうけど・・・。
2020/10/24(土) 09:01:51.73ID:yNjKn67N
95デフォルトの名無しさん
2020/10/24(土) 10:50:46.11ID:hS/lv/UK 親の影響だろうね。親がプログラマだと子供に教えているわけでもないのに、勝手にあれこれやってどんどんすごいことをしているという話を聞く。
96デフォルトの名無しさん
2020/10/24(土) 10:52:06.37ID:h2h5EJ6D C++始めていれば、Arduino出来る。
これは大きい。
これは大きい。
2020/10/24(土) 23:16:20.49ID:ZaC2aARH
98デフォルトの名無しさん
2020/10/25(日) 09:36:06.66ID:sZhybdHq C++でArduinoを始めよう。
99デフォルトの名無しさん
2020/10/25(日) 09:55:39.29ID:7UCeAjtw Haskellだと普通の言語より関数化やマルチスレッドプログラミング教え易い。
リストや配列から値を求める->foldl関数
リストや配列から新しいリストや配列を作る->map関数
そのfoldlやmapも自作出来る。
普通の言語では「良く使う機能は関数にまとめましょう」と言いながら良く使うforのパターンを関数にしない。
関数型言語の機能を取り込んで、ライブラリにmapやfold、あるいはcollect、reduceが備わってから使い出した。
文化的に「良く使う機能は関数にまとめましょう」を実践させるのに関数型言語の方が向いてる。
リストや配列から値を求める->foldl関数
リストや配列から新しいリストや配列を作る->map関数
そのfoldlやmapも自作出来る。
普通の言語では「良く使う機能は関数にまとめましょう」と言いながら良く使うforのパターンを関数にしない。
関数型言語の機能を取り込んで、ライブラリにmapやfold、あるいはcollect、reduceが備わってから使い出した。
文化的に「良く使う機能は関数にまとめましょう」を実践させるのに関数型言語の方が向いてる。
100デフォルトの名無しさん
2020/10/25(日) 09:55:47.63ID:7UCeAjtw マルチスレッドプログラミングも、身近な所だと四則演算が混じった計算でも、同時に出来るところは同時に計算しても良い。
例として、()で括った箇所は同時に計算して良い。
2 * 3 + 4 / 2 = (2 * 3) + (4 / 2) = 6 + 2 = 8
普通の言語だと、プログラマーがスレッドを作って並列処理させるし、デッドロックを気にしないといけないけど、
関数型言語はここをマルチスレッドでと指定すれば後は言語側がやってくれる。
(普通の言語だと、上の例ですらデッドロックや処理待ちを気にしないといけない)
上の例をマルチスレッドにするとむしろ遅くなるが、クイックソートの分割統治法とかで威力を発揮する。
import Control.Parallel.Strategies
main = print (a + b)
where (a,b) = (2 * 3, 4 `div` 2) `using` evalTuple2 rpar rpar
例として、()で括った箇所は同時に計算して良い。
2 * 3 + 4 / 2 = (2 * 3) + (4 / 2) = 6 + 2 = 8
普通の言語だと、プログラマーがスレッドを作って並列処理させるし、デッドロックを気にしないといけないけど、
関数型言語はここをマルチスレッドでと指定すれば後は言語側がやってくれる。
(普通の言語だと、上の例ですらデッドロックや処理待ちを気にしないといけない)
上の例をマルチスレッドにするとむしろ遅くなるが、クイックソートの分割統治法とかで威力を発揮する。
import Control.Parallel.Strategies
main = print (a + b)
where (a,b) = (2 * 3, 4 `div` 2) `using` evalTuple2 rpar rpar
101デフォルトの名無しさん
2020/10/25(日) 12:03:13.74ID:0u/0rMBT >>99
だから小学生にプログラミングを教える目的は高度なプログラミングができるプログラマを育成することでなくで、物事を整理して論理的に思考したり現実的な作業の手順を上手く考えられるようにすることなんだって。
別にマルチスレッドなんて本職のプログラマが書ければいい話で小学生が気にするようなものではない。関数化だって、一塊の同じような処理を塊ととらえて抽象化できれば十分で、関数型言語のような現実よりも数学に近いところでの抽象化は不要だろう。
haskellの良さ自体を否定する気はないが、それを主張する相手はこのスレやましてや一般的な小学生が相手ではなく、別スレとか、プログラミング好きの中高生かそれ以上の方が適切だろう。
だから小学生にプログラミングを教える目的は高度なプログラミングができるプログラマを育成することでなくで、物事を整理して論理的に思考したり現実的な作業の手順を上手く考えられるようにすることなんだって。
別にマルチスレッドなんて本職のプログラマが書ければいい話で小学生が気にするようなものではない。関数化だって、一塊の同じような処理を塊ととらえて抽象化できれば十分で、関数型言語のような現実よりも数学に近いところでの抽象化は不要だろう。
haskellの良さ自体を否定する気はないが、それを主張する相手はこのスレやましてや一般的な小学生が相手ではなく、別スレとか、プログラミング好きの中高生かそれ以上の方が適切だろう。
102デフォルトの名無しさん
2020/10/25(日) 12:14:02.02ID:usbfp6+y プログラミングそのものを教える前に数学を教えろって意見は大賛成
さらに論理学も必要
ただしHaskelおまえはいらん
さらに論理学も必要
ただしHaskelおまえはいらん
103デフォルトの名無しさん
2020/10/25(日) 19:11:06.08ID:7UCeAjtw >>101
うむ。
マルチスレッドまでは言い過ぎた。
でも、forで良く使うパターンを関数化しない or 出来ないのは普通の言語だと演算子が関数の一種として扱われてないから。
わざわざラムダ式や関数書かなきゃ行けないのはスマートじゃない。
高階関数取り入れても、まだまだ再利用性には関数型言語と差がある。
sum = foldl (+) 0
product = foldl (*) 1
reverse = foldl (\xs x -> x:xs) []
うむ。
マルチスレッドまでは言い過ぎた。
でも、forで良く使うパターンを関数化しない or 出来ないのは普通の言語だと演算子が関数の一種として扱われてないから。
わざわざラムダ式や関数書かなきゃ行けないのはスマートじゃない。
高階関数取り入れても、まだまだ再利用性には関数型言語と差がある。
sum = foldl (+) 0
product = foldl (*) 1
reverse = foldl (\xs x -> x:xs) []
104デフォルトの名無しさん
2020/10/25(日) 19:11:15.93ID:7UCeAjtw >>102
ぶっちゃけその通り。
ただ、今の教育課程はいささか・・・いあ、大分不安がある。
例えば足し算の性質、合併と増加。
参考書では同時か後からかの違いと説明されるが、これではリンゴとみかんの合計の様な違うものの足し算の説明が出来ない。
ペアノの公理はリストと同型であるが、そう考えると合併はappend(リストの結合)だ。
一方の増加は足す数をカウンタとして足される数を増やすので、見ようによっては足す数の型を足される数の型に変換して合併する処理だ。
型にすると
合併の型: a -> a -> a
増加の型: a -> b -> a
そうするとリンゴとみかんの合計は
リンゴとみかん リンゴ みかん
(0 + 3) + 5
リンゴとみかん みかん
3 + 5
リンゴとみかん
8
となる。
ぶっちゃけその通り。
ただ、今の教育課程はいささか・・・いあ、大分不安がある。
例えば足し算の性質、合併と増加。
参考書では同時か後からかの違いと説明されるが、これではリンゴとみかんの合計の様な違うものの足し算の説明が出来ない。
ペアノの公理はリストと同型であるが、そう考えると合併はappend(リストの結合)だ。
一方の増加は足す数をカウンタとして足される数を増やすので、見ようによっては足す数の型を足される数の型に変換して合併する処理だ。
型にすると
合併の型: a -> a -> a
増加の型: a -> b -> a
そうするとリンゴとみかんの合計は
リンゴとみかん リンゴ みかん
(0 + 3) + 5
リンゴとみかん みかん
3 + 5
リンゴとみかん
8
となる。
105デフォルトの名無しさん
2020/10/25(日) 19:22:31.65ID:eXluQ9/t 腐らないみかん?
106デフォルトの名無しさん
2020/10/25(日) 19:31:04.14ID:7UCeAjtw 合併の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]
= 1:1:1:[1,1]
= [1,1,1,1,1]
増加のHaskell(リスト)の例
xs ^+ [] = xs
xs ^+ (_:ys) = 1:xs ^+ ys
[1,1,1] ^+ ['a','b']
= 1:[1,1,1] ^+ ['b']
= 1:1:[1,1,1] ^+ []
= 1:1:[1,1,1]
= [1,1,1,1,1]
[] ++ 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]
= 1:1:1:[1,1]
= [1,1,1,1,1]
増加のHaskell(リスト)の例
xs ^+ [] = xs
xs ^+ (_:ys) = 1:xs ^+ ys
[1,1,1] ^+ ['a','b']
= 1:[1,1,1] ^+ ['b']
= 1:1:[1,1,1] ^+ []
= 1:1:[1,1,1]
= [1,1,1,1,1]
107デフォルトの名無しさん
2020/10/25(日) 19:35:45.13ID:0u/0rMBT >>104
もうお前がどこに向かってるのか分からんよ。
小学生はそんな小難しい理屈なんか考えずに何の問題もなくリンゴとミカンの数の足し算ができるしそれで過不足は無い。
haskellを小学生に教える理由としてはことごとく的はずれで、先に自分の中でhaskellを推すということが大前提になってしまってるだろう。目的と手段が混同されたままで何の価値もない議論になってるぞ。
もうお前がどこに向かってるのか分からんよ。
小学生はそんな小難しい理屈なんか考えずに何の問題もなくリンゴとミカンの数の足し算ができるしそれで過不足は無い。
haskellを小学生に教える理由としてはことごとく的はずれで、先に自分の中でhaskellを推すということが大前提になってしまってるだろう。目的と手段が混同されたままで何の価値もない議論になってるぞ。
108デフォルトの名無しさん
2020/10/25(日) 19:36:32.76ID:qxf88E90 入門という意味なら(癖が強いけど)環境構築も含めて JavaScript + HTML かな
使ってるのが Windows なら C# というのも選択肢に入ってくる
Python とか Ruby は環境構築がアレだけど Anaconda とかで無事に入るのであれば Python というのも無くはないがそれなりにクセがある
使ってるのが Windows なら C# というのも選択肢に入ってくる
Python とか Ruby は環境構築がアレだけど Anaconda とかで無事に入るのであれば Python というのも無くはないがそれなりにクセがある
109デフォルトの名無しさん
2020/10/25(日) 19:45:12.75ID:wvC05HVI アルゴリズム体操のようなクィックソート体操があると面白いなぁ
110デフォルトの名無しさん
2020/10/25(日) 20:05:58.17ID:0u/0rMBT >>109
大人のピタゴラスイッチでやっていたしめじソートやじゃがいもソートは面白かったね
大人のピタゴラスイッチでやっていたしめじソートやじゃがいもソートは面白かったね
111デフォルトの名無しさん
2020/10/25(日) 22:54:29.10ID:jX2Ujasg >>25
とりあえすtoつけろやあんぽんたん
とりあえすtoつけろやあんぽんたん
112デフォルトの名無しさん
2020/10/26(月) 03:56:07.45ID:OVBcl2zY C++をやっておけば、Arduinoを始められるという利点がある。
113デフォルトの名無しさん
2020/10/26(月) 12:36:20.39ID:mZWtyFpe >>107
小学生にはおはじきで動きを教えれば良いんだが、教師の側は知っておいた方がいい。(だから参考書にも変な解釈が載ったりする)
言いたかったのは、理屈を教えず「そういう決まり」で教えるのでは無く、理屈を教えたり理屈を探究させたりする内容の授業が大切。
それこそが論理的思考をそれこそが論理的思考を育てる。
ただドリルを繰り返しても身に付かない。
そう言う意味でのプログラミングでも、処理過程の見え難い普通の言語(デバッガーがあれば多少マシ程度)よりHaskellの方が理屈を考え易い。
小学生にはおはじきで動きを教えれば良いんだが、教師の側は知っておいた方がいい。(だから参考書にも変な解釈が載ったりする)
言いたかったのは、理屈を教えず「そういう決まり」で教えるのでは無く、理屈を教えたり理屈を探究させたりする内容の授業が大切。
それこそが論理的思考をそれこそが論理的思考を育てる。
ただドリルを繰り返しても身に付かない。
そう言う意味でのプログラミングでも、処理過程の見え難い普通の言語(デバッガーがあれば多少マシ程度)よりHaskellの方が理屈を考え易い。
114デフォルトの名無しさん
2020/10/26(月) 17:50:57.92ID:mZWtyFpe115デフォルトの名無しさん
2020/10/26(月) 18:27:43.61ID:qF0DukLx 好きな言語で簡単なコードを描いて答えてください
x, y は整数
x > 0
y < 4 / x
を満たす x, y の組み合わせを全て出力
x, y は整数
x > 0
y < 4 / x
を満たす x, y の組み合わせを全て出力
116デフォルトの名無しさん
2020/10/26(月) 18:33:47.76ID:eROnJLfC これはprologwww
117デフォルトの名無しさん
2020/10/26(月) 18:39:43.21ID:qF0DukLx みんな判ってるだろうと思うけど
0 < x < 4 の 4 とか勝手な上限設定するのは反則ね
0 < x < 4 の 4 とか勝手な上限設定するのは反則ね
118デフォルトの名無しさん
2020/10/26(月) 19:29:34.52ID:0rRTb9Rw119デフォルトの名無しさん
2020/10/26(月) 19:33:12.75ID:VrjIJ6iF 5chのクソスレで必死に啓蒙活動とか発達障害かキチガイ
120デフォルトの名無しさん
2020/10/26(月) 21:06:55.37ID:AQRN76lK ぶっちゃけ普通の数学でn進数を暗記して色の管理とか行列と絡めてSQLでユーザー管理でも組ませてLINEとかはこうやってみんなのくだらねーおしゃべりを中継してるんだぞ!っとかの方が実感しやすくね?
口語使えないやつらにいきなり文法パズルやらせたって睡眠導入にしかならんと思
睡眠障害もちを集めた特別教室ならどれでも良いだろうけど
口語使えないやつらにいきなり文法パズルやらせたって睡眠導入にしかならんと思
睡眠障害もちを集めた特別教室ならどれでも良いだろうけど
121デフォルトの名無しさん
2020/10/26(月) 21:30:14.96ID:artpKwJu >>114
コテ付けてもらえる?
コテ付けてもらえる?
122デフォルトの名無しさん
2020/10/26(月) 22:55:12.39ID:eROnJLfC 面と胴も。
123デフォルトの名無しさん
2020/10/27(火) 06:23:23.96ID:HBnjR0ag124デフォルトの名無しさん
2020/10/27(火) 07:42:41.13ID:2iAdYJTU >>115
#ruby
#x,yは正の整数とする
n=4
(1..n).each{|x|(1..n/x).each{|y|p [x,y]}}
実行結果
[1, 1]
[1, 2]
[1, 3]
[1, 4]
[2, 1]
[2, 2]
[3, 1]
[4, 1]
#ruby
#x,yは正の整数とする
n=4
(1..n).each{|x|(1..n/x).each{|y|p [x,y]}}
実行結果
[1, 1]
[1, 2]
[1, 3]
[1, 4]
[2, 1]
[2, 2]
[3, 1]
[4, 1]
125デフォルトの名無しさん
2020/10/27(火) 11:52:15.04ID:ytFGmFUn (1..n) の部分が反則ですって
126デフォルトの名無しさん
2020/10/27(火) 11:52:50.45ID:ytFGmFUn しかも答え間違ってるしωωω
127デフォルトの名無しさん
2020/10/27(火) 12:24:25.66ID:MWzm/YXn 無限個あるので出力できません
おわり
おわり
レスを投稿する
ニュース
- 【少子化】少子化は女のせい?男のせい?SNSで不毛すぎる議論が勃発…「産ませる発言」vs「淘汰される遺伝子」泥沼バトルへ ★3 [ぐれ★]
- 政府に物価高の「恩恵」 税収は過去最高80兆円超の見通し [バイト歴50年★]
- 【F1】角田裕毅のレッドブルグループ退団が決定 海外メディアが一斉報道「彼の居場所はない」 [鉄チーズ烏★]
- 日テレ社長 国分太一に「答え合わせするまでもない」 聴取時の内容そのものが「コンプライアンス違反」 [Ailuropoda melanoleuca★]
- 【為替】円154円台に上昇、NY株400ドル超安 日米金利差の縮小観測広がる [蚤の市★]
- 迫る「ペットボトル200円」時代 もはや値上げはタブーではない? [蚤の市★]
- ジャップハロワ職員、求職者になりすまして就職件数水増しwww [246620176]
- 【実況】博衣こよりのえちえち朝こよ🧪
- 料理は毎日作れば必ず上手くなる
- 「私は『一つの中国』を支持します」と表明した日本人アーティスト、中国での大規模公演も全く支障なく完全成功→ネトウヨ「裏切り者!」 [314039747]
- 彡(♥)(♥)「あ、待って待って!今ここで伝えたいんです!」
- 26歳公認会計士をハサミで突き殺した佐藤琴美さん(26)「ハゲすぎる、毛を生やせ」などと日常的に暴力 [963243619]
