F# مرجع تبادلي (fsi.exe)

F# متفاعل (fsi.exe) هو used إلى تشغيل F# تعليمات برمجية interactively at the console, أو إلى ينفذ F# برامج نصية. في غير ذلك الكلمات, F# متفاعل executes a REPL (Read, Evaluate, طباعة تكرار حلقي) for the F# اللغة.

متفاعل Programming مع F#‎

F# متفاعل can be used إلى write تعليمات برمجية at the console أو في a نافذة في ‏‫Visual Studio.

إلى تشغيل F# متفاعل من the console, تشغيل fsi.exe. For معلومات حول الأمر خط خيارات متوفر, see F# خيارات تبادلي.

إلى تشغيل F# متفاعل through ‏‫‏‫Visual Studio 2010, you can انقر the appropriate شريط الأدوات button labeled F# متفاعل, أو استخدم the مفاتيح زر'Ctrl'+زر زر Alt+F. عند القيام بهذا يتم فتح إطار متفاعل، نافذة الأدوات تشغيل جلسة عمل ب # "تبادلي". You can also تحديد some تعليمات برمجية that you want إلى تشغيل في the متفاعل نافذة و hit the المفتاح combination زر زر Alt+Enter الزر. F# متفاعل starts في a أداة نافذة labeled F# متفاعل.

ما إذا كنت تستخدم وحدة التحكم أو 2010 Studio Visual Basic، comm و ظهور مطالبة و awaits أن مترجم إدخال الخاص بك. يمكنك إدخال رمز تماما كما تفعل في تعليمة برمجية ملف. إلى ترجمة وتنفيذ تعليمات برمجية، قم بإدخال فاصلة منقوطة الثاني ( ;;) إلى إنهاء سطر أو الأسطر المتعددة للإدخال.

محاولات F# "تبادلي" إلى ترجمة تعليمات برمجية وفي حالة نجاح ذلك، قم بتنفيذ تعليمات برمجية ويطبع التوقيع الرقمي للأنواع وقيم أنه تم تحويلها برمجياً. في حالة حدوث أخطاء، يطبع أن مترجم رسائل الخطأ.

تعليمات برمجية التي تم إدخالها في نفس جلسة عمل بحق الوصول إلى أي بنيات إدخالها سابقا، حيث يمكنك بنية إعداد البرامج. مخزن مؤقت شاملة في نافذة الأداة يسمح لك بنسخ تعليمات برمجية في ملف إذا لزم الأمر.

عند تشغيل في ‏‫Visual Studio, F# تبادلية التشغيل شكل مستقل عن مشروع الخاص بك، لذلك، على سبيل المثال، لا يمكنك استخدم بنيات تعريف في مشروع في F# متفاعل إلا إذا قمت بنسخ التعليمة البرمجية الخاصة بدالة في الإطار الحالي.

البرمجة النصية مع ب #

برامج نصية استخدم ملف ملحق .fsxأو .fsscript. بدلاً من ترجمة تعليمات برمجية المصدر ل و ثم قم بتشغيل تجميع المترجمة فيما بعد، يمكنك فقط تشغيل fsi.exeو تعيين اسم ملف برنامج نصي ب # تعليمات برمجية المصدر و F# متفاعل، يقرأ تعليمات برمجية و ينفذ في توقيت حقيقي.

الفروق بين تبادلي، برمجة نصية و المترجمة البيئات

عند ترجمة تعليمات برمجية في F# "تبادلي"، ما إذا كان يعمل بشكل تبادلي أو قم بتشغيل برنامج نصي، الرمز INTERACTIVEهو المعرفة. عند ترجمة تعليمات برمجية في المترجم، الرمز COMPILEDهو المعرفة. وهكذا، إذا كان يجب أن يكون مختلفاً في تعليمات برمجية المترجمة و أوضاع تبادلي، يمكنك استخدام موجهات معالج أولي للترجمة الشرطية لتحديد الذي تريد استخدامه.

Some directives are متوفر when executing برامج نصية في F# متفاعل that are غير متاح when you are executing the compiler. على سبيل المثال، #rو #load.

#loadيتضمن توجيه مصدر آخر ملف، ولكن قم باستدعاء المترجم ترجمة التعليمات البرمجية بدلاً من تفسير it. You can استخدم the #r directive في interpreted تعليمات برمجية إلى مرجع an تجميع و you can استخدم the #I directive إلى specify an تجميع بحث مسار.

الاختلافات بين الوضع التبادلي والمترجمة هي طريقة الوصول إلى وسيطات سطر الأوامر. في compiled الوضع, استخدم GetCommandLineArgs. في برامج نصية, استخدم fsi.CommandLineArgs.

التعليمة البرمجية التالية يوضح كيفية إنشاء دالة تقوم بقراءة سطر الأوامر الوسائط في برنامج نصي وكما يوضح كيفية مرجع التجميع آخر من البرنامج نصي. التعليمة البرمجية لأول ملف، MyAssembly.fs، هو الرمز تجميع البيانات التي يتم الرجوع إليها. ترجمة هذا ملف باستخدام سطر الأوامر: fsc -a MyAssembly.fsوثم تنفيذ الملف الثاني كبرنامج نصي باستخدام سطر الأوامر: fsi --exec file1.fsx اختبار

// MyAssembly.fs
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)

الإخراج هو كما يلي:

file1.fsx
test
60

مواضيع ذات صلة

Title

الوصف

F# خيارات تبادلي

Describes الأمر خط بناء الجملة و خيارات for the F# متفاعل, fsi.exe.

F# متفاعل المكتبة المرجعية

Describes مكتبة functionality متوفر when executing تعليمات برمجية في F# متفاعل.