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

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2020/07/16(木) 16:11:58.71ID:FdxXVx6E
前スレ
ぶっちゃけ始めるのにいい言語て何?
http://mevius.5ch.net/test/read.cgi/tech/1583223433/
708デフォルトの名無しさん
垢版 |
2020/08/14(金) 18:32:48.29ID:jifd8sPx
Cは仕様のほとんどを割と簡単に把握できる
正しい作法を覚える必要はあるかもしれないけど(他の言語でもそれは同じでは?)
2020/08/14(金) 18:46:56.57ID:CR1HsLIW
Cは、アセンブラを置き換える高級言語として登場したから、バイナリ変換効率が良かった。 その為に一気にアセンブラ言語を置き換えていった。

カーニハン&リッチー『プログラミング言語C』
が出て読めば簡単な言語だから暇な時に読んでも1週間あれば理解できた。

近代言語の多くがCをベースにしてるし簡単だから、さっと目を通しておくのも良いと思う。
2020/08/14(金) 18:59:35.53ID:/3eEdXyz
言語仕様全部覚えてもプログラム書けるようになるとは限らないし
言語仕様を全部把握しなくてもプログラムは書ける
>>705
所詮雑談スレ
711デフォルトの名無しさん
垢版 |
2020/08/14(金) 19:41:50.71ID:jifd8sPx
プログラムを書ける必要十分条件が仕様の把握なんて誰が言ったっけ
712デフォルトの名無しさん
垢版 |
2020/08/14(金) 20:05:39.62ID:iKT8HLUL
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

VM + ASM を書いた (C#, DX) * x86 ではない!
simulationライブラリで純粋な関数式プログラミングをする
UIライブラリ (C#, 2D) を作ったよ
連続と離散を統一した!
4Dエンジン
matrixのライブラリ
ある強力なFor関数
SQLライブラリ

VM + ASM のダウンロード
ttp://up.x0000.net/files/TSimulang.zip
2020/08/14(金) 20:32:12.11ID:2EmP+rcx
>>706
おーどうも有難うございます!
お盆休みに入るんでじっくりやりますわ
714デフォルトの名無しさん
垢版 |
2020/08/14(金) 22:11:11.39ID:nDm1uwAY
>>707
不便なだけじゃないすか…
2020/08/14(金) 23:02:08.74ID:txNZsWd8
>>714
いわゆる拘束プレイ、というやつです…
716デフォルトの名無しさん
垢版 |
2020/08/15(土) 00:46:19.48ID:ceiT+BNn
>>715
よく理解出来ないな…
最初からライブラリが充実してた方がいい気がするんですがね
2020/08/15(土) 01:01:45.74ID:tbDdrA6F
ライブラリーの使い方だけなのは
プログラミングと言えるかということでは?
2020/08/15(土) 04:21:02.92ID:FINrIXob
Haskellやろうぜ
2020/08/15(土) 07:34:20.84ID:TdEhWykx
何故にみんな
C++、Java、Javascriptを極端に嫌うのか
2020/08/15(土) 08:00:06.27ID:3ToZ8TSl
始めるのにいい言語はC言語だろうな
もう業務で使うことはあまりないが、ルールが単純ですぐに覚えられる
そのわりに、ポインタなど難しい概念もある
学習が進めば、自然とコンピュータ内でどんな動作をしてるかが理解できる
基礎としては最適だろう

おまけで「C言語ができます」と言うと、ちょっとデキる感を演出できるw
2020/08/15(土) 09:14:27.80ID:t9lyhjXk
太古の昔から存在するアセンブリ言語をおすすめする
2020/08/15(土) 09:50:07.00ID:UniGXrGx
>>721 機械語の方が古るかぞ。 機械語もアセンブリ言語も今時流行らんタイ。

アセンブリ言語で自分のスマホにサイコロでも転がしてみんさい。
2020/08/15(土) 10:40:53.83ID:jhaBe82K
>>720
アセンブラ勧めるアホと同じでコンピューターの仕組みの知識なんかプログラム始めるのにいらない
仕組みの知識が必要ななるプログラムする段階になった時に勉強したらいい
何でここのスレは入口のハードルを高くしようとする人が多いの?
>>722
スマホでアセンブラとかおまえだけでやってろ
2020/08/15(土) 11:01:19.37ID:t9lyhjXk
パンチカードもいいぞ
2020/08/15(土) 11:07:01.32ID:UniGXrGx
>>723 アセンブラを勧めるアホを揶揄してることもわからんとか。

Python なら、あっという間に何でもできる。特にiOSでプログラム開発は難しいとされてきたが、Python なら作ってすぐに使える。
Widget から動かせばPythonすら立ち上がることもない。

スマホ、PCいつでもどこでも練習できる。
726デフォルトの名無しさん
垢版 |
2020/08/15(土) 12:03:31.60ID:KV0ftL1X
パンチカードはデッキの一部を組み替えることで顧客に合わせた処理が出来るなど、ある意味オブジェクト指向だった。
727デフォルトの名無しさん
垢版 |
2020/08/15(土) 12:07:36.49ID:KV0ftL1X
単独では最弱だがデッキに組み込むことで類稀な力を発揮するカードは、ジョーカーと呼ばれた。
2020/08/15(土) 12:52:41.88ID:sQULdK+x
C言語は外部のライブラリを使えば今はやりの言語でやりたいことは大体あるよ。「ちゃんと書けば」実行時は高速に、メモリ効率もよく書ける。
2020/08/15(土) 12:57:28.84ID:t9lyhjXk
即オリジナルゲームを作りたいってヤツはCシャープ覚えてユニテーで作ればいい
2020/08/15(土) 13:13:23.50ID:cd5NPbjX
俺は自分がC->C++と勉強して良かったと思っている
他の言語から勉強したらC、C++の学習ハードルが天空になってしまっていた
2020/08/15(土) 13:14:15.98ID:UniGXrGx
アセンブラ馬鹿に紙テープでも使わせてみたいな。
破れたりしたら継ぎ合わせて、ビット単位で機械語で穴を開けて補修しなければならない。 今更そんな馬鹿らしいことをやってる人もいないだろ。

便利なものがあれば便利なものを使えば良いんだよ。
732デフォルトの名無しさん
垢版 |
2020/08/15(土) 15:30:45.15ID:KV0ftL1X
いや、Javaだろ。
2020/08/15(土) 15:47:09.21ID:TdEhWykx
Java
「くっ!!C#!C#!C#!
 どいつもこいつもC#!
 なぜだ!なぜやつを認めて
 このおれを認めねぇんだ!」
734デフォルトの名無しさん
垢版 |
2020/08/15(土) 15:56:46.06ID:Y9oiVJFr
たしかにC++ある程度できるからか他の言語触ってもだいたいイージーモード感ある
ただHaskellとかは感覚が全然ちがう
2020/08/15(土) 15:57:40.23ID:b7puwzQl
SQLとかどうだ
ER図とかも書いてみろ
2020/08/15(土) 16:07:44.43ID:gC8AEAiT
>>735
Linuxインストールジジイとかこの手の自分の知っているもの出してやってみろってレスはうんざりする
2020/08/15(土) 16:30:29.08ID:4Fj9Za8e
IEEE Spectrum’

The Top Programming Languages 2019
Posted 2019-09-06
https://spectrum.ieee.org/computing/software/the-top-programming-languages-2019

https://i.imgur.com/NVrx2mb.jpg
2020/08/15(土) 16:33:14.90ID:4Fj9Za8e
>>735 そんなものツールで書くだけじゃんか。
https://i.imgur.com/4AgO8KS.jpg
2020/08/15(土) 16:45:44.65ID:t9lyhjXk
俺は触れたことないけど、本屋でよく見かけるスクラッチは入門向けには、どうなの?
2020/08/15(土) 16:46:22.32ID:YIEd4cAz
>>737
その記事、最新の2020年版では
没落しているRubyが11位にランキングしているから間違ってるぞ
IEEEとかいう団体は、捏造情報を垂れ流すべきじゃない
2020/08/15(土) 16:52:00.07ID:crtSow9x
>>737
JSにWebマークしか付いてないの意味分からんな。React Native無視とは。
そこまでのシェアじゃないとはいえ、じぁあC/C++のスマホマークは何なんですかと。
PCマークだってPythonに付いてるがVSCodeはじめElectron製アプリのほうがよっぽど多いだろうに。
2020/08/15(土) 16:59:26.81ID:4Fj9Za8e
>>739 あれは、小学校までの入門用。 大人が触るもんじゃ無い。 子供の教育用にちょっとさわれば済む話。

大人なら言語を直接触った方が理解は早いとは思うが、周辺のIO を動かす為にどんなコードで書かれてるのか調べるには良いかも。
Micro:bit を小一の孫にプレゼントしたが、自分も理解しておく必要があったから、BluetoothでMicro:bitと通信してみた。 なるほどとは思う。(micro Python)

似たような2000円くらいで買える大人の玩具には、ichigo jam とか、arduino (IEEEランキング11位)とかある。

少し高度になると、ラズベリーパイ。 これだとほとんど何でもできる。安い教育用Linuxマシン。 基本言語はPython
2020/08/15(土) 17:03:00.11ID:4Fj9Za8e
>>740 どうでも良いだろ。 10位以下はゴミだよ。
少なくとも初心者が学ぶべき言語では無いのは確か。
2020/08/15(土) 17:07:16.91ID:umUsbxeH
Alternatives to Visual Studio Code for all platforms with any license
https://alternativeto.net/software/visual-studio-code/
Code Learning Apps and Services
https://alternativeto.net/category/developer-tools/learn-a-programming-language/

https://alternativeto.net/category/developer-tools/
745デフォルトの名無しさん
垢版 |
2020/08/15(土) 17:46:39.06ID:KV0ftL1X
日本にはHSPがあるだろ。
2020/08/15(土) 18:37:00.27ID:z+dvr5Wj
PHPはあかんの?
2020/08/15(土) 19:29:13.86ID:4GsEJ4Sf
>>746 あれは完全にただのツール。 言語とは言えない、perl の一変態
マクロみたいなものだろ。
2020/08/15(土) 20:47:48.01ID:8oWMPGKo
facebookはマクロで天下取ったのか。
マクロって すげー!
2020/08/15(土) 21:14:36.29ID:OkeTMDO9
>>746
HTMLに埋め込むっていう斬新な方法で簡単に動的ページを作れるからある程度の規模のサイトを簡単に作るならいいと思う
2020/08/15(土) 21:14:56.29ID:lwC1krR6
>>748
キチの相手すんな
2020/08/16(日) 08:15:14.42ID:ZkarGjJb
令和にもなってHTMLにPHPガッツリ書いてる人って引くわ
クリーンアーキテクチャどころかMVCとかも知らなさそう
2020/08/16(日) 14:17:36.44ID:vlpSsCfY
>>751
???
PHPのフレームワークでMVCモデル使われてるやん
言ってること無茶苦茶だぞ
2020/08/16(日) 14:18:41.80ID:vlpSsCfY
ああすまん、ビューファイルにPHPを書くのが引くってことね
2020/08/16(日) 14:45:02.26ID:7n2hwSPz
簡単に作るなら
って書いてるのにガッツリ書くとか煽りたくてしょうがない厨房かよw
2020/08/16(日) 15:47:40.47ID:0qtTXmxD
>>734
意外とでかいんだよな、これ。Haskellはやったことないけど、そんなに違うんだ。
2020/08/16(日) 21:24:08.57ID:Oe4ljRpl
>>723
C言語のハードルは高くないぞ
むしろ低い方だ
ポインタなどの難しい概念はあるが、最初はポインタを使わなければいいだけ
フレームワークだの、オブジェクト指向だの、初心者には理解が難しいことも覚える必要はない
しかも、未だに仕事で使うから無駄にはならない

おまけにコンピュータの仕組みも知らずに理解できる
これほどお得な学習法もないと思うがなぁ
2020/08/16(日) 21:32:17.92ID:ukEeeY+y
VBは?
2020/08/16(日) 22:57:55.38ID:nFaLAj/B
>>757 昔々の言語。 覚える価値はない。 環境変数を覚える方が難しい。
Excelマクロは、VBからJavascript やPython に移りつつある。
759デフォルトの名無しさん
垢版 |
2020/08/17(月) 00:23:40.37ID:SO3bXD1g
レガシー言語を勧めるのはどうだろ
新しい言語の方が便利に決まってる
2020/08/17(月) 00:33:18.38ID:MuKH26x+
>>759
言語を勧める理由として便利さだけを追求する方がどうかと思うぞw
学習的な側面から、理由を説明した上でレガシーな言語を勧めることは十分アリだと思う。
受け取り手が、自分の目的や価値観に合わせて判断すればいいだけのこと。判断の助けになるようメリット、デメリットも含めて提示できればなお良いと思うぞ。
2020/08/17(月) 01:05:18.18ID:frAy30YW
>>737 その表を見ててふと気が付いたんだが、組込用(⚙)の言語がやはり重要そうだな。
Python , C/C++ , C#
762デフォルトの名無しさん
垢版 |
2020/08/17(月) 01:14:18.56ID:SO3bXD1g
敢えて古い言語を勧める理由ってあるかな
学習するなら新しいことを覚えた方が役に立つ気がする
車輪の再発明をするなって言うし
2020/08/17(月) 01:43:28.52ID:r+bG+fmh
CやPythonも十分レガシー言語
新しさや人気みたいな基準で選んじゃうのは外見で人を選ぶのと同じ
2020/08/17(月) 02:15:38.93ID:510byYXm
Smalltalkだけは別格かも知れない。
2020/08/17(月) 02:24:58.40ID:frAy30YW
教育用言語としての絶対?条件は、インタプリタ言語だろうな。
古くはBASIC、今はPython

Python でインラインで 1+2 と入れたら3になる。
>>>1+2
3

改めて見ると驚きだよ。

全く電卓として使える。 元々BASICも電卓みたいな計算ができることを目的としてた。
自分が会社に入った時に最初に習ったのがベル研のBASICで10か12位の命令しかなかった。 紙っぺらの説明書を貰った後直ぐに実習に入った。
766デフォルトの名無しさん
垢版 |
2020/08/17(月) 02:36:30.94ID:SO3bXD1g
人は見た目が9割だから

古いものや人気のないものは淘汰されていく
まあ古くても人気があれば残るんだろうけど
C#の人気があるのも最新の機能が使えるからだろどうせ
2020/08/17(月) 03:06:16.17ID:frAy30YW
>>> x=1
>>> y=2
>>> x+y
3
2020/08/17(月) 03:23:28.91ID:frAy30YW
>>765 どんなに高度な事をしても直ぐに結果が見れることが、現代のニーズにマッチしてるんだろうな。
先ず実験して本格的にスピードが必要ならそれなりの方法もあるし。
769デフォルトの名無しさん
垢版 |
2020/08/17(月) 03:34:59.74ID:iLtCCqZP
極力インストールしない主義なので、Excelは最初から付いてるVBAでいいや
既に作ったものをわざわざ移植する必然性もないし

学校ではライセンス不要の言語を教えるから、今時の学生に合わせたいんだろうな
じゃなぜ昔のリーマンはVB系から入ったのか
昔はコピー余裕だったから、会社のソフトを家にもインストールして練習してたんだな

しかし年数経たないと、ネットでノウハウをググれん
新しい言語にはそういう問題がある
まあ問題となるのはアプリ操作のブラックボックスなので、その本質は一緒なんだろうけど
770デフォルトの名無しさん
垢版 |
2020/08/17(月) 03:38:50.66ID:iLtCCqZP
>>733
そうなの?
C#の開発目的が、Javaへの対抗と聞いたが
学校ではJavaを教えるので、Javaに似せれば使ってもらえると
とうとう勝ったのかw
771デフォルトの名無しさん
垢版 |
2020/08/17(月) 03:47:08.56ID:iLtCCqZP
C#の開発者はDelphiの開発者らしいが、Delphiの方が良かったな
シンプルで速い
C++のノウハウがほぼ直訳で使えるので、変わったこともできる(する必要もないがw)
さらっとも使えるし、凝りまくることもできる
2020/08/17(月) 05:28:56.29ID:MuKH26x+
>>766
>人は見た目が9割だから
お前がそういう価値観なのは分かったよw
人気のないものが淘汰されるのだから、古いから勧めるななんてお前が言う必要ないだろうに。お前が興味ないだけなんだろうが、そこは他の人にとってどうでもいいこと。
お前ではない誰か一人でも、その古い言語に興味を持ったなら、または興味を持たないにしてもその説明で何か得ることがあったのなら、価値があるのだから。
2020/08/17(月) 05:50:15.04ID:b6PNATJA
人は見た目が9割とか言ってるやつってまともにその本読んだこと無さそう
2020/08/17(月) 06:06:31.83ID:Agahn7wQ
>>758
さて、それはどうかな
今のVB.Netは文法以外ほぼC#と同じ。
つまりVB.Netを覚えてしまえばほぼC#を
覚えたのと同義と言っても過言ではない。

.Net Coreで成長を止めてしまったとは言え、
VB.Netから勉強した場合、その習得後に
C#も使えるようになっていて、
VBAもほぼ使えるようになっていたとしたらどうだろうか?

もちろん、言語特有の部分は少し覚えなければならないが、それはのめり込んだときのごく一部と考えれば
極論、VB.Netの習得はいきなり3つの言語を習得したのと同じと言える。

後、いくらJavaScriptやPythonがEXCELで使えるようになるとはいえ、それらが主体として使える望みは薄い。
何故ならVBAで使用するVariant型こそEXCELに対して最も効果を発揮する型であり、
何でも入る危険過ぎる型としてvb.Net上の仕様からも消されたものであるからだ。

後、VBAが他の言語に今まで取って変わられなかったのはそれまで作成されていた資産が多いのと
VBAの仕様があまりに雑で他の言語での改修が困難だからと言われている。

ま、その辺のことはVBAスレ行って聞けば蜂の巣を突いたようになるだろうから聞いてみればいい。
775デフォルトの名無しさん
垢版 |
2020/08/17(月) 08:29:51.17ID:HJfgae1K
PHPが広まった理由はWindowsで動いたからだけど、いまはWSLがあるので、C++でサーバーサイドもアリかな。
2020/08/17(月) 08:42:05.28ID:kqc8skie
このスレが役に立たないのは適当なこと書くアホが多いのに加えてそこに入るべき適切なツッコミのレスが少ないこと
今からプログラム始めようとする人の方がこのスレには向いていない
2020/08/17(月) 10:52:24.72ID:r+bG+fmh
>>765
インタプリタ言語じゃなくてもREPL使えるよ
昭和の昔話する前に現代の言語を勉強しては?
2020/08/17(月) 11:08:40.30ID:frAy30YW
>>777 swift などだろ。 そりゃ知ってるよ。 swiftも教育用言語の一つとされている。
2020/08/17(月) 11:13:05.57ID:vZBfKXFm
ほらやっぱり知らないw
c#にもcsiあるし、
javaですらjshellあるんだがwww
780デフォルトの名無しさん
垢版 |
2020/08/17(月) 11:39:38.29ID:HJfgae1K
Ubuntuのインストールを習得してIT系やれば?
781デフォルトの名無しさん
垢版 |
2020/08/17(月) 20:02:06.93ID:SO3bXD1g
もうUbuntuはいいよ
言語じゃないじゃん
2020/08/17(月) 22:46:59.79ID:6nkEOrou
Javaが既にレガシーになっている
正直言ってCの数倍は難しい
783デフォルトの名無しさん
垢版 |
2020/08/18(火) 01:24:35.75ID:2HI6hPLK
そうだjavascriptには内部関数があった
関数が減り、関数の名前で悩む時間が減る
関数を増やしたくなくて同じことを2回書く必要もないw
Excelに最初から付いてればそっちだな

関数の名前決めるために一旦寝たりする変な本能があって
784デフォルトの名無しさん
垢版 |
2020/08/18(火) 01:33:02.18ID:8gN8Hzmn
Pythonで向こう100年戦うつもり
2020/08/18(火) 09:37:49.15ID:CekSd1r9
WebAssembly がホットだな。

Javascript の代わりに仮想マシン語をWebブラウザで動かすんだが、Web の外でも動かせるみたいだ。

上位コンパイラは、C, C++ , GO などだが大抵のコンパイラが、WebAssembly を吐き出せるようになるだろう。
Swiftでも動き始めている。

殆どのブラウザで既にWebAssembly が動くようになっている。
AutoCAD やAdobeのLightRoom などもWebAssemblyで動いてるそうだ。
WebAssembly環境でPython なども動く。

仮想マシンの実行環境が整いつつある。時代が変わるような大変革だな。
786デフォルトの名無しさん
垢版 |
2020/08/18(火) 12:05:53.52ID:TUZhvGor
>それらの言語をウェブ上で実行することができます。

ブラウザ上だよねw

>WebAssembly はモダンなウェブブラウザーで実行できる新しいタイプのコードです。

まあその前にそう言ってるけど

「ウェブ上で」ってプログラマーの感覚では、サーバーサイド、ないし通信のことであって
経営者や企画・営業系が勘違いするような表現やめて欲しいなw

「ウェブ上」で動く専用クライアントを作ると、「ウェブ上でできない?」とかw
ブラウザも一つのクライアントソフトなんだがw
強いて言えばメーカーの良心によりローカルアクセスが制限されてる安心感かな(自分が他社製を使う場合)
だが「ウェブ上」を希望するアホどもはそんな認識は当然ないw
787デフォルトの名無しさん
垢版 |
2020/08/18(火) 12:28:09.39ID:TUZhvGor
5chブラウザも未だに専ブラほど快適なブラウザ版ないしね
本気で性能を求めるなら専用クライアント
5chごとき業務用でもないし、モラルが怪しげだし、それこそブラウザ版が望ましいんだが、
それでも怪しみながら専ブラを使わざるを得ないぐらい差がある
2020/08/18(火) 16:30:46.24ID:x5qGmzqp
Python のフルセットもWebAssemblyで動くようになっている。
Pyodide

WebAssemblyは、Cなどで書くと変更するとコンパイルしなおさないといけないが、Pythonならソースコードを変更すればその場で有効になる。 実験的に変数や数式を変更したりするには最適。 Javascript の機能も使える。
2020/08/18(火) 17:08:29.38ID:pq/+ciEM
pyズリ
2020/08/18(火) 17:43:05.80ID:HR/M/dGq
>>765
対話的なプログラミング環境、いわゆるREPLは大事だよね
たとえば「0から9までの数字で偶数のものを2乗した配列」が欲しいとする
もしもこうした環境が提供されている言語であれば:

$ irb
irb(main):001:0> (0..9)
=> 0..9
irb(main):002:0> (0..9).select {|n| n % 2 == 0}
=> [0, 2, 4, 6, 8]
irb(main):003:0> (0..9).select {|n| n % 2 == 0}.map {|n| n * n}
=> [0, 4, 16, 36, 64]
irb(main):004:0>

その場で、手軽に計算を学習できる、あたかも電卓のように
こうしたメソッドチェーン(あるいは関数型言語におけるパイプライン演算子)は、
スレタイにある「ぶっちゃけ始めるのにいい言語」には必須じゃないかと思われ

https://qiita.com/subaru-shoji/items/110529c2c1824633d79c
791790
垢版 |
2020/08/18(火) 18:03:34.26ID:HR/M/dGq
別のお題で
たとえば「ある配列を、昇順に並べて、反転して、文字列化して、間を”-“で繋ぐ」という
処理を試したいとする:

$ irb
irb(main):001:0> a = [1,4,3,2]
irb(main):002:0> a.sort
=> [1, 2, 3, 4]
irb(main):003:0> a.sort.reverse
=> [4, 3, 2, 1]
irb(main):004:0> a.sort.reverse.map(&:to_s)
=> ["4", "3", "2", "1"]
irb(main):005:0> a.sort.reverse.map(&:to_s).join
=> "4321"
irb(main):006:0>

https://edvakf.hatenadiary.org/entry/20090405/1238885788

REPL(対話型プログラミング環境)があれば、
select/map/sort/reverse/join といった操作(メソッド or 関数)を
電卓の + や - といった数値演算子と同様に学習できる
792790
垢版 |
2020/08/18(火) 18:21:19.16ID:HR/M/dGq
>>791にtypoがあったから訂正

irb(main):05:0> a.sort.reverse.map(&:to_s).join('-')
=> "4-3-2-1"
irb(main):06:0>
2020/08/18(火) 18:47:20.91ID:5CK1RoYW
実際に動かして見るのが一番だよ。
https://pyodide-cdn2.iodide.io/v0.15.0/full/console.html

ここにアクセスして、
1+2
と入れれば答えが出る。
a=1
b=2
print(a+b)

何もインストールする必要もないから、感触を掴むには良いだろう。
他にもサーバーサイドで使えるサイトはあるが、

でもこのサイトは、クライアントで動くようになってるから、電波が届かないところでもPythonが使える。
2020/08/18(火) 18:49:26.82ID:5CK1RoYW
最初はネットにつながっていないといけないけどね。最初は50MB位ダウンロードされるが一瞬、その後はストレスなく使える。

https://pyodide-cdn2.iodide.io/v0.15.0/full/console.html
2020/08/18(火) 18:50:53.88ID:5CK1RoYW
>>794
間違い。
https://i.imgur.com/GmNAxf2.jpg
796790
垢版 |
2020/08/18(火) 19:12:36.84ID:HR/M/dGq
>>では、2つのお題:
 (1) 0から9までの数字で偶数のものを2乗した配列(>>790)
 (2) ある配列を、昇順に並べて、反転して、文字列化して、間を”-“で繋ぐ(>>791)
いずれかでかまわないので、試した実行結果を示してくださいませ
ぶっちゃけ始めたばかりの初心者向きの簡単なお題ですよね

自分はPythonに慣れていないんで、エラーで嫌われちゃいました(涙

Welcome to the Pyodide terminal emulator
>>> range(10)
0,1,2,3,4,5,6,7,8,9
>>> range(10).filter(lambda n: n % 2 == 0)
Error: Traceback (most recent call last):
File "/lib/python3.7/site-packages/pyodide.py", line 45, in eval_code
return eval(compile(expr, '<eval>', mode='eval'), ns, ns)
File "<eval>", line 1, in <module>
AttributeError: 'range' object has no attribute 'filter'
>>>
2020/08/18(火) 20:24:47.77ID:LqLuZ5HW
いきなりRustを勧める鬼畜
2020/08/18(火) 21:09:14.87ID:7q74aHL6
lispは?
799デフォルトの名無しさん
垢版 |
2020/08/18(火) 21:14:01.10ID:DLOA82Zt
lisp ときたか!こりゃ一本取られた!\(゜ロ\)(/ロ゜)/
800デフォルトの名無しさん
垢版 |
2020/08/18(火) 21:22:38.85ID:ZOejX8E8
じゃあN88 BASICでええやん。
2020/08/18(火) 21:38:17.98ID:pq/+ciEM
こもーん・りすぷ
802デフォルトの名無しさん
垢版 |
2020/08/18(火) 22:08:13.38ID:TUZhvGor
パイソンは隆盛を誇ってるようだが、けったいな呪文を次々に増やすのはどうかな

とかく世の中はSQLを避けたがるフシがある
.NETも使えない自動発行とか
SQLが呪文のようだから嫌われるのに、より呪文のような言語を開発しても
ラムダ式もそうだな、そこまでやるなら素直にSQLにすれば

もしシステムビューに整数マスタ(sys.math_integers)があれば(なくても作ればいいが)

select p =power(n, 2) from sys.math_integers where n>=0 and n<=9 and n%2=0

俺にはこの方が意味が分かりやすい
かつDBエンジンは高速
さらに要件が複雑化しても見通しがよい(俺にはねw)
戻り値が表なので、結果を利用した後続処理も高速で、可用性が高い
2020/08/18(火) 22:21:04.37ID:zD91pcSD
日本人としては
sys.math_integers | filter(n>=0 and n<=9 and n%2=0) | power(2)
と書けたほうが分かりやすい
2020/08/19(水) 00:10:16.21ID:LQ0AAX+I
>>796
(1)
>>> l=list(range(0,10,2))
>>> l
[0, 2, 4, 6, 8]
>>> list(map(lambda l:l**2 , l) )
[0, 4, 16, 36, 64]
>>>

>>793 のサイトはREPL でコピペが使えないみたいだから使いにくいね。
2020/08/19(水) 02:02:54.37ID:fkJrhcWm
>>804
なぜ中間変数 l が必要なのかと考えたら、無理に1行でまとめると:

 list(map(lambda l: l ** 2, list(range(0, 10, 2))))

カッコが4重にも重なり視点が左右に行ったり来たりする
可読性の悪いコードになってしまうからですよね

>>803氏が指摘しているような、視点が左から右へと流れるような
コードは、今時のオブジェクト指向(メソッドチェーン)あるいは
関数型(パイプライン演算子)の特性を備えた言語であれば、
なんの苦もなくさらっと書けるのに:

 (0..9).step(2).map {|n| n ** 2}

いったいどうしてこんなことになってしまったのでしょうか
2020/08/19(水) 02:42:54.68ID:w/3evjlx
Python は、右から読むから、可読性が低い。
Ruby, Elixir みたいに、左からメソッドチェーン・パイプで、書くのが分かりやすい

paiza で、打ち込める
2020/08/19(水) 07:53:27.30ID:lpXV8Fer
メソッドチェーンはできないわけじゃないけど、実際に使われている例が少ないのはPythonの言語思想によるものなんですかね?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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