Penyiapan

Memasang .NET SDK 10, memeriksa instalasi F# 10, dan menyiapkan VS Code dengan ekstensi Ionide.

Daftar isi

Lingkungan kerja F# ditopang tiga komponen, yaitu .NET SDK yang memuat compiler dan fsi, terminal untuk menjalankan perintah, dan editor dengan dukungan bahasa. Topik ini memandu pemasangan .NET SDK 10 pada Linux, Windows, dan macOS, pemeriksaan versi melalui perintah terminal, serta penyiapan VS Code dengan ekstensi Ionide. Seluruh keluaran perintah pada topik ini diambil dari pemasangan .NET SDK 10.0.100 untuk F# 10 pada Linux x64.

Memasang .NET SDK 10#

F# tidak dipasang sebagai paket terpisah. Compiler F#, pustaka FSharp.Core, dan alat F# Interactive (fsi) terkandung dalam .NET SDK, sehingga satu pemasangan SDK sudah mencakup semuanya. Pasang SDK lengkap, bukan hanya runtime, karena fsi tidak tersedia pada pemasangan runtime saja. Panduan resmi pemasangan F# merujuk pada dokumentasi pemasangan .NET untuk setiap sistem operasi, dan tiga cara berikut diambil dari dokumentasi tersebut.

Pada Windows, .NET SDK dipasang melalui Windows Package Manager atau melalui penginstal grafis yang diunduh dari halaman unduhan .NET resmi. Perintah winget berikut memasang paket SDK dengan nama yang tercantum pada dokumentasi resmi. Pemasangan dengan winget berlaku untuk seluruh sistem sesuai keterangan dokumentasinya.

bash
# tidak-dijalankan
# jalankan di PowerShell pada Windows sesuai dokumentasi resmi .NET
winget install Microsoft.DotNet.SDK.10

Pada Ubuntu versi yang didukung, paket dotnet-sdk-10.0 tersedia di repositori Ubuntu, sehingga pemasangannya cukup dengan apt. Awalan sudo diperlukan karena pemasangan dilakukan pada tingkat sistem. Distribusi Linux lain mengikuti halaman pemasangan .NET masing-masing, misalnya melalui repositori paket Microsoft atau skrip pemasangan dotnet-install.

bash
# tidak-dijalankan
# jalankan pada Ubuntu versi yang didukung sesuai dokumentasi resmi .NET
sudo apt-get install -y dotnet-sdk-10.0

Pada macOS, cara yang dianjurkan adalah melalui penginstal grafis .NET yang diunduh dari halaman unduhan .NET resmi, dengan pilihan arsitektur Arm64 untuk prosesor Apple dan x64 untuk prosesor Intel, lalu langkah penginstalnya diikuti sampai selesai. Pemasangan manual dengan berkas tar juga didukung untuk kebutuhan otomasi, tetapi variabel PATH perlu diatur sendiri. Setelah pemasangan selesai, buka jendela terminal yang baru agar variabel PATH diambil ulang, kemudian lanjutkan ke pemeriksaan versi.

Memeriksa pemasangan#

Versi SDK yang terpakai diperiksa dengan perintah dotnet --version. Keluarannya berupa satu baris nomor versi. Perintah ini dapat dijalankan dari folder mana pun karena tidak bergantung pada isi folder kerja.

bash
dotnet --version
text Keluaran
10.0.100

Kehadiran F# diperiksa dengan memanggil fsi secara langsung. Pemanggilannya tetap melalui perintah dotnet karena fsi berjalan di atas runtime yang sama. Baris keluarannya memuat dua penanda versi sekaligus.

bash
dotnet fsi --version
text Keluaran
Microsoft (R) F# Interactive version 14.0.100.0 for F# 10.0

Angka 14.0.100 adalah versi alat F# Interactive, sedangkan frasa for F# 10.0 menunjukkan lini masa bahasanya. Selama frasa tersebut muncul, SDK yang terpasang sudah memuat versi bahasa yang digunakan jalur ini. Dua skala nomor ini berdampingan sejak lama pada ekosistem F#, sehingga sebagian alat editor menyebut versi yang berbeda dari perintah di atas untuk hal yang sama.

Apabila beberapa SDK terpasang berdampingan, urutannya memengaruhi jawaban dotnet --version karena perintah itu melaporkan SDK terbaru yang berlaku pada folder kerja. Pemilihan versi per folder dapat dikunci dengan berkas global.json, tetapi mekanisme itu belum diperlukan pada tahap penyiapan. Yang perlu dipastikan hanyalah SDK 10 terlihat oleh kedua perintah pemeriksaan di atas.

Menyiapkan VS Code dengan Ionide#

Dukungan F# pada VS Code disediakan oleh ekstensi Ionide-FSharp yang dikembangkan oleh proyek Ionide, yaitu kelompok alat lintas platform untuk F#. Ekstensi ini berbasis language server F#, sehingga analisis yang ditampilkannya berasal dari compiler yang sama dengan yang dipanggil terminal. Langkah pemasangannya sebagai berikut:

  1. Instal VS Code dari situs resminya, lalu pastikan perintah code dapat dipanggil dari terminal.
  2. Buka panel Extensions melalui menu View, atau dengan menekan Ctrl+Shift+X pada Windows dan Linux serta Cmd+Shift+X pada macOS.
  3. Ketik ionide pada kotak pencarian, pilih Ionide-FSharp terbitan Ionide, lalu klik Install.
  4. Mulai ulang VS Code apabila diminta agar language server dimuat dengan bersih.

Panel Extensions dapat dilewati apabila pemasangan dilakukan melalui command line dengan satu perintah berikut.

bash
# tidak-dijalankan
# butuh perintah code dari VS Code yang ada pada PATH
code --install-extension Ionide.Ionide-fsharp

Setelah terpasang, Ionide menyediakan penyorotan sintaks F#, pelengkapan kode, tooltip tipe dari compiler, peringatan langsung di editor, dan perintah untuk mengirim potongan kode ke fsi. Perintah-perintah tersebut dipanggil dari command palette dengan menekan Ctrl+Shift+P. Dukungan proyek .fsproj juga termasuk di dalamnya, mulai dari memuat solusi hingga menjalankan pengujian.

Sebagai pemeriksaan akhir, buka sebuah berkas .fsx. Penyorotan warna aktif, bilah status menampilkan F#, dan tooltip tipe muncul ketika kursor berhenti di atas sebuah pengenal. Bila tooltip belum muncul saat berkas pertama kali dibuka, tunggu beberapa detik hingga language server selesai menyiapkan analisisnya.

Kesalahan umum#

Dua keluhan yang paling sering muncul pada tahap penyiapan berkaitan dengan variabel PATH dan kelengkapan komponen .NET. Keduanya mudah dibedakan melalui pesan error yang muncul. Perbaikan masing-masing dijelaskan berikut ini.

  • Perintah dotnet tidak dikenali setelah pemasangan. Penyebabnya adalah folder instalasi belum masuk ke variabel PATH, atau jendela terminal belum dimulai ulang setelah penginstal mengubahnya. Perbaikannya dengan membuka terminal baru, atau menambahkan folder instalasi .NET ke PATH secara manual sesuai sistem operasi.
  • dotnet --version berhasil, tetapi dotnet fsi ditolak. Yang terpasang kemungkinan hanya runtime .NET, sedangkan fsi terkandung dalam SDK. Pasang SDK lengkap, kemudian pastikan hasilnya dengan dotnet --list-sdks.

Ringkasan#

  • Compiler F# dan fsi terkandung dalam .NET SDK 10, sehingga satu pemasangan SDK sudah cukup untuk seluruh jalur.
  • dotnet --version menampilkan versi SDK, sedangkan dotnet fsi --version menampilkan versi F# Interactive beserta lini masa bahasanya.
  • Ionide-FSharp menambahkan penyorotan sintaks, pelengkapan, tooltip tipe, dan integrasi fsi pada VS Code.

Referensi#