수색…
비고
F #은 "기능 우선"언어입니다. 함수 와 함께 다양한 표현 유형을 모두 배울 수 있습니다.
오픈 소스 인 F # 컴파일러 는 프로그램을 IL로 컴파일합니다. 즉, C # 과 같은 .NET 호환 언어에서 F # 코드를 사용할 수 있습니다. Mono, .NET Core 또는 Windows의 .NET Framework에서 실행합니다.
버전
번역 | 출시일 |
---|---|
1.x | 2005-05-01 |
2.0 | 2010-04-01 |
3.0 | 2012-08-01 |
3.1 | 2013-10-01 |
4.0 | 2015-07-01 |
설치 또는 설정
Windows
Visual Studio (Express 및 커뮤니티를 포함한 모든 버전)가 설치되어 있으면 F #이 이미 포함되어 있어야합니다. 새 프로젝트를 만들 때 F #을 언어로 선택하십시오. 또는 다른 옵션을 보려면 http://fsharp.org/use/windows/ 를 참조 하십시오 .
OS X
Xamarin Studio 는 F #을 지원합니다. 또는 Microsoft의 크로스 플랫폼 편집기 인 OS X 용 VS 코드를 사용할 수 있습니다.
VS 코드 설치를 마치면 VS Code Quick Open
( Ctrl + P )를 실행 한 다음 ext install Ionide-fsharp
를 실행합니다
또한 Mac 용 Visual Studio를 고려할 수도 있습니다.
여기에는 다른 대안이 설명되어 있습니다 .
리눅스
배포 패키지 관리자 (Apt, Yum 등)를 통해 mono-complete
및 fsharp
패키지를 설치하십시오. 좋은 편집 경험을 위해 Visual Studio 코드 를 사용하고 ionide-fsharp
플러그인을 설치하거나 Atom 을 사용하고 ionide-installer
플러그인을 설치하십시오. 추가 옵션은 http://fsharp.org/use/linux/ 를 참조 하십시오 .
안녕, 세상!
이것은 "Hello, World!"라는 간단한 콘솔 프로젝트 코드입니다. STDOUT으로 설정하고 종료 코드 0
종료합니다.
[<EntryPoint>]
let main argv =
printfn "Hello, World!"
0
줄 바꿈 예제 줄별로 :
-
[<EntryPoint>]
- 프로그램 ( 소스 )의 "진입 점을 설정하는 데 사용하는 방법"을 표시하는 .net 속성 . -
let main argv
- 이것은 하나의 인자argv
가진main
이라는 함수를 정의한다. 이것은 프로그램 진입 점이므로argv
는 문자열 배열입니다. 배열의 내용은 실행될 때 프로그램에 전달 된 인수입니다. -
printfn "Hello, World!"
-printfn
함수는 첫 번째 인수로 전달 된 문자열 **을 출력하고 개행을 추가합니다. -
0
- F # 함수는 항상 값을 반환하고 반환 된 값은 함수의 마지막 표현식 결과입니다.0
을 마지막 행으로 지정하면 함수는 항상 0 (정수)을 반환합니다.
** 실제로 는 하나의 문자열인데도 문자열이 아닙니다 . 실제로 TextWriterFormat 입니다. 선택적으로 정적으로 검사 된 인수를 사용할 수 있습니다. 그러나 "안녕하세요 세상"예제의 목적으로 문자열로 간주 될 수 있습니다.
F # 대화식
F # 대화식은 한 번에 한 줄씩 F # 코드를 실행할 수있는 REPL 환경입니다.
F #을 사용하여 Visual Studio를 설치 한 경우 "C:\Program Files (x86)\Microsoft SDKs\F#\4.0\Framework\v4.0\Fsi.exe"
를 입력하여 콘솔에서 F # Interactive를 실행할 수 있습니다. 리눅스 나 OS X에서 명령은 fsharpi
대신에 /usr/bin
있거나 /usr/local/bin
에 있어야합니다. F를 어떻게 설치했는지에 따라 - 어느 쪽이든 명령은 PATH
에 있어야합니다. 그냥 fsharpi
입력 fsharpi
.
F # 대화식 사용의 예 :
> let i = 1 // fsi prompt, declare i
- let j = 2 // declare j
- i+j // compose expression
- ;; // execute commands
val i : int = 1 // fsi output started, this gives the value of i
val j : int = 2 // the value of j
val it : int = 3 // computed expression
> #quit;; //quit fsi
#help;;
사용하십시오. 도와주기 위해
;;
의 사용에주의하십시오. 이전에 입력 된 명령을 실행하도록 REPL에 알립니다.