Aracılığıyla paylaş


F# Etkileşimli (fsi.exe) Başvurusu

F# Etkileşimli (fsi.exe) konsolda F# kodunu etkileşimli olarak çalıştırmak veya F# betiklerini yürütmek için kullanılır. Diğer bir deyişle, F# etkileşimli F# dili için REPL (Oku, Değerlendir, Yazdır, Döngü) yürütür.

F# ile Etkileşimli Programlama

F# Etkileşimli konsolda veya Visual Studio'da bir pencerede kod yazmak için kullanılır.

Konsoldan F# etkileşimli olarak çalıştırmak için fsi.exe çalıştırın. Kullanılabilir komut satırı seçenekleri ile ilgili bilgi için, bkz. F# Etkileşimli Seçenekleri.

Visual Studio 2010'den F# Etkileşimliyi çalıştırmak için F# Etkileşimli etiketli uygun araç çubuğu düğmesine tıklayabilir veya Ctrl+Alt+F tuşlarını kullanabilirsiniz. Bunu yapmak, F# Etkileşimli oturumunu çalıştıran araç penceresini, etkileşimli pencereyi açar. Aynı zamanda etkileşimli pencerede çalıştırmak istediğiniz bazı kodu da seçebilir ve ALT+ENTER tuş bileşimine basabilirsiniz. F# Etkileşimli, F# Etkileşimli etiketli araç penceresinde başlar. Bu tuş bileşimini kullandığınızda, düzenleyici penceresinde odağa sahip emin olun.

İster konsolu ister Visual Studio 2010'i kullananın, bir komut istemi belirir ve yorumlayıcı girişinizi bekler. Kod dosyasında yaptığınız gibi kodunu girebilirsiniz. Kodu derlemek ve yürütmek için bir satırı sona erdirmek üzere iki noktalı virgül (;;) koyun veya birkaç satırlık giriş girin.

F# etkileşimli kodu derlemeye çalışır ve başarılı olursa, kodu yürütür ve derlediği tür ve değerlerin imzasını yazdırır. Hatalar oluşursa, yorumlayıcı hata iletilerini yazdırır.

Aynı oturumda girilen kod, daha önce girilen herhangi bir yapıya erişebilir, böylece programlar oluşturabilirsiniz. Araç penceresindeki kapsamlı bir arabellek, gerekirse kodu bir dosyaya kopyalamanızı sağlar.

Visual Studio'da F# etkileşimli çalışır, projenizi bağımsız olarak çalıştırdığınızda, bu nedenle, örneğin, projenizde F# etkileşimli kod işlevi için etkileşimli penceresine kopyalamak sürece tanımlanmış yapılar kullanamazsınız.

F# etkileşimli komut satırı değişkenleri (Seçenekler) ayarları düzenleyerek denetleyebilirsiniz. Üzerinde araçları Seç menüsünden **seçenekleri...**ve sonra Araçlar F#. F# etkileşimli seçenekleri değiştirmek iki ayar olan ve 64-bit F# etkileşimli sadece F# etkileşimli 64 bitlik makine üzerinde çalıştırıyorsanız, ilgili ayarı. Bu ayar, fsi.exe veya 32 bit veya 64-bit işlem olarak çalıştırılıp çalıştırılmayacağını belirlemenin makine mimarisi kullanan fsianycpu.exe adanmış 64-bit sürümünü çalıştırmak isteyip istemediğinizi belirler.

F# ile Komut Dosyası

Betikler .fsx veya .fsscript dosya uzantısı kullanır. Kaynak kodunu derleyip ve daha sonra derlenmiş bütünleştirilmiş kodu çalıştırmak yerine, yalnızca fsi.exe'i çalıştırabilir ve F# kaynak kodu betiğinin dosya adını belirtebilirsiniz ve F# etkileşimli kodu okur ve gerçek zamanlı olarak yürütür.

Etkileşimli, Komut Dosyası ve Derlenmiş Ortamlar Arasındaki Farklar

Ne zaman size derleme kodunda F# etkileşimli, etkileşimli olmadan çalışan veya çalışan bir komut dosyası, sembol INTERACTIVE tanımlanır. Ne zaman size derleme sembolü derleyici kodu COMPILED tanımlanır. Bu yüzden, kodun derlenmiş ve etkileşimli modda farklı olması gerekiyorsa, hangisini kullanacağınızı belirlemek üzere koşullu derleme için önişlemci yönergelerini kullanabilirsiniz.

F# derleyicisi yürütürken bulunmayan etkileşimli komut yürütülürken, bazı yönergeleri bulunmaktadır. F# etkileşimli kullanırken kullanılabilir olan yönergeleri aşağıdaki tabloda özetlenmiştir.

Yönergesi

Description

#help

Kullanılabilir yönergeleri hakkında bilgi görüntüler.

#I

Derleme arama yolu tırnak işaretleri içine belirtir.

#load

Kaynak dosyasını okur, onu derler ve çalıştırır.

#quit

F# etkileşimli bir oturumu sonlandırır.

#r

Bir derleme başvuru yapar.

#time ["on"|"off"]

Tek başına, #time performans bilgilerini görüntüleyip görüntülememeyi geçer. Etkinleştirildiğinde, F# etkileşimli yorumlanır ve yürütülen kod her bölüm için çöp toplama bilgileri gerçek zamanlı ve cpu zamanı ölçer.

Dosyaları veya yolları F# etkileşimli belirttiğinizde, bir düz dize bekleniyordu. Bu nedenle, dosya ve yollar tırnak içinde olmalıdır ve her zamanki gibi kaçış karakterlerini uygulayın. Ayrıca, kullanabileceğiniz @ F# harfi harfine bir dize olarak bir yolunu içeren bir dize yorumlamak etkileşimli neden karakteri. Bu F# herhangi bir kaçış karakterlerini yoksay etkileşimli neden olur.

Derlenmiş ve etkileşimli mod arasındaki farklardan biri, komut satırı bağımsız değişkenlerine erişim yolunuzdur. Derlenmiş modda GetCommandLineArgs kullanın. Betiklerde fsi.CommandLineArgs kullanın.

Aşağıdaki kod, bir betikteki komut satırı değişkenlerini okuyan işlevin nasıl oluşturalacağını ve ayrıca betikten nasıl başka bir derleme başvurusu yapılacağını gösterir. İlk kod dosyası MyAssembly.fs, başvurulan derleme kodudur. Bu dosyanın komut satırı derleme: fsc -a MyAssembly.fs ve sonra komut satırı komut dosyası olarak ikinci dosyası yürütme: 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)

Çıktı aşağıdaki gibidir:

file1.fsx
test
60

İlgili Konular

Başlık

Description

F# Etkileşimli Seçenekleri

F# Etkileşimli, fsi.exe için komut satırı sözdizimi ve seçeneklerini açıklar.

F# etkileşimli Kitaplık Başvurusu

F# etkileşimlide kodu yürütürken kullanılan kitaplık işlevlerini tanımlar.