質問編集履歴
1
リンク先を掲載するため、説明コメント欄に対する回答から質問欄に追記いたしました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,2 +1,39 @@
|
|
1
1
|
[c#には区別があるみたいですが](https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/types/#compile-time-type-and-runtime-type),powershellには区別があるのでしょうか?
|
2
|
-
もし、有れば使い方等教えて頂きたいです。
|
2
|
+
もし、有れば使い方等教えて頂きたいです。
|
3
|
+
|
4
|
+
---追記---
|
5
|
+
|
6
|
+
なるほど、 Endless-Loop さん。Web上でそのような記事が見当たりませんか。
|
7
|
+
[インタプリタ#概要](https://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%97%E3%83%AA%E3%82%BF#%E6%A6%82%E8%A6%81)
|
8
|
+
|
9
|
+
[インタプリタ#誤解](https://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%97%E3%83%AA%E3%82%BF#%E8%AA%A4%E8%A7%A3)
|
10
|
+
|
11
|
+
Endless-Loopさんも言われている逐次翻訳=[一行ずつ翻訳する(コンパイル)と明言しているサイト](https://qiita.com/kawataku-89love/items/82c7a7684f06224e4785)
|
12
|
+
|
13
|
+
[Add-typeの機械翻訳](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/add-type?view=powershell-7.1)ですが、
|
14
|
+
> ”ソース コードを指定する場合、指定したソース コードを**コンパイル**し、新しい .NET Core 型を含むメモリ内アセンブリを生成します。”
|
15
|
+
|
16
|
+
とありますね。
|
17
|
+
|
18
|
+
[DSC](https://docs.microsoft.com/ja-jp/powershell/scripting/dsc/configurations/write-compile-apply-configuration?view=powershell-7.1)
|
19
|
+
|
20
|
+
[JiTコンパイルとか](http://blog.powershell-from.jp/?p=276)
|
21
|
+
|
22
|
+
等ありますが、どうでしょうか?Endless-LoopさんPowershellはコンパイル作業してませんか?
|
23
|
+
|
24
|
+
> PowerShellには動的型付けの言語であり自動型変換がありますので、一部の例外はあろうかと思いますが多くの場合で型指定を必要としません。
|
25
|
+
|
26
|
+
完全に内部実装が一緒という気はありませんが、
|
27
|
+
C#もVarやラムダの存在があるため、Powershellと同じように型推論できるなら、C#で型指定する必要などありません。
|
28
|
+
というか、C#は匿名型があります。
|
29
|
+
|
30
|
+
[C#とPowershellで型指定できますし、
|
31
|
+
Powershellが「特殊な型変換機構が働くのは、数値や文字列などの基本的な型のみ」で](https://ufcpp.net/study/powershell/variable.html)
|
32
|
+
キャストできなければ、これもまたC#と同じようにエラーになります。
|
33
|
+
|
34
|
+
以上で
|
35
|
+
Endless-Loop さんが指摘された
|
36
|
+
「インタプリタかコンパイラかどうか」
|
37
|
+
「型指定の有無があるかどうか」
|
38
|
+
の2点は本質問の答えにはならないと説明すると共に
|
39
|
+
本質問の補足とさせて頂きます。
|