Udostępnij za pośrednictwem


F# odniesienia Interactive (fsi.exe)

F# Interactive (fsi.exe) jest używany interaktywne uruchamianie kodu F# Console lub wykonywanie skryptów F#.Innymi słowy F# interaktywne wykonuje REPL (Odczyt, Szacuj, drukowanie pętli) dla języka F#.

Interaktywne programowania z F#

F# interaktywnych można napisać kod na konsoli lub w oknie programu Visual Studio.

Aby uruchomić F# Interactive z konsoli, należy uruchomić fsi.exe.Informacje o dostępnych opcji wiersza polecenia, zobacz F# opcje interaktywne.

F# interaktywny uruchomienie przez Visual Studio 2010, kliknięcie przycisku odpowiednich narzędzi etykietą F# interaktywne, lub użyj klawiszy Klawisze Ctrl + Alt + F.W ten sposób spowoduje otwarcie okna interaktywne, okno Narzędzie uruchomione F# interaktywne sesji.Można również wybrać kilka kod, który chcesz uruchomić interaktywne okno i naciśnij kombinację klawiszy ALT + ENTER.F# interaktywne rozpoczyna się w oknie narzędzia etykietą F# interaktywne.Użycie kombinacji klawiszy, upewnij się, że okno edytora ma fokus.

Czy używasz konsoli lub Visual Studio 2010, pojawi się wiersz polecenia i tłumacza oczekuje wprowadzanych danych.Można wprowadzić kod, tak samo jak w pliku kodu.Aby skompilować i wykonać kod, wprowadź dwa średnikami (;;) do zakończenia linii lub kilka wierszy danych wejściowych.

F# interaktywne próbuje skompilować kod i, jeśli kończy się pomyślnie, wykonuje kod i wydrukuje podpisu typy i wartości, które on skompilowany.Jeśli wystąpią błędy, interpreter drukuje komunikaty o błędach.

Kod wprowadzony w tej samej sesji ma dostęp do wszelkich konstrukcje wprowadzone wcześniej, aby tworzyć programy.Rozległe buforu, w oknie narzędzia pozwala skopiować kod do pliku, jeśli to konieczne.

Po uruchomieniu programu Visual Studio, F# interaktywne działa niezależnie od projektu, tak, na przykład można konstrukcje zdefiniowane w projekcie F# interaktywne, chyba że skopiuj kod funkcji do okna interaktywne.

Dostosowując ustawienia, można kontrolować F# interaktywne argumenty wiersza polecenia (Opcje).Na Narzędzia menu wybierz Opcje..., a następnie rozwiń węzeł F# narzędzia.F# interaktywne opcje są dwa ustawienia, które można zmienić i 64-bitowych F# interaktywne ustawienie, które jest ważne tylko w przypadku, gdy uruchamiasz F# Interactive na komputerze 64-bitowych.To ustawienie określa, czy chcesz uruchomić dedykowany 64-bitowej wersji fsi.exe lub fsianycpu.exe, który używa Architektura maszyny do ustalenia, czy uruchomić proces 32-bitowy lub 64-bitowych.

Wykonywanie skryptów z F#

Skrypty korzystają z rozszerzeniem .fsx lub .fsscript.Zamiast kompilowania kodu źródłowego, a następnie uruchamiając skompilowanym zestawie, można po prostu uruchomić fsi.exe i określ nazwę pliku skryptu F# kodu źródłowego oraz F# interaktywne odczytuje kod i jest wykonywany w czasie rzeczywistym.

Różnice między środowiskach interaktywne, skryptów i skompilowanych

Kiedy są kompilowania kodu w F# interaktywne, czy są uruchomione interakcyjnie lub uruchamianie skryptów, symbol INTERACTIVE jest zdefiniowany.Kiedy są kompilacji kodu kompilator symbol COMPILED jest zdefiniowany.W ten sposób Jeśli kod musi być różne w trybach skompilowany i interaktywne, aby określić, które użyć można użyć dyrektywy preprocesora dla kompilacji warunkowej.

Niektóre dyrektywy są dostępne, gdy są wykonywanie skryptów w F# interaktywnych, które nie są dostępne, gdy są wykonywane kompilator.W poniższej tabeli zestawiono dyrektyw, które są dostępne podczas korzystania z F# interaktywne.

Dyrektywy

Opis

#help

Wyświetla informacje o dostępnych dyrektyw.

#I

Określa ścieżkę wyszukiwania zgromadzenia w cudzysłów.

#load

Odczytuje plik źródłowy, kompiluje i uruchamia go.

#quit

Kończy F# interaktywne sesji.

#r

Odwołuje się do zestawu.

#time ["on"|"off"]

Przez siebie #time przełącza, czy należy wyświetlać informacje o wydajności.Gdy jest włączona, F# interaktywne środków czasu rzeczywistego, czas Procesora i informacje kolekcji garbage dla każdej sekcji kodu, który jest interpretowany i wykonany.

Podczas określania plików lub ścieżki w F# interaktywne, oczekuje się literał ciągu znaków.Dlatego pliki i ścieżki muszą być ujęte w znaki cudzysłowu i zastosowania zwykłych znaków.Ponadto, można użyć znaku spowodować F# interaktywne interpretować ciąg, który zawiera ścieżki jako ciąg verbatim @.Powoduje to F# interaktywne ignoruje wszelkie znaki escape.

Jeden z różnic między trybem skompilowany i interaktywne sposób dostępu argumentów wiersza polecenia.W trybie skompilowany, użyj GetCommandLineArgs.W skryptach, użyj fsi.CommandLineArgs.

Poniższy kod ilustruje sposób tworzenia funkcji, który czyta argumenty wiersza polecenia w skrypcie i ilustruje też sposób odwołać się za pomocą skryptu innego zestawu.Pierwszy plik kodu MyAssembly.fs, to kod dla zestawu, którego dotyczy odwołanie.Skompiluj ten plik z wiersza polecenia: fsc -a MyAssembly.fs , a następnie wykonać drugi plik jako skrypt z wiersza polecenia: fsi --exec file1.fsx test

// MyAssembly.fs
module MyAssembly
let myFunction x y = x + 2 * y

// file1.fsx
#r "MyAssembly.dll"

printfn "Command line arguments: "

for arg in fsi.CommandLineArgs do
    printfn "%s" arg

printfn "%A" (MyAssembly.myFunction 10 40)

Produkcja jest w następujący sposób:

file1.fsx
test
60

Tematy pokrewne

Tytuł

Opis

F# opcje interaktywne

Zawiera opis składni wiersza polecenia i opcje dla F# Interactive, fsi.exe.

F# interaktywne odwołanie do biblioteki

W tym artykule opisano dostępne funkcje biblioteki podczas wykonywania kodu w F# interaktywne.