ぶっちゃけ始めるのにいい言語て何 part4

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2021/03/13(土) 14:15:45.21ID:a+miF64E
前スレ

ぶっちゃけ始めるのにいい言語て何 part3
https://mevius.5ch.net/test/read.cgi/tech/1599110613/
2デフォルトの名無しさん
垢版 |
2021/03/13(土) 14:16:59.46ID:BHUVv8XX
あわしろ氏もお勧めする数学的言語、Haskell。
3デフォルトの名無しさん
垢版 |
2021/03/13(土) 14:26:40.62ID:pvrxhl6N
>>1
スレ立て乙m(_ _)m
2021/03/13(土) 14:49:29.80ID:Wp/3U0+u
まともにプログラム書けない人たちが誰でもできていいはずの言語を始めるということを難しそうに語るスレ
2021/03/13(土) 15:07:20.42ID:f5S30BZg
推奨NGワード: あわしろ
2021/03/13(土) 15:36:13.12ID:2P0ImQrQ
本当に次スレ必要でしたか?
7デフォルトの名無しさん
垢版 |
2021/03/13(土) 15:42:16.25ID:POgpihI1
>>4
プログラミング言語の一からの習得なんて、じつは誰にでも出来るはずの初歩的技能だったのか、なるほど。
日本では高校生がLinuxディストリビューションを開発してるし、海外では12歳(小学六年)と14歳(中学二年)が主体となってLinuxディストリビューションを開発したみたいだし。
8デフォルトの名無しさん
垢版 |
2021/03/13(土) 15:44:07.88ID:POgpihI1
>>7
前者
NNlinux

後者
Zorin OS
9デフォルトの名無しさん
垢版 |
2021/03/13(土) 16:45:43.21ID:BHUVv8XX
プログラムよりディストリのほうが技術力高いだろ。
2021/03/13(土) 17:07:51.41ID:f5S30BZg
推奨NGワード: ディストリ
11デフォルトの名無しさん
垢版 |
2021/03/13(土) 17:30:13.87ID:BHUVv8XX
ディストリ作るには全体を調和させなければならない。
あのソフトはlibc5、このソフトはlibc6というような微妙なバランスを取って、初めて成立する。
12デフォルトの名無しさん
垢版 |
2021/03/13(土) 17:57:25.74ID:SdgYEnRg
・すぐに試せる使える
・周囲に知ってる人がそれなりにいる

この辺から考えるとJavascriptとかPythonあたりかな
あとはシェルスクリプトとか
Windowsだと標準のPowershellが地味にすごいんだが残念ながら使い手が少ない
2021/03/13(土) 18:03:04.84ID:JM8M9JoF
今はオンラインでできるから大半の言語がすぐに試せる
14前スレでJSを推した者
垢版 |
2021/03/13(土) 18:24:23.42ID:QBlwJKKa
となると後は、
・使いこなせる人が多く、書籍やWeb上のサイトが多い
・文法が簡単でその割に派手なことが出来る
という条件を満たすものとなる
やはりJavaScriptでは

別に他の意見を否定する気は無いんだけど、
「始めるのに向いてる」という点を考えると、CやHaskellは無い気がする
15デフォルトの名無しさん
垢版 |
2021/03/13(土) 19:40:50.90ID:BHUVv8XX
Haskellを制するものが未来を制するので、日本も小学校で教えるべき。
2021/03/13(土) 20:33:24.52ID:0dFTrZIq
JavaScriptは悪く無いけど判断基準がショボくて参考にならない
17デフォルトの名無しさん
垢版 |
2021/03/13(土) 21:50:58.63ID:BHUVv8XX
あえて言おう。
Javascriptは悪である。
2021/03/13(土) 22:30:47.21ID:oQqZnDK5
jsは昔から割りとボロクソに言われてるのに現在のこの繁栄っぷり
対してHaskellは昔から(もう結構古い言語)スゲースゲー言われてるのに未だに仲間内でモナモナ言ってる完全なる閉じコン
19デフォルトの名無しさん
垢版 |
2021/03/13(土) 22:42:23.33ID:BHUVv8XX
無名のお前より、あわしろ氏を信じる。
20デフォルトの名無しさん
垢版 |
2021/03/13(土) 22:51:11.59ID:SdgYEnRg
Haskellは数学好きな学生には「いいおもちゃアルよ」と言う可能性あるけどそのくらいかな
まあそのケースだとオレならScheme進めるかもしれんが
2021/03/13(土) 22:51:14.35ID:6ChX9ica
smalltalk と一緒で、教養として知っておく地位に収まりつつあるな Haskell。

純粋性を求めたものなので、ものっそ面白いから教養としては俺もいつか勉強したい
2021/03/13(土) 22:55:32.21ID:IGe4z4Op
結局目的に寄るだろ
プログラマーとしてとりあえず働いてみたいですって人に関数型みたいなオタク言語紹介してるやつは病気だと思う
23デフォルトの名無しさん
垢版 |
2021/03/14(日) 00:32:04.47ID:BsjTGNRz
pythonはJupyter Notebookが使いやすい
環境構築もAnaconda入れればいいし

JavaScriptやTypeScriptはブラウザで実行結果が確認できるので始めるのに環境構築もいらない

言語覚えるんだったらこれらが向いてると思う

JavaScriptは各ブラウザに組み込まれた共通の実装という点ですぐなくなる言語ではないし、それを簡素かつ堅牢に記述できるTypeScriptも無用にはならんと思う

Pythonはサードパーティの機能が豊富だから、データサイエンスや機械学習を学ぶなら一番の近道
API叩くモジュールが用意してあったりするのもありがたい

コンパイル言語が学びたいならその後でも悪くないかなと
24デフォルトの名無しさん
垢版 |
2021/03/14(日) 00:47:25.76ID:VFwThnn/
こんなプログラミング言語を見つけた。。。

Scratchはいいぞ
s://mevius.5ch.net/test/read.cgi/tech/1606292791/
【マウスだけで】Scratch【プログラミング】その1
s://mevius.5ch.net/test/read.cgi/tech/1312625035/
25デフォルトの名無しさん
垢版 |
2021/03/14(日) 00:55:38.63ID:VFwThnn/
>>13
オンラインで出来る、、、

って、>>24のScratchみたいに開発環境のインストールなしに、インターネット上の開発環境サーバに接続し、PCやスマートフォンのWebブラウザから開発も実行も出来る言語ってことかな
2614
垢版 |
2021/03/14(日) 01:27:30.35ID:H8M4SK/I
>>23
俺も、「初心者に勧める」のに向いてる言語としてはJSとPythonが
ツートップだと思う
ずっとやるわけではないから、Pythonのように日本ではあまり浸透してない言語
でも全く問題ない

もちろん、その後本格的に勉強するべき言語は進みたい職種によって変わってくる
と言わざるを得ない
例えば、スマホアプリの開発をしたいなら、もはやKotlinかSwiftをやらなきゃ
仕方ないのだからその2つのどちらかということになる

このスレでは前者の議論をしているのだと思うが、
後者に関してはもはやほとんど議論の余地はないと個人的には思う
27デフォルトの名無しさん
垢版 |
2021/03/14(日) 02:33:45.67ID:DiyAp4OB
勉強法はどうやったらいいん
テキストなぞればいいのですか
2021/03/14(日) 05:38:58.80ID:IL1Rx7pe
YouTube で有名な、雑食系エンジニア・KENTA は、Ruby を勧めている。
学習環境が整っている

Rails 6 の本だけでも、数冊出てる。
ネットでも、Rails ガイド、Rails Tutorial など

JavaScript は、言語仕様がクソだから、
深入りせずに、Railsで使う範囲だけを勉強した方がよい

サイの表紙の2冊のサイ本があるけど、
こういう本格的な本をやってると、キリがない
29デフォルトの名無しさん
垢版 |
2021/03/14(日) 07:38:32.05ID:tEaHkbQY
>>28
JavaScriptは言語仕様が良い
柔軟性の良さを持ちつつ最適化にも有利なためスクリプト言語の中で最も速い
30デフォルトの名無しさん
垢版 |
2021/03/14(日) 08:30:47.52ID:BsjTGNRz
JSの利点はGoogle Facebook Microsoft等
利点の増大に力を貸す大企業がいることかな
V8 React TypeScript など功績はかなり大きいかと
もともと彼らが扱い続けてきた言語だからね
2021/03/16(火) 01:42:00.28ID:wP2xnW5z
ゲーム作りたい場合ってHSPから始めるべき?
2Dシューティング作りたいです
2021/03/16(火) 03:36:58.40ID:ZppluVpF
unity/C#が情報一番多そう
2Dだとcocos2dxでもいいけどc++はしんどいかと
2021/03/16(火) 17:10:10.54ID:oejuqX5G
HSPなんて覚えても実務では全く使わないから、素直にC#から始めるべき
エクセルVBAでマリオ作ってもいいかな(笑)
2021/03/16(火) 21:10:00.81ID:4EboH5iB
就職するなんて言っていないのに……
仕事なら前提の確認はしようね
2021/03/16(火) 21:17:30.43ID:3q3/HAC9
HSPでいいんじゃない
あとはUnity+C#とか
普通の人は作りたいものがないから何の言語が良いのかすらわからない
2021/03/17(水) 02:06:54.18ID:0a8RAU39
そんな普通の人に、プログラミングの実感を持ってもらうにはどうすればいいか、
という観点からお勧めの言語を提案していくのがこのスレの趣旨
2021/03/17(水) 09:02:27.51ID:+MPLm7kX
実務はともかく後々考えるとC#(とUnity)がいいんじゃないか。
ゲーム作りに飽きたり挫折してもC#なら他で役に立つ。

ゲーム作りってプログラム自体もきついけど
素材用意が自分は割と苦行だったな。
2021/03/17(水) 22:09:13.49ID:W80ESG/m
>>31
Unity(C#)が一番選択肢としては良さそうだけど
webでも2Dなら十分作れるのでHTML5のcanvasに描画する方法もアリかと思う
canvasを扱うライブラリを使うのも良いし、多少行列やら分かるなら
直接canvasを操作しても問題は無いかと思う
ググれば沢山資料もあると思うのでjavascriptの勉強にもなるし悪くは無い選択かと
2021/03/17(水) 22:34:18.42ID:yxHVVu1O
>>38
> webでも2Dなら十分作れるので

まるで3Dは十分作れないみたいな言い方はやめろ
https://www.babylonjs.com/games/
2021/03/17(水) 23:09:55.64ID:W80ESG/m
>>39
2Dで作りたいという質問だったので3Dには触れなかっただけ
特に意図は無い
2021/03/18(木) 16:50:24.44ID:1ehsJGc/
Docker的には3択らしい

Language-specific getting started guides
Learn how to set up your Docker environment and start containerizing your applications.
Choose a language below to get started.
Node.js, Python, Java
2021/03/18(木) 17:30:58.71ID:7Uj1c/fU
DockerはGo製なのに…
43デフォルトの名無しさん
垢版 |
2021/03/18(木) 18:44:55.78ID:9Us3DAdN
>>31
WebGL+JavaScriptがいいよ
44デフォルトの名無しさん
垢版 |
2021/03/18(木) 19:08:42.54ID:1sWV2MVC
あわしろ氏がお勧めするHaskell。
2021/03/18(木) 23:56:02.68ID:Vto6yDfi
推奨NGワード: あわしろ
2021/03/19(金) 14:49:25.34ID:co8RkYsd
O'Reilly Japan Ebook Store Sales Ranking
1位 モノリスからマイクロサービスへ
2位 プログラミングTypeScript
3位 リーダブルコード
4位 Raspberry Piクックブック 第3版
5位 プロダクトマネジメント

Weekly Sales Ranking
丸善丸の内店(集計期間:3/7〜3/13)
1位 ゼロから作るDeep Learning
2位 プロダクトマネジメント
3位 リーダブルコード
4位 行動を変えるデザイン
5位 Pythonチュートリアル 第4版
6位 入門 監視
7位 MySQLトラブルシューティング
8位 説得とヤル気の科学
9位 実践 JUnit
10位 発酵の技法
47デフォルトの名無しさん
垢版 |
2021/03/19(金) 18:37:11.55ID:O+zBVB4e
推奨NGワード: Haskell
48デフォルトの名無しさん
垢版 |
2021/03/19(金) 18:54:27.74ID:bEVjSxG/
あわしろ氏もお勧めするHaskell。
2021/03/19(金) 19:50:35.86ID:2RO5KA42
考え方を学ぶにはHaskelが一番だな
50デフォルトの名無しさん
垢版 |
2021/03/19(金) 22:53:33.65ID:bEVjSxG/
あわしろ氏によると、オブジェクト指向に汚染される前に学ぶべきらしい。
2021/03/19(金) 22:58:04.01ID:UA/QoJ1s
あわしろ氏によると、指名用写真はパネマジだから信用すべきでないらしい。
2021/03/20(土) 05:55:18.35ID:Zo0fjtEq
(韓国女性25%が風俗勤務!?)韓国人に動揺走る「本当に韓国は売春世界一位なのですか?」→予想を超える韓国の反応(ゆっくり解説) - YouTube
2021/03/20(土) 13:03:03.66ID:NeLt2Xzr
本当は簡単なwinアプリ作りたいからc#勉強しようかと思ったけど
難しそうだし、コードの文字数多いし、コンパイルとか面倒くさいからpythonにしようかな
2021/03/20(土) 13:31:59.65ID:zfB5pfEe
>>53
visualstudioがあれば難しいことなんか何も無いよ
コンソールアプリにしても簡単だしwinformsなら割と簡単にGUIアプリを作れるのでまずは無料版のvisualstudio communityを入れてみると良いかと
55デフォルトの名無しさん
垢版 |
2021/03/20(土) 15:09:59.19ID:b4o+GKeK
>>53
Haskellにしなよ。
56デフォルトの名無しさん
垢版 |
2021/03/21(日) 20:55:00.63ID:dkDtGaJr
pythonがとっつきやすいよ
Cにくらべたら
2021/03/21(日) 22:59:30.59ID:1+IQiUnb
以前JS(ES)を推した者です

今JSを勉強しているんですが、やっぱJSは初心者に向いてないと思う…
文法が意外と複雑だし、HTMLをしっかり理解してないと困る場面も多いので

俺が思うに初心者は、JavaかC#をやるべきだと思います
クセが強くてもいいならPythonもあり
2021/03/21(日) 23:46:36.70ID:dyB+r+st
>>57
勉強始めたばかりで自分でもよく分かってないような物を人に勧めるなよ。
ついでに他の言語も勧めてるがどこがいいかちゃんと言えないんだから黙ってなよ。
5957
垢版 |
2021/03/21(日) 23:55:05.17ID:1+IQiUnb
>>58
はい…
2021/03/22(月) 01:26:36.45ID:EOm1PcPo
JS は、めちゃめちゃ複雑。
Ruby からやっていないと無理

Rubyist でも、JSは、浅くしかやらない。
深くやると、キリがない

結局、オライリーの2冊のサイ本、
つまり、JSの変更の歴史を学ぶことになるから

ES3 → ES5 → ES2015
どんどん変わっていく、歴史を追い掛ける事が、非常に難しいから、
結論としては、お茶を濁す

YouTube で有名な、雑食系エンジニア・KENTA 流で言えば、
基本的な8割だけを勉強して、お茶を濁す

残りの2割は、極めて難しい・時間が掛かるので、そこはやらないのが効率的
2021/03/22(月) 02:34:34.64ID:yNhm3yca
Cから始めろ
2021/03/22(月) 02:51:17.80ID:g8se3Ggw
どんどん変わって「昔のコードが今動かない」breaking changeが多いのはRubyのほうだけどな。
JSはDon't break the webの観点から後方互換性の鬼だからそういうことは少ない。
知ってる人も少ないと思うけど昔のRubyでは複数引数を取るメソッドの呼び出しf(a, b)はf a bと書けた。
今の処理系ではエラー。
f a, bと書かないとダメ。
で、バージョンいくつからなのか過去の仕様を調べようにもドキュメントが見当たらないというクソさ。
曰く、「コードがドキュメントだ!」
なお``(バックティック)によるexec記法もなくなるとのこと。
時期は行き当たりバッタリ。
2021/03/22(月) 16:15:19.30ID:sC5mVCYM
たしかにJSは柔軟性があるぶん
難しいかもね。
2021/03/23(火) 19:48:38.23ID:xszHdcl9
How to learn programming リチャード・ストールマン
https://stallman.org/stallman-computing.html

2/3くらいスクロールしたところ
2021/03/24(水) 11:03:37.05ID:l+Yw5bV3
Lisp好きだよな
2021/03/24(水) 11:07:57.97ID:op338Dtn
初心者で家にランドオブリスプあったから打ち込みながら読んだけどすぐわけわからんくなった
2021/03/24(水) 13:44:27.51ID:HKW94SjI
>>64
プログラミングを学ぶ方法

まず、いくつかの言語でのプログラミングに関する教科書を読み、次にLispを含むいくつかのプログラミング言語のマニュアルを読みます。これがあなたにとって自然で直感的な意味をなすのであれば、それはあなたの精神がプログラミングにうまく適応していることを示しています。

直感的に理解できない場合は、プログラミング以外のことを行うことをお勧めします。あなたは苦労してある程度プログラミングをすることができるかもしれません、しかしそれが苦労を見つけたならあなたはそれがあまり得意ではないでしょう。それが魅力ではなく闘争である場合、プログラミングのポイントは何ですか?

その後、実際のプログラム(またはその一部)のソースコードを読んで、それらが何をするのかを理解する必要があります。次に、修正する特定のバグを見つけることができる場合は、それらに変更を書き込んだり、機能を追加したり、バグを修正したりします。それらのプログラムのコードに精通している何人かの優秀なプログラマーに、あなたの変更を読んで批評するように頼んでください。

人々が開発している無料のプログラムのバグを修正すると、開発者は喜んで修正を入手し、インストールしやすくするためにそれらを作成する方法を教えてくれます。実装したい機能については、TODOリストをご覧ください。開発者があなたの変更を組み込むとき、それは大きな満足であることがわかります。

これを何度も繰り返すと、ソフトウェアの開発が上手になります。
2021/03/24(水) 18:44:38.81ID:9yOmUtmf
Land of Lispで初めてLispに触れてしばらく???だったけど
マクロ/特殊形式と関数は評価順が違うことを理解したらあとはすんなりだったな
2021/03/24(水) 22:08:15.67ID:GfpKlAV7
Emacs Lispなら、Emacsのポータブルタイプのをダウンロードして展開するだけで
完璧な環境構築が出来る
ドキュメントも長く読まれてるものがネットに転がってる
何よりEmacsはLispをやるためのものではなくて、多目的な環境だし
ユーザも多いから作ったものを公開すれば誰かに試してもらえる
2021/03/24(水) 22:12:47.13ID:GfpKlAV7
Programming in Emacs Lisp(和訳)
https://www.math.s.chiba-u.ac.jp/~matsu/lisp/emacs-lisp-intro-jp.html#SEC_Top
2021/03/25(木) 13:26:52.44ID:zrKz1Lho
推奨NGワード: あわしろ
推奨NGワード: デル男
推奨NGワード: KENTA
推奨NGワード: ケンタ
推奨NGワード: Ruby
推奨NGワード: Rails
2021/03/25(木) 19:47:01.48ID:Kuef+GVX
LISPは勧めない。優れた言語だけど。オーパーツとすら言いたいくらい
すごいけど。


可読性の概念がなさすぎなんだよあれ。「括弧の輝度とか色を勝手に
調整してくれるエディタがあればね〜」って言われてたのが90年代だ。
2021/03/25(木) 20:07:19.79ID:KmpgWBAt
そんなんとっくに実現してるし
なんなら箱に入れてくれるデモも見た
2021/03/25(木) 23:26:32.40ID:Kuef+GVX
いや、それが実現してるのは知ってるけど、
それでも読みやすいか?あれ

Emacs の設定とか見てると頭くらくらしてくる
2021/03/25(木) 23:39:44.21ID:KmpgWBAt
そんなもん
f3(f2(f1(42)))

(f3 (f2 (f1 42)))
になってるだけだろ
こんなしょうもないこと取り上げて可読性云々してるの?
だったらforthは
42 f1 f2 f3
だけどこれをもってforthが可読性の高い優れた言語ということになるわけ?
下らないよ
76デフォルトの名無しさん
垢版 |
2021/03/26(金) 19:10:40.92ID:82X73Jff
lispってなんか憧れる
77デフォルトの名無しさん
垢版 |
2021/03/26(金) 19:48:51.68ID:Pu99tHkh
・業務用アプリケーションで未だに主流の、、、、、、Java
・ゲームやデスクトップ用アプリケーションで主流の、、、、、、C#
・過去の業務用アプリケーション資産の保守で必要とされる、、、、、、VisualBasic6.0、VB.NET
・組み込み機器で使われる、、、、、、C/C++

個人的趣味なのか、これら仕事として需要が大きそうなプログラミング言語は、なぜかオススメされないんだね。
2021/03/26(金) 20:48:24.80ID:dnMLEYx4
はじめるのに、って考えるとどうなのって思う
79デフォルトの名無しさん
垢版 |
2021/03/26(金) 21:11:57.31ID:Pu99tHkh
当面は仕事や就職などで必要にはならず学習期間に余裕があるのか、
現在の職場や就職などで必要な技能のため学習期間に余裕はなく仕事で使えることも優先したいのか、
小学生〜大学生が余裕を持って理想的な手順で学習して身につけたいのか、
本人の置かれた環境によっても大きく変わってくるのでは。
80デフォルトの名無しさん
垢版 |
2021/03/26(金) 21:29:05.19ID:3gUI29td
あわしろ氏の勧めに従ってみるのも一つの道では?

日本のIT界を作った人だから。
81デフォルトの名無しさん
垢版 |
2021/03/26(金) 21:29:36.86ID:3gUI29td
鵜飼弾とかも、あわしろ一門の門下生だよ。
2021/03/26(金) 22:31:50.80ID:82X73Jff
小飼でしょ
83デフォルトの名無しさん
垢版 |
2021/03/26(金) 22:37:06.66ID:3gUI29td
合成人間作ってもうた。
84デフォルトの名無しさん
垢版 |
2021/03/26(金) 22:38:55.72ID:3gUI29td
もしかしてこれがポリモーフィズムってやつか?
85デフォルトの名無しさん
垢版 |
2021/03/27(土) 00:02:43.62ID:gNdWovH1
LISP を勉強しておきたいのは、別の理由からです――それをモノにしたときにすばらしい悟り体験が得られるのです。
この体験は、その後の人生でよりよいプログラマーとなる手助けとなるはずです。
たとえ、実際には LISP そのものをあまり使わなくても。
(LISP の初体験をかなり簡単に得るには、Emacs テキストエディタのモードを書いたり改変したり、
あるいは GIMP の Script-Fu プラグインをいじったりしてみましょう。)
 実は、この 5 つすべて(Python, Java, C/C++, Perl, LISP)を勉強しておくのがいちばんいいのです。
これらはもっとも重要なハッキング用言語だというだけでなく、それぞれプログラミングに対して
まったく違ったアプローチをしているので、どれも非常に有益な勉強となるでしょう。
https://cruel.org/freeware/hacker.html
2021/03/27(土) 06:13:58.67ID:VWBmNoc0
>>85
かっこいい、やっぱ憧れる…
2021/03/27(土) 14:49:22.93ID:cpUHfD3R
LispやりたいならClojureやるといいよ
他に比べると敷板低いので
2021/03/27(土) 15:39:13.09ID:iAa+X6Ug
敷居をどうやればそういう間違いするんだろうか
2021/03/27(土) 17:18:30.57ID:ylVvcLaL
Elixir では、関数の第1引数に、パイプから渡せる

42
|> f1
|> f2
|> f3
2021/03/27(土) 22:02:55.39ID:5+AX5NEd
ルビキチ改めエリキチ
2021/03/27(土) 22:19:17.21ID:qBcxOjkl
Elixirのパイプは第1引数に挿入するってのが変な仕様だよなぁ。
関数の部分適用ってないんだっけ?
2021/03/27(土) 23:05:24.63ID:r6p9e+p/
>>91
変な仕様だとは全く思わないけど何が変だと思うの??
2021/03/27(土) 23:21:22.41ID:qBcxOjkl
パイプ演算子の元ネタのF#やその他の関数型言語の類似の構文だとここに第一級オブジェクトとしての
関数を渡すんだけど、Elixirだと値じゃなくてUFCSみたいな変な構文を記述することになる。
2021/03/27(土) 23:51:20.03ID:2ZTLWQQM
>>93
うーむ 何が言いたいのかよく分からん

UFCSは型にメソッドを生やさなくてもメソッドチェーンできるようになる程度のメリットしかなくパイプ演算子とは意図が異なる

F#は状態を含む型を一番後ろの引数で渡す規約でAPI設計してるから高階関数をパイプ演算子でつなぐと第一引数は関数になる
Elixirは第一引数で状態を含む型を渡す形でAPI設計してるので順番が変わるのは当然
2021/03/27(土) 23:58:42.14ID:qBcxOjkl
f(a, b) みたいな2引数の関数をパイプで使いたい場合な。
普通の関数型言語だと f(a) という部分適用された関数を渡すけど
Elixirは f(b) というなんだかよくわからないものを渡す。
96デフォルトの名無しさん
垢版 |
2021/03/28(日) 00:37:58.65ID:w6XGrPa9
小学生向け入門書の存在につられて、試しにC言語に取り組んでみてるんだけど、予定どおりというか噂どおり難関とされる配列、ポインタで、さっそく挫折した。(同じく難関とされる構造体は、その入門書ではまだ出て来てない)
配列は1次元でも複雑怪奇なのに二次元配列なんて出て来て即アウト。ポインタにいたっては最初から何もかもチンプンカンプンな有り様。
プログラミング言語ほぼ初心者で、どの言語がいいか5〜6言語、とりあえず入門〜初級レベルあたりの学習を、それぞれ試してみるつもりなんだけど、とりあえずC言語の学習を初めちゃったし学習書も買っちゃったから、わからないところは考えても時間のムダだろうから、ここはアッサリ飛ばすことにして、とにかく先へ先へと突き進む方法で学習を続けてみるつもり。

以上、いちおう複数言語のお試し学習法を実践し始めての、経過報告。良い子はこの学習法をマネしないほうがいいと思います。
2021/03/28(日) 00:52:46.40ID:Ah6uwjvI
>>95
data-firstとdata-lastはそれぞれ良し悪しあるから
伝統的な関数型言語にdata-lastが多いという一面だけしか見てないと損するぞ
2021/03/28(日) 01:02:39.14ID:A0lj2cxG
>>96
ポインタが理解できないのは最初は仕方ない
コンピュータの仕組みをまずは理解しないとね
2021/03/28(日) 01:09:36.03ID:A+i84gxc
>>97
Clojureはどっちにも対応できるようにそれぞれマクロが用意されてる
Lisp最強
100デフォルトの名無しさん
垢版 |
2021/03/28(日) 02:47:52.21ID:w6XGrPa9
>>98
過去にPCを自作したことがある程度じゃ、ぜんぜん歯が立たないんだね、C言語は。PC組立やOSセットアップなんて、プラモデルよりはるかに簡単らしいしね。
いずれPCの仕組み、概略についての本でも読んでみますね、プログラミング言語の理解の助けにするために。
101デフォルトの名無しさん
垢版 |
2021/03/28(日) 07:59:11.93ID:8EbBoM3p
再帰とポインタの重要性

Javaスクールの危険 - The Joel on Software Translation Project
https://web.archive.org/web/20190506042839/http://local.joelonsoftware.com/wiki/Javaスクールの危険
2021/03/28(日) 09:09:08.12ID:by6LSv0L
>>97
data-firstとdata-lastってそれ自身には優劣はなくて、他の構文と組み合わせる場合に
どちらが便利かという話じゃないかね。
で多くの関数型言語はカリー化などがあるからdata-lastが便利という順序であって
data-firstとdata-lastのどちらが良いかという議論が先にあるわけじゃないと思うが。

>>99
Clojureについては知らなかった。
本来の構文ではなくてマクロで実現しているのは仕方のないところだけど、これは
data-lastになっていない既存の関数のための救済措置という印象。
103デフォルトの名無しさん
垢版 |
2021/03/28(日) 10:05:57.80ID:8EbBoM3p
Elixir知らないけど
f(a)←aを部分適用した
f(b)←aを適用して、bを待ってる
こゆこと?(あるいは逆?)
2021/03/28(日) 10:40:40.27ID:by6LSv0L
f(a) は f(a, b) に a を部分適用したもので、パイプから渡された b を適用することで f(a, b) の結果を得られる関数。
f(b) はパイプから a が渡されると f(a, b) の結果を得られる何か。
2021/03/28(日) 11:27:41.06ID:8EbBoM3p
それだったら全然違和感ないけどな
数学と同じだよね
2021/03/28(日) 12:34:20.69ID:ptSax1Ky
f(a, b)で考えるからf(b)渡すのは変だと感じるんでしょ

パイプで使う関数はf(s, a)やg(s, a, b) なので
s |> f(a) |> g(a, b) になる
引数の捉え方が違う

F#ならf(a, s)やg(a, b, s)だから
s |> f a |> g a b になる
2021/03/28(日) 12:41:52.83ID:ptSax1Ky
f(s, a) -> s やg(s, a, b) -> s って書いたら分かりやすいかな?
2021/03/28(日) 12:48:00.98ID:by6LSv0L
>>106
後者の f a は関数になるけど前者の f(a) はそれだけを取り出した場合に関数でもなんでもないのが違和感あるところ。
あえて言えば s.f(a).g(a, b) というUFCSの一部分かなあと。
2021/03/28(日) 13:15:25.50ID:IES6ITrg
ポインタそんなに難しいかなあ?
メモリを直接扱うイメージで図解しているサイトが
どっかにあると思うが
2021/03/28(日) 13:48:00.04ID:NjmNZXxg
>>96
NHK Eテレなどに出てる、Ruby の女神・池澤あやかが言ってる

彼女は慶応卒だけど、学生がプログラミングを嫌いになるのは、
学校で、C から教えるので皆挫折する

だから、この教育方法が悪いって

彼女は、山陰地方のRuby on Rails 合宿で、Railsを学んで、
ウェブサイトを作り始めた
2021/03/28(日) 13:56:14.24ID:A0lj2cxG
>>110
Rubyガイジは書き込むなよカス
2021/03/28(日) 15:05:46.29ID:IW8C5n0X
>>102
Clojureは関数を定義するdefnみたいなコアな機能もマクロ
マクロなので扱いが格下ということはないよ

>>108
カリー化や部分適用の第一義的な目的は関数合成のためにあるわけで
それらを使わずに簡単に関数合成できるのならカリー化や部分適用してるかどうかはそれほど重要じゃない
113デフォルトの名無しさん
垢版 |
2021/03/28(日) 16:28:16.03ID:yHCir1no
Haskellを学ぶのが良いよ。
2021/03/28(日) 17:44:09.60ID:y14RHouV
継続とcall/ccに比べればポインタなんてカス
115デフォルトの名無しさん
垢版 |
2021/03/28(日) 17:57:41.98ID:9PsPoXVn
>>113
Rubyよりない
116デフォルトの名無しさん
垢版 |
2021/03/28(日) 19:28:33.61ID:yHCir1no
一位Ruby、二位Haskellとして、三番目に学ぶべき言語はCではなかろうか?
2021/03/28(日) 21:16:53.96ID:4HRS4SBE
いや!Cの前にPascalだ。というかCを書いてるときでも心の中でPascalを書いてるつもりで書け。
118デフォルトの名無しさん
垢版 |
2021/03/28(日) 22:27:58.88ID:xWbueQYI
>>110の池澤あやかは>>101の著者に真っ向から反対の意見なんだね。
119110
垢版 |
2021/03/29(月) 03:55:51.05ID:64Cowzta
池澤あやかなどの女は、現実派。
課題を解決したいだけ。Solution

車の運転だけを学びたい。
別に、車の構造を学びたいわけじゃない

アプリを作りたいだけ。
別に、コンピューターの構造を学びたいわけじゃない

転職用のポートフォリオと同じ。
A さんは、すごい時間を掛けて、HTML, CSS を使って、自分でデザインしました。
HTML, CSSのプロです

B さんは、Bootstrap を使って、短時間でコピペして作ったので、
HTML, CSSも、よく知りません

転職できるのは、課題を解決した人。
技術自慢をした人じゃない

特に、Apple はそう。
平凡な部品をコピペして、組み合わせて販売する。
技術力じゃなく、課題解決型

ビジネスのほとんどは、これ
2021/03/29(月) 12:12:05.20ID:Bo1D2IkS
Cから教えるのが悪いというのは良いとして
だからコピペして見かけ何かやったように見せられればオッケーなんだ
それを目指せ
という結論にはならないだろ
池澤とかいう人もそんなこと言ってるわけではないと思う
2021/03/29(月) 12:59:16.67ID:CCRIIQEW
アプリを作りたいだけでもコンピューターの仕組みを全然知らないよりは知ってた方がいいしな
車の運転もそう
作り方だけ知っていても結局駄目なんだよ
そういう奴は簡単な仕事しかさせてもらえない
2021/03/29(月) 13:35:10.64ID:VNl0vNYk
「ディフェレンシャルギア」とか「ロータリーエンジン」の
仕組みまで理解しておくと、運転の時に役に立つか?
2021/03/29(月) 14:40:22.40ID:Bo1D2IkS
喩えがおかしい
運転はアプリのユーザだ
開発者は不具合に対応しなきゃならない
2021/03/29(月) 14:50:40.80ID:FXjqyr6T
仕組みを理解してない人が汎用の部品組み合わせて作った車とかは乗りたくないな
2021/03/29(月) 14:54:05.64ID:CCRIIQEW
>>122
それCPUの設計知らないとぐらいの例えで頭悪すぎる
126デフォルトの名無しさん
垢版 |
2021/03/29(月) 14:54:18.18ID:756sReck
アメリカというより世界でトップクラスの難関一流大学と、希望者大学全入時代に突入してから久しい日本でトップクラスの難関一流大学。>>101>>110の対比からもわかるように、その双方でのプログラミング言語教育に対する見解が真逆というのが興味深いな。
2021/03/29(月) 15:13:00.20ID:HJyOoWgy
それはUSのコンピュータサイエンス学科と環境情報の違いだろ
学ぶ目的が違うんだから方法が違って当然

Cから教えようとするやつは教え方が悪いってのもあるけどな
2021/03/29(月) 15:31:34.00ID:dJIYpGlj
少し前のやり取りで関数型の感覚が理解出来ない人達は
その昔オブジェクト指向が理解できなかった人達と重なって見えるな

そういう人達にHaskell学べというのもあながち間違いじゃないのかも
129デフォルトの名無しさん
垢版 |
2021/03/29(月) 16:39:44.27ID:x6HQk2qx
間違いだと思う
2021/03/29(月) 16:42:55.95ID:qBtYsWXm
あわしろ氏にも一理あるな
2021/03/29(月) 16:52:06.87ID:pJGmLRGp
最初がCだからプログラミング嫌いになるって
PythonとかRubyなら嫌いにならないのかな
2021/03/29(月) 17:19:07.63ID:kAc6GSD7
言語を始めることが目的になっているのが間違いだと気づけ
就職か趣味か知らんけど本来はその先に行くためのただの入り口なんだからくぐってから考えろ
そこそこのプログラムなんか小学生でもできる
2021/03/29(月) 17:42:08.63ID:Oj3f9jrO
>>131
確率は劇的に下がるだろうな
Cなら9:1くらいなのが1:9くらいにはなるんじゃね

Cの場合は最初に意識する必要のない詳細が前面に出てくるのが良くない
コードの構造とかと同じでプログラミングの学習も段階的に詳細化していくほうが圧倒的に理解が早い
134デフォルトの名無しさん
垢版 |
2021/03/29(月) 18:14:41.92ID:1yKvh1aU
Hi-Lo mix で、 Hi は Haskell 、 Lo は Lisp で良いのでは?

この二つが出来れば当分困らないでしょう。
2021/03/29(月) 19:50:18.16ID:cKS+NgTb
俺が学生の頃はアセンブラとLispを覚えておけと言われたものだ
2021/03/29(月) 20:07:15.05ID:UEWwMFcs
ジョエル>>101はLispを学べと言ってるんだと思う
Lispといえば再帰だし、Lispってポインタだらけだからね
例えば(a b c)というS式は4つのポインタを表現してるし
プログラムもデータもS式で表され、それが思考ツールなわけだから
学ぶとプログラミングということのイメージを覆される人も多いと思う

いきなりSICPに取り組んだらキツイのは目に見えてるので
Little Schemer(「Scheme手習い」)や、日本人なら「リスト遊び」で再帰とS式とポインタについて
慣れておくのが良いと思う

でも、RMS尊師は>>67で言ってる通り、色んな言語に触れてみるべきだと考えてるようだ
E.レイモンドも同じく>>85
2021/03/29(月) 20:21:54.11ID:qEb+vJGq
>>134
その2つしか出来ない奴が普通に就職しても困ることばかりだろw
138デフォルトの名無しさん
垢版 |
2021/03/29(月) 21:54:37.45ID:ErpapNI3
ホットスーププロセッサー
139110
垢版 |
2021/03/29(月) 22:32:06.66ID:64Cowzta
池澤あやかは文系だから、C を学びたくはない。
ハーバードでも、Ruby on Rails で起業して、100億円で売却しましょう

MIT・高専なら、Cから学ぶのも分かる。
4年間、Cで無駄にしても取り返せる

文系で起業する香具師には、その時間は無駄

1人で、Heroku のRailsで起業して、
千人ぐらい会員を集めて、10億円でサイトを売却するとか、

文系の女は、そういうパターン
2021/03/29(月) 22:39:42.52ID:wY/D+VXd
>>137
学生でHaskellとLispの両方使いこなせるなら即採用やな
そういうやつは開発の現場で実際に必要になる言語もすぐ覚えられるから
2021/03/29(月) 23:20:49.09ID:UEWwMFcs
MITはちょっと前まではLispからだったが
今はPythonから学ぶ
スタンフォードとかだともしかするとCからかもしれないが
2021/03/29(月) 23:27:28.17ID:64Cowzta
昔の東大は、Lisp, Emacs 採用
この2つが出来る香具師は、IQ が高いから、官僚向き

Ruby on Rails で、Shopify, Airbnb など、
時価総額10兆円の世界とは全く異なるけど、

Matz は未だに、Emacs。笑
VSCode に、ついていけない老害
143デフォルトの名無しさん
垢版 |
2021/03/29(月) 23:41:50.98ID:J/fpahBP
RubyガイジMATZ嫌いなんか笑
2021/03/30(火) 00:29:18.93ID:SZr1vpbF
>>140
どんな言語だろうが2種類を「使いこなせる」のなら「開発の現場で実際に必要になる言語もすぐ覚えられる」
言語の知識よりも「使いこなせる」部分の能力の方がずっと重要
2021/03/30(火) 00:45:06.37ID:krVjY3IQ
>>141
スタンフォードはJava -> C++
CMUはPython -> C, ML
2021/03/30(火) 00:47:08.91ID:/RJ06M09
>>144
そういう君が使いこなせる言語は?
2021/03/30(火) 01:46:21.54ID:fREJHxWW
>>143
今月で一番笑った
2021/03/30(火) 02:19:06.28ID:RNQIAaAO
HaskellやLispの質的な違いすらわからんやつは採用しないな

今後のご活躍を心よりお祈り申し上げます。
2021/03/30(火) 04:35:29.63ID:crjfhXZf
>>143
笑撃の事実発覚www
2021/03/30(火) 07:00:31.60ID:gBDrO/Sd
どうせRuby君のことだから、誰某が言ってた!って理由でMATZ嫌ってるんだろw
151デフォルトの名無しさん
垢版 |
2021/03/30(火) 17:47:43.98ID:2CeDTrvd
Rubyガイジは確かにウザいけど、
この大勢で寄ってたかって叩く感じがなんか嫌い
2021/03/30(火) 18:44:30.27ID:X2VKoCLi
>>151
それくらい嫌われているんだよ
PHPのスレに来たりとか頭おかしいからな
2021/03/30(火) 18:52:01.64ID:lLaXLTA/
同族嫌悪だよ
154デフォルトの名無しさん
垢版 |
2021/03/30(火) 19:13:22.31ID:2tWwlV/6
あわしろ氏が言ってた。
155デフォルトの名無しさん
垢版 |
2021/03/30(火) 20:25:17.60ID:CvyOAVOF
今から始めるならRust一択
2021/03/30(火) 20:59:16.75ID:hkltIYIv
最初にrustはムズいよ
まずコンパイル通らない
2021/03/31(水) 12:55:43.25ID:zbO9uKDy
rustのコンパイルってそんな難しいの!?
2021/03/31(水) 13:55:16.90ID:UYjPifiW
>>100
ハードウェアじゃなくて、メモリに番地があってそこのデータを
CPUが操作してるっていうソフトの概念の方の知識が要る。

もっと進むと操作している関数の側もメモリに乗ってるデータの
一種だから「関数へのポインタ」なんてのも出てくるんだけど、
そのあたりはメモリの番地って概念がないとちんぷんかんぷんだと
思う。
2021/03/31(水) 14:05:54.44ID:Dmfl5kzC
更にスタックポインタやら関数コールの引数はどこに格納されるやら、再帰を延々とやると動かなくなる理由とか
ある程度は基礎的なことは知っていて損はない
2021/03/31(水) 14:37:27.59ID:5l26irpu
C言語の前にアセンブラってやつをかじったから
割と簡単にポインタを通過できたわ
161デフォルトの名無しさん
垢版 |
2021/03/31(水) 14:51:44.43ID:np20uROb
急速に初心者向けから話題が離れていくの好き
2021/03/31(水) 16:19:30.69ID:zbO9uKDy
関数へのポインタは他の言語使ってコールバック関数の
ありがたみを理解してから戻ってくると理解しやすいかも。


そういやはじめてC勉強したとき、qsortのコールバックよくわからなかったなあ
2021/03/31(水) 16:54:11.53ID:1nW3cpNR
CUIにくらべてGUIって訳わかんない
2021/03/31(水) 16:59:18.40ID:Dmfl5kzC
>>163
そりゃ基本的にはOSからのイベントにより動くみたいな部分が大半だからね
2021/03/31(水) 17:08:18.64ID:ZXCk++Ia
VBは簡単だな、テキストボックスやラベル等の部品をフォームにペタペタ貼って、プロパティ設定、イベント毎に処理記述すればいい。
2021/03/31(水) 18:17:49.25ID:UYjPifiW
>>165
しかし、コンストラクタに引数渡せないとか、継承ができないのに
なぜかインターフェースだけはあるとか嫌がらせみたいな隔靴掻痒が
すごいぞあれw
2021/03/31(水) 19:38:53.49ID:Dmfl5kzC
今更VB使うくらいならC#で良いような
2021/04/01(木) 01:07:16.68ID:7y1pTd6e
>>167
会社のえらいさんの頭が「しーしゃーぷ?なにそれおいしいの?」レベルな
ところは結構ある。エクセルにデータ入力しながら横に電卓置いてSUM
してる、管理職が。

そういうところではオフィスしか「開発環境」が無かったりするのよ。

「早くJavaScript来てくれ。あれなら関数型に近いコード吐けるのに」とか
「これ、LINQなら一発だよな」とか思いながらVBAを組むことになる。
2021/04/01(木) 08:46:56.44ID:jXxosqxT
VBAと同一視されるVBが不憫

VBAの一番の問題はテストやバージョン管理という現代の開発で当たり前の事を当たり前にはできない事
Rubberduckだったり有料のアドインだったり自作アドインで多少はマシになるけど頑張る方向性が間違ってる
2021/04/01(木) 15:39:25.96ID:7yVCKGZd
てかVBAはエクセルマクロだし、VBとは別物なのになw
Aを略して言う奴は開発したこと無いのだろうなと思う
正直単なるVBはもう廃止してほしいわw
C#で十分やろw
171デフォルトの名無しさん
垢版 |
2021/04/01(木) 16:42:09.17ID:2Czoe8CU
C#とかw
172デフォルトの名無しさん
垢版 |
2021/04/01(木) 19:53:48.12ID:wwTAZDZq
Pythonでオッケー
2021/04/01(木) 21:30:05.56ID:9GEELuTU
Pythonは言語としてはそれほど悪くはないんだが
この板でPythonを勧めるやつは超低レベルのプログラマーしかいないのでやめた方がいいと思ってる

ほぼVBAしかできないのにVBAを勧めるやつらと似てるが
VBAerはプログラミング知識は未熟でもVBAノウハウだけは豊富なのである意味マシ
2021/04/01(木) 21:32:29.01ID:C9Lq3euG
Pythonは言語としては糞だけど便利だから勧める
175デフォルトの名無しさん
垢版 |
2021/04/01(木) 23:20:01.10ID:SICh84NV
サードパーティー豊富だからPythonに利点がある
お気楽にデータ処理ができる、それがPython

機械学習ライブラリが揃ってるからありがたいだけ
2021/04/02(金) 01:13:15.22ID:AnUSGJIq
機械学習を始めるのにいい言語を聞いてるわけじゃないのにな
>>173の指摘通りな気がしてきた
2021/04/02(金) 01:39:17.04ID:pJweybWA
Pythonって現代のBASICだよね
良くも悪くも
2021/04/02(金) 02:00:19.39ID:Nmq5iYFb
>>177
ゴミという点では同じだな
まじでこんなゴミみたいなの消えて欲しいわ
こんなのでwebのバックエンドとかやってられない
2021/04/02(金) 02:43:33.35ID:NWbwqlFc
>>176
別に始めるのに最適なんて書いてない
そういう言語だってこと

ここで関数型議論してるやつも大概だろ
2021/04/02(金) 09:54:01.28ID:tw1wru7R
このスレで得られた教訓は
特定の言語を勧められた時はその言語よりも先に勧めたやつの力量を精査すべきだということ

初心者でも簡単に精査できるチェックリストがあると良さそう
2021/04/02(金) 13:49:24.69ID:BYeT9YQu
プログラミングなんかオタクの世界なんだから
力量ある奴は勉強しにくいマニアックな言語勧めてくるぞ
2021/04/02(金) 14:52:18.89ID:Pve1pRbT
などと力量のないエセプログラマーが申しており
2021/04/02(金) 17:40:55.44ID:B0ZO9Ubq
>>181
そんなもの勧めるのはただのバカ。お前プログラムまともに書けない奴だな
184デフォルトの名無しさん
垢版 |
2021/04/02(金) 17:43:32.37ID:/yigQPwQ
あわしろ氏にも一理あるよな
185デフォルトの名無しさん
垢版 |
2021/04/02(金) 18:02:48.69ID:boNLCuem
>>184
ない
186デフォルトの名無しさん
垢版 |
2021/04/02(金) 18:47:50.02ID:BYeT9YQu
>>183
で、お前のオススメは?
187デフォルトの名無しさん
垢版 |
2021/04/02(金) 20:52:16.42ID:B/IGpfGy
>>109 >>158-162
最新版 12歳からはじめるゼロからのC言語ゲームプログラミング教室 – リブロワークス – LibroWorks
s://libroworks.co.jp/?p=3170

C#やC++ではなくC言語なら、12歳(小学5〜6年生)でも学べるらしいよ。
188デフォルトの名無しさん
垢版 |
2021/04/02(金) 21:22:02.94ID:8050iCXY
>>173
なんでこの板が基準なのよw
189デフォルトの名無しさん
垢版 |
2021/04/02(金) 21:26:53.23ID:8050iCXY
Pythonならエクセルも操作できるから職場でも役立つから、触れてる時間が確保しやすいし
コンピュータ科学の教科書もあるし
でーぷらーにんぐしたけりゃしてもいいし…
使い道が豊富でしょ
てか、MITのCS教科書に採用されたり、Google社内でも使われてるというのに、
何でこの板のユーザがバカっぽいからとかいう理由を付けるのか意味不明です
2021/04/02(金) 21:29:15.95ID:G+2KJI7R
>>189
その特徴全部C#のほうがより整理された形で実現されてるんですよ
2021/04/02(金) 22:18:29.14ID:2Zgm1hES
pythonだろうとVBAだろうと一緒というのは同意するが、
それでも実行環境考えればVBAは勧めんぞ。。まだphpかjsのがマシだわ。
192デフォルトの名無しさん
垢版 |
2021/04/02(金) 22:20:16.78ID:8050iCXY
> より整理された形で実現してる
それは君の評価ですよね
MITやGoogleはその評価はしてないのではないかな

けど、自分が良いと思うならそれを使いこなせるようにしていけば良いと思います
C#否定する理由もないし
193デフォルトの名無しさん
垢版 |
2021/04/02(金) 22:33:43.33ID:NWbwqlFc
オワコン言語を避ければ?
VB系とかPHP,Perlとかあえてやる必要ない
2021/04/02(金) 22:35:05.02ID:Nmq5iYFb
>>193
PHPをオワコンとか言ってる時点で現状を全く知らないんだろうな
こういう奴がPythonとか言ってるから笑える
195デフォルトの名無しさん
垢版 |
2021/04/02(金) 22:46:43.28ID:I9fRqwsY
セキュリティホール言語PHP
2021/04/02(金) 22:51:02.30ID:nXGaO3xM
MIT は、Julia を作っている。
Matlab, R → Python → Julia

>>187
基本、タイトルに年齢が書いてある本は、ジャケ買いを想定してる。
年齢に釣られる客。そういう客が一定数いるから

何も説明しない。
情報処理資格とか取っていない、低年齢に説明しても、
コンピューターの仕組みを理解させられないから

よくある、アプリを作ってみましたみたいな日記のような本。
こうしたらこうなったとか、手順だけが書いてある本

子供に、コンピューターの仕組みを教えるのは、土台無理。
ほとんどの大学生が挫折するのだから
2021/04/02(金) 22:51:15.74ID:Nmq5iYFb
>>195
それPythonの事じゃね?w
こんなのwebで使うのが間違ってるんだよ
2021/04/02(金) 23:03:11.71ID:nXGaO3xM
YouTube で有名な、雑食系エンジニア・KENTA が、
Java, PHP を絶対に勧めない

初心者には、Ruby on Rails しか勧めない。
それで実際にビジネスサイトを立ち上げた女性・初心者は、Rails, Heroku

AWS を使いたい企業は、さらに、
くろかわこうへいのAWS サロンへ入る

皆、このパターン

KENTA の千円のサロンへ入って、聞いてみれば?
2千人入っている
199デフォルトの名無しさん
垢版 |
2021/04/02(金) 23:33:07.93ID:boNLCuem
>>195
詳しく
2021/04/02(金) 23:36:34.42ID:Sbty3H35
phpはC言語使いが何も考えずにwebを弄るのに適しているかもな
勉強始めて数日でアプリ書けたよ
2021/04/02(金) 23:48:38.94ID:nXGaO3xM
>勉強始めて数日で、アプリ書けたよ
だから、セキュリティーホールばっかり

Ruby on Rails では、フレームワークによって、様々な穴がふさがれている。
だから、ウェブの仕組み・セキュリティーを学ぶのに、何か月も掛かる

簡単に書けるようなものは、何も教えていない。
だから、すぐに書ける

その代わり、危険。すぐやられる。
プロユースではない。単なる遊び
2021/04/03(土) 00:08:18.68ID:6+PpA2qp
>Pythonならエクセルも操作できるから
この1行だけでPython勧めるようなやつがどれだけ無知なのかよく分かる

これってもしかしてPythonをバカっぽく持ち上げることで逆にPythonから遠ざけたいやつの仕業なのか?
203デフォルトの名無しさん
垢版 |
2021/04/03(土) 00:54:28.42ID:3oZz2oHt
>>201
WordPressはPHPで書かれているだろうが
2021/04/03(土) 10:04:21.12ID:BbR36GqU
イキってC言語初めて二週間のアホだがめっっっちゃむずい

多次元配列の書き方とか理解するまで時間かかったわ
本の例文に出てきたのが、
str[2][2]={1,2},{3,4}
を宣言して表示するくらいで文法的な説明はなし。

中括弧でstr[1][]、str[2][]を分けてまとめるとか説明してくれてもよかったじゃん…
どの要素から順番に宣言されてるのか説明されてないから自分で実験したが、無駄な時間をかけさせないでよ
2021/04/03(土) 10:20:05.50ID:CBPt7/9t
そういう実験で理解を深めるのは無駄な時間じゃないぞ
206デフォルトの名無しさん
垢版 |
2021/04/03(土) 12:03:29.11ID:QNwTviVQ
これまでのところ、本当の意味で混じりけなく一貫して継続しているプログラミングモデルは2系統あるように見える。すなわち、CモデルとLispモデルだ。これらはその間に沼地をはさんでそびえる2つの山のように見える。コンピュータがよりパワフルに成長するにつれて、発展を続ける新しい言語達は徐々にLispの山の方を目指して沼地の中を移動してきている。
過去20年間、新しくプログラミング言語をつくるときの人気のレシピはというと、基本的にはCモデルを採用して、Lispモデルから断片的に動的型付けやガベージコレクションのようなパーツを取ってきてはくっつけるというものだった。
ポール・グレアム


だから、目先の拾い仕事用の言語とは別にCとLispを勉強しなさいってことだな
207デフォルトの名無しさん
垢版 |
2021/04/03(土) 12:20:46.05ID:FzU+FQkY
説得力ある
2021/04/03(土) 12:37:49.57ID:w3176vei
何年前の記事なんだろう
2021/04/03(土) 13:02:18.98ID:/BX+HzW5
型システムと並行プログラミングはCでもLispでもない所から来てる
210デフォルトの名無しさん
垢版 |
2021/04/03(土) 16:57:38.07ID:UuQySFJS
計算機の出来ることは何でも出来る言語=C、Lisp
だからハッカーたちのLanguage of choiceなわけだ

今の型理論ってアロンゾ・チャーチの型付きラムダ計算から来るもんだと思うけど
Lispはその弟子が1960頃に作ったものだよ
Lispは言語仕様を変えることなく並列プログラミングすることも、型推論を付け加えることも出来る
211デフォルトの名無しさん
垢版 |
2021/04/03(土) 17:31:16.96ID:UuQySFJS
If you give a man a fish and you feed him one day,
If you teach a person to fish, he can eat his whole life long.

If you give someone Fortran, he has Fortran.
If you give someone Lisp, he has any language he pleases.
-- Guy L. Steele Jr.


>>210、複数のsが抜けてたorz
2021/04/03(土) 18:49:02.31ID:JRMyhSLT
>>210
そりゃ追加で書くなら何だって出来るだろww
頭悪すぎ
2021/04/03(土) 18:53:09.82ID:nJBje9EB
「多数の初心者に勧めた場合、そのうちの多くが抵抗感を無くして
自主的にさらに先に進んでいってくれるような言語」

     これを勧めるかと

「何がなんだか訳がわからないけど学習しなきゃいけない。頑張って
みるぞ。ああ、仲間はほとんど脱落しちゃったな。でも・・・・・・・・・・あ、
こういうことだったのか。だとすれば悩んでたあれは理解できる。これは?
やっぱり理解できる!そっか。そういうことか!!」


    これを勧めるか。この違い。


両方とも、教える方は初心者に勧めることを真剣に考えてるんだけど
方法論が全く違う。
2021/04/03(土) 19:11:27.16ID:nTyeuJKB
後者はだいたい宗教だ
2021/04/03(土) 19:31:23.54ID:nJBje9EB
まあね。ただ、言語にハマっちゃって「よし、不満に思うあそことここをこういうふうに解決して
なおかつ俺の思う便利概念のこれを導入した言語を作っちゃうぜ」ってパターンがほぼ全て
だからなあ、コンピュータ言語。

ビギナーズ・オールパーパス・・・

なんて概念でイチから設計された言語が今必要かもしれないね。
216デフォルトの名無しさん
垢版 |
2021/04/03(土) 20:02:07.62ID:/r0M9IvZ
あわしろ氏はHaskellをお勧めしてるけどな。
2021/04/03(土) 20:15:15.63ID:a3PJiZ4L
昔Cを教科書読みながら学んでた時ポインタの概念そのものは難しくなかったけど
ポインタ使ってリスト構造を作るところで頭こんがらがった覚えがある
2021/04/03(土) 20:55:12.80ID:AKsD3jpb
ポインタつーか、配列だったり、文字列による初期化だと暗黙のリードオンリー扱いされたりっつー独自ルールがわかりずらいって話だと思うけどね。
219デフォルトの名無しさん
垢版 |
2021/04/03(土) 21:21:18.27ID:/r0M9IvZ
プログラミングの本質と関係ないから、ポインタの無い言語が良いよ。
2021/04/03(土) 22:02:58.52ID:3vaC6n1x
ポインタは無しがいいかもしれんが
参照値はあってもいいのか?
初心者にはチンプンカンプンだぞ
2021/04/03(土) 22:07:53.07ID:7jNhqPGA
釣りとかキチガイにマジレス必須なスレなのか
真面目に書いているつもりの人もいるんだろうが、相手の立場考えずに自分の知識披露することしか頭にない人が多いよな
だから参考にならず雑談スレにしかならないスレになってしまう
222デフォルトの名無しさん
垢版 |
2021/04/03(土) 22:21:21.27ID:8NtVDiB8
>>212
phpで書けるか?どうなの?ねえねえ

ゴホン
というか、型推論や並列というアイデアはMLから出てきたわけじゃないだろ
アイデアが浮かんだからベース言語から飛躍してMLが生まれた
223デフォルトの名無しさん
垢版 |
2021/04/03(土) 22:23:07.60ID:8NtVDiB8
型推論や並行がCやLispからは出てこなかった
というのならベース言語を提示しなきゃ片手落ちだ
という話
わかるよね?
2021/04/03(土) 22:27:21.07ID:qUEriCd1
特に作りたいものの条件なくプログラミングをしたいって流れでwinならC#って言いたくなる
環境構築的な意味で
VS組で見るとC++は情報こそあるけど言語自体が厳しいし、F#は言語は素敵だけど情報がなさ過ぎる

最近はvscodeのポン付けプラグインでも悪い体験はしないから他の言語も全然ありとは思う

この観点だとWSLとかDocker入れれるくらいの人間なら好きなの選べって言っちゃう形になってしまうのが欠点
225デフォルトの名無しさん
垢版 |
2021/04/03(土) 22:33:17.23ID:8NtVDiB8
実際のところ言語なんかズリネタのジャンルみたいなもんでしかないんだから
「萌え」る言語選べば良いんだよ
226デフォルトの名無しさん
垢版 |
2021/04/03(土) 22:35:32.06ID:8NtVDiB8
マシン語だけが正義!とかいう奴もいるが
そんなのはハードなマゾだなw
2021/04/03(土) 22:39:52.61ID:RYKBObRk
>>219
参照と実値の違いはプログラムの本質だろ。
それがcは明確。
228デフォルトの名無しさん
垢版 |
2021/04/03(土) 23:12:21.59ID:/r0M9IvZ
あわしろ氏は、そうは言っていなかったな。
2021/04/03(土) 23:16:37.51ID:FGiaI2lW
とりあえず型推論に関して年代調べた

1930年代 Churchがラムダ計算導入
1969年 Hindleyがラムダ計算での型推論
1978年 Milnerが型推論のアルゴリズム(Hindleyとは独立した研究)
1970年代 MilnerがMLとしてHindley-Milnerの型推論を実装(初出は1973年)
2021/04/03(土) 23:27:55.22ID:emna9a6N
>>222
phpでは書けないと思ってるんだw
そんなレベルで長々とウンチク語っちゃう神経が理解できんわ
231デフォルトの名無しさん
垢版 |
2021/04/04(日) 06:21:42.40ID:3nQ1NjsK
ま、どうしても決められない場合、あわしろ氏に従ってHaskelを学ぶのもいいと思う
232デフォルトの名無しさん
垢版 |
2021/04/04(日) 07:27:26.36ID:QuKH27yY
>>230
並行用の環境用意しなきゃならないだろ
それは何で書かれた環境だね?
233デフォルトの名無しさん
垢版 |
2021/04/04(日) 12:12:46.64ID:ygaQZ3sc
あわしろ氏は、なかなか良いこと言ってるよね。
234デフォルトの名無しさん
垢版 |
2021/04/04(日) 12:30:17.37ID:sPOgi/yc
あわしろ氏の言ってる事の正しさは
初級者から中級者になると分かってくるね
初級者は騙されたと思ってHaskellから始めてみてほしい
2021/04/04(日) 15:34:43.70ID:Z5PuyZKp
暇な時間使って勉強始めてみたけどhtmlのコードめっちゃみづらく感じる…
階層がかなり深くいのと、bodyとかheaderの区切りがひと目でわからん

ネットのプログラミング勉強サイトの動画見ると、色分けの仕方が違うんだけどどうしたら改善するの•́ ‿ ,•̀
単純にテーマが違うとかじゃなくて、動画だと2種類のタグの色が異なるけどうちのじゃ一緒になったり………ぬぁぁぁあぁぁあ
2021/04/04(日) 16:20:40.47ID:0TRCDG6w
>>235
マークアップ言語でしかないhtmlがプログラム言語に見える腐った頭と目は窓から捨てろ
2021/04/04(日) 16:22:40.40ID:MXSoUDpL
>>236
javascriptやってるから、htmlとcss学べば合体して強いぞって教えてもらった
2021/04/04(日) 16:28:49.73ID:+DCzNsRZ
まーた自称上級者くんが迷える子羊相手にイキって負けたのか
2021/04/04(日) 16:44:05.05ID:l5djVIXp
>>237
HTML5でいいじゃん?
2021/04/04(日) 16:56:48.52ID:8qVsa3Ij
>>239 なにそれ?調べたけどcss3って奴とくっつけばもうjavascrpitは要らない子らしいね。かわいそ

でもソフトウェア作ってみたくて始めたからメインこっちなんだ。未経験でもクラウドソーシングとかのお仕事貰いやすいだろうからホームページの勉強もするんだ
241デフォルトの名無しさん
垢版 |
2021/04/04(日) 17:06:58.23ID:2/r1Lqty
で、非並列のPhpで並列Php書けるのですか?
普通に考えてCとか使って付け足したんでしょう?

そういう話なんですけどね…
答えが帰ってきません
書けない、あるいはわからない、ということでいいでしょうか
242デフォルトの名無しさん
垢版 |
2021/04/04(日) 19:10:21.74ID:ygaQZ3sc
あわしろ氏に聞いたら、出来るゆうてたで。
2021/04/04(日) 20:25:27.99ID:2l470TEe
並行と並列の区別すらできんやつの相手するのは時間の無駄だわな
2021/04/04(日) 20:51:42.21ID:mFewUzFM
VBAとphpは最初に始めるには良い言語だと思うよ。
とりあえず成果物が簡単に構築できるからね
難しい概念はそれから覚えても問題ない
2021/04/04(日) 21:19:20.87ID:4JplG43S
>>240
VSCode 入れて拡張をググってみればしっくりくるやつがあると思う。

このへんとか。
https://uetani33.net/vscode-web-extensions/
2021/04/04(日) 21:41:24.28ID:5U3j1X6d
>>245 質問に来たわけじゃないのにわざわざ調べてくれたの?ありがとうm(_ _)m
見てみる
2021/04/04(日) 21:56:26.89ID:0QnJQanX
Ruby on Rails 6 からは、複数データベース(read replica)・並列テストができる

>>235
VSCode で、適当な拡張機能・テーマなどを選べば?
2021/04/04(日) 22:00:28.45ID:4JplG43S
>>246
あんた好感持てるなあ。かえって恐縮しちゃうよ。頑張ってくれ。
2021/04/05(月) 01:28:04.82ID:CtO6Z4DQ
javascript書くのにhtml全くわからないなんてことがあり得るのか?
信じがたいんだが
2021/04/05(月) 01:38:36.23ID:lhL+C4+p
見た感じ始めて間もないんじゃないか
このスレタイなら気になって来てみるとかありえる
251デフォルトの名無しさん
垢版 |
2021/04/05(月) 02:00:37.83ID:HYd/qqaB
あわしろ氏によると、HTMLよりCSSのほうが良いらしい。
2021/04/05(月) 10:50:52.70ID:rNcivJgw
nodeは使うけどwebはやらんとか?最近はあるんかね。
253デフォルトの名無しさん
垢版 |
2021/04/05(月) 18:52:32.00ID:QU1+bMKj
>>196のような厳しい意見もあるようだが>>187のような子供向け入門書が売られている現実からしても、C言語は昔とは違い現代では12歳(小学5〜6年生)からでも学べる言語へと進化したと言えるのではないかな。C言語自体が進化したのか指導法のほうが進化したのか、どっちなのかはわからないが。
2021/04/05(月) 19:14:44.06ID:ZlihFcox
>>251
良いのはどんなところですか?
255196
垢版 |
2021/04/05(月) 21:02:20.30ID:2g7RifS+
基本、タイトルに年齢が書いてある本は、ジャケ買いを想定してる。
年齢に釣られる客。そういう客が一定数いる

アプリの本でよくある日記

こうしたらこうなる、みたいな手順書。
何かを教えるものではない

論理的思考ができるようになるのは、中学生から。
例えば、短絡評価すら説明できない

事故が起きた際、Aボタンを押したら、5人死ぬ。
Bボタンを押したら、10人死ぬ

君は、どっちのボタンを押しますかって聞かれても、小学生は答えられない
2021/04/05(月) 21:22:39.35ID:ZWgUaczb
>>255
論理的思考ができる人間は所構わず「Rubyでは〜」なんてやらない
お前は小学生か
2021/04/05(月) 21:30:45.72ID:eYr5xgYc
>>256
小学生に謝るべき
2021/04/05(月) 21:56:13.39ID:ZWgUaczb
>>257
確かに。
小学生のみんな、おじさんが悪かった。気を悪くしたなら謝る。君たちの方がずっと物事を正しく理解しているよ。
259デフォルトの名無しさん
垢版 |
2021/04/05(月) 22:49:16.80ID:Gqmd6eKD
ぼくしょうがくせいだけどこんなぞくっぽいすれみないよ
260デフォルトの名無しさん
垢版 |
2021/04/06(火) 00:19:40.90ID:tMPZ3OJW
でも、あわしろ氏の言うことに間違いはないよ。
261デフォルトの名無しさん
垢版 |
2021/04/06(火) 01:40:58.01ID:QCJZJmtw
>>260
おじさんだれかにどういしてもらいたいの?
2021/04/06(火) 15:53:23.66ID:TgvwVymv
高校生ですけどこのスレは参考になります。
まずはbrainfuckを勉強してみます。
ありがとうございました
2021/04/06(火) 18:34:34.36ID:yGhuSEsA
こういうスレは覗いたことなかったけどRuby勧めている人が多くてビビる
Perlすすめる人はいないのにRubyは進めると言う…

40年前はBasic一択だったけどもうそういう時代じゃないね
言語の構造がシンプルで制御構文だけ学ぶならなんでもいいんだけどね
今はそういうのはないね

オブジェクト指向は初心者にはほぼ不要だけどみんな学ばせたがるよね
2021/04/06(火) 18:45:00.84ID:MkKTqBI+
>>263
Ruby勧める人が多いんじゃなく、Ruby勧める奴のレス数が多いだけだぞ
2021/04/06(火) 18:48:48.28ID:AUQo/ocE
>>263
それRubyガイジという頭のおかしい奴が一人で書き込みしているだけ
誰もRubyなんて勧めてない
266デフォルトの名無しさん
垢版 |
2021/04/06(火) 19:56:11.71ID:tMPZ3OJW
UbuntuのサイトもRubyで出来てる。
2021/04/06(火) 20:51:02.01ID:e+L9SfjT
正直
原理を覚えるだけなら
Switchのプチコンでいいと思う
2021/04/06(火) 20:53:36.34ID:f5ExZFKz
>>263
オブジェクト指向はC++とかJavaのようなオブジェクト指向型の言語なら学ぼうとしなくても言語身につければ一緒に身につく
学校とかでは単独で学習させるのか?効率が悪すぎるな
2021/04/06(火) 20:57:53.58ID:7YjVmJt2
始めるのに良い言語でPerl勧めるやつなんてそりゃいないだろ
2021/04/06(火) 23:37:26.05ID:cBLfSlVZ
YouTube で有名な、雑食系エンジニア・KENTA の、
月千円のサロンに、2千人入っている。日本6位

初心者は、Ruby から始める。
フレームワークは、Ruby on Rails

「AIや機械学習に興味があるのでPythonから勉強」は誤りです。【YAGNIの法則】

数年後に、Pythonをやりたくても、Pythonから始めてはいけません!
PHP, Java も絶対に勧めない

マコなりは、Rails の学校で、何百億円も稼いでいる。
ほとんどの学校は、そう。Rails で80万円とか

最安値は、東京フリーランスのデイトラで、10万円

PHP, Java, Python を教えると、難しい・低年収・就職できないとか、
何年も居座られて、サロンが崩壊するから、Rubyしか教えない
271270
垢版 |
2021/04/06(火) 23:49:14.60ID:cBLfSlVZ
Ruby 以外は、サロンにふさわしくない。
難しくて教えられないから

延々と教えなきゃいけないし、キリがない

難しい・低年収・IT 土方奴隷・就職できないとか、
そういう人ばっかり残るから、サロンを運営できなくなる

何年も、出ていかないだろ

自分で検索して解決できる能力を、自走力と言うけど、
Ruby以外では、自走力が付かない

他言語では、Rails ガイド・チュートリアルみたいな、
自分で学べる教育制度が整っていないから、ずっと教えてもらわないといけない。
徒弟制度みたいなもの

ずっと自立できない
2021/04/07(水) 00:03:31.06ID:yiSSuroL
Google先生がずっとあなたのそばにいます。
彼らはずっとそこにいます。
ずっと
死ぬまで
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況