Pertanyaan yang diberi tag «functional-programming»

Pemrograman fungsional adalah paradigma pemrograman yang didasarkan pada membangun abstraksi menggunakan fungsi, menghindari efek samping dan perubahan keadaan. Pemrograman fungsional murni adalah thread-safe.





11
Batalkan lebih awal
Apa cara terbaik untuk menghentikan lipatan lebih awal? Sebagai contoh yang disederhanakan, bayangkan saya ingin menjumlahkan angka dalam sebuah Iterable, tetapi jika saya menemukan sesuatu yang tidak saya harapkan (katakanlah angka ganjil) saya mungkin ingin menghentikannya. Ini adalah perkiraan pertama def sumEvenNumbers(nums: Iterable[Int]): Option[Int] = { nums.foldLeft (Some(0): Option[Int]) { …




5
Menghasilkan permutasi dengan malas
Saya mencari algoritme untuk menghasilkan permutasi satu set sedemikian rupa sehingga saya bisa membuat daftar malas dari mereka di Clojure. yaitu Saya ingin mengulang daftar permutasi di mana setiap permutasi tidak dihitung sampai saya memintanya, dan semua permutasi tidak harus disimpan dalam memori sekaligus. Alternatifnya, saya sedang mencari algoritme di …

2
Apa padanan logika kombinasi dari teori tipe intuitionistic?
Saya baru-baru ini menyelesaikan kursus universitas yang menampilkan Haskell dan Agda (bahasa pemrograman fungsional jenis dependen), dan bertanya-tanya apakah mungkin untuk mengganti kalkulus lambda dengan logika kombinatori. Dengan Haskell ini tampaknya mungkin menggunakan kombinator S dan K, sehingga membuatnya bebas poin. Saya bertanya-tanya apa padanannya untuk Agda. Yaitu, dapatkah seseorang …

3
Apa sebenarnya yang dimaksud dengan "fungsi parsial" dalam pemrograman fungsional?
Menurut pemahaman saya, fungsi parsial adalah fungsi yang kita dapatkan dengan melewatkan lebih sedikit parameter ke fungsi daripada yang diharapkan. Misalnya, jika ini secara langsung valid dengan Python: >>> def add(x,y): ... return x+y ... >>> new_function = add(1) >>> new_function(2) 3 Dalam cuplikan di atas, new_functionadalah fungsi parsial. Namun, …





Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.