16 poin oleh alstjr7375 2022-09-01 | 1 komentar | Bagikan ke WhatsApp
  • Model komputasi baru bernama Interaction Net yang menggabungkan Turing Machine dan Lambda Calculus
  • Menggunakan primitive lazy clone yang mirip dengan metode evaluasi Haskell, alih-alih model peminjaman Rust yang kompleks
  • Karena bersifat lazy, biaya kloning nyaris gratis, dan tidak seperti Haskell, komputasi dapat dibagikan di dalam lambda (sangat menguntungkan untuk pemrosesan paralel)
  • Memilih model memori berbasis SIC(Symmetric Interaction Calculus), sehingga sebagian besar biaya pointer indirection yang dibutuhkan oleh metode yang di Haskell dan lainnya disebut Graph Reduction dapat dihilangkan (menguntungkan saat bisa menemukan yang Optimal)
  • Dengan kata lain, dibanding runtime bahasa umum, ini tidak memiliki GC dan unggul dalam pemrosesan paralel serta Optimal

1 komentar

 
alstjr7375 2022-09-01

Ini implementasi quicksort.
Karena tampaknya banyak menggunakan Lambda Calculus, jadi terlihat mirip dengan Lisp ya..?

// QuickSort  
(QSort p s Nil)          = Empty  
(QSort p s (Cons x Nil)) = (Single x)  
(QSort p s (Cons x xs))  =  
  (Split p s (Cons x xs) Nil Nil)  
  
// Splits list in two partitions  
(Split p s Nil min max) =  
  let s   = (>> s 1)  
  let min = (QSort (- p s) s min)  
  let max = (QSort (+ p s) s max)  
  (Concat min max)  
(Split p s (Cons x xs) min max) =  
  (Place p s (< p x) x xs min max)  
  
// Sorts and sums n random numbers  
(Main n) =  
  let list = (Randoms 1 (* 100000 n))  
  (Sum (QSort Pivot Pivot list))