Hasil gambar untuk bosque programming


Dalam sebuah buku penelitian yang ditulis oleh Mark Marron dan baru-baru ini diterbitkan oleh Microsoft, Marron memperkenalkan paradigma baru yang melibatkan “mengangkat model untuk pemrosesan berulang menjauh dari tindakan loop tingkat rendah, memperkaya bahasa dengan operator transformasi data aljabar, dan semakin menyederhanakan masalah dari penalaran tentang perilaku program dengan menghapus ikatan insidental dengan substrat komputasi tertentu dan perilaku tak tentu. "Paradigma baru ini disebut pemrograman yang terregulasi dan seharusnya merevolusi pengembangan perangkat lunak dengan cara yang sama seperti pemrograman terstruktur dan tipe data abstrak pada 70-an.

Marron mengklaim bahwa perbaikan ini akan datang dalam bentuk "kualitas perangkat lunak, produktivitas programmer, dan kompiler / perkakas yang lebih baik." Bahasa Bosque kemudian digunakan sebagai contoh bahasa pemrograman yang dibangun dengan model ragu-ragu dalam pikiran, memberikannya kemampuan untuk "[menghilangkan] sumber kesalahan utama, [menyederhanakan] pemahaman dan modifikasi kode, dan [mengubah] banyak tugas penalaran otomatis alih kode menjadi proposisi sepele."



 Apa sih Bosque?

Bosque adalah kombinasi dari TypeScript dalam syntax ML dan JavaScript dalam semantik. Singkatnya, bahasa tersebut akan akrab bagi siapa saja yang pernah membangun aplikasi ujung depan. Bahasa mencakup jenis nominal, tipe struktural, dan tipe kombinasi.


function nsum ( d : I n t , . . . a r g s : L i s t [ I n t ] ) : I n t {
return a r g s . sum ( d e f a u l t =d ) ;
}
function np ( p1 : I n t , p2 : I n t ) : {x : I n t , y : I n t } {
return @{x=p1 , y=p2 } ;
}
/ / c a l l s with e x p l i c i t arguments
var x = nsum ( 0 , 1 , 2 , 3) ;
var a = np ( 1 , 2) ;
var b = np ( p2 =2 , 1) ; / / same as a
var c = np ( p2 =2 , p1 =1) ; / / a l s o same as a
/ / c a l l s with spread arguments
var t = @[1 , 2 , 3 ] ;
var y = nsum ( 0 , . . . t ) ; / / same as x
var r = @{p1 =1 , p2 =2};
var d = np ( . . . r ) ; / / same as a


 Apa yang membedakan Bosque dari JavaScript dan supersetnya adalah kenyataan bahwa ia menyediakan "operasi data aljabar massal khusus dan dukungan terintegrasi untuk tidak ada pemrosesan (atau data opsional) jadi mempermudahkan para programer untuk operasi data aljabar

Operasi aljabar massal di BOSQUE dimulai dengan dukungan untuk pembacaan massal dan pembaruan nilai data. Selain menghilangkan peluang untuk melupakan atau membingungkan suatu bidang, operator BOSQUE membantu memfokuskan kode pada maksud keseluruhan, alih-alih disembunyikan dalam langkah-langkah individual, dan memungkinkan pengembang untuk melakukan penalaran aljabar pada struktur data

contoh

 

@[7 , 9]
(@[7 , 8 ] ) <~(0=5 , 3=1) ; / / @[5 , 8 , none , 1]
(@[7 , 8 ] ) <+(@[5]) ; / / @[7 , 8 , 5]
(@{ f =1 , g =2})@{f , h } ; / / @{f =1 , h=none }
(@{ f =1 , g =2}) <~( f =5 , h =1) ; / / @{f =5 , g =2 , h=1}
(@{ f =1 , g =2}) <+(@{ f =5 , h =1}) ; / / @{f =5 , g =2 , h=1}
Baz@identity ( 1 )@{f , h } ; / / @{f =1 , h=t ru e }
Baz@identity ( 1 )@{f , k } ; / / error
Baz@identity ( 1 ) <~( f =5) ; / / Baz@{f =5 , g =1 , h=t ru e }
Baz@identity ( 1 ) <~(p =5) ; / / error
Baz@identity ( 1 ) <+(@{ f =5}) ; / / Baz@{f =5 , g =1 ,


Atomic constructors

Bahasa ini juga menggunakan konstruktor atom untuk mengatur perkembangan. Ini dicapai dengan menggunakan "inisialisasi bidang langsung untuk membangun nilai entitas (objek)."

contoh

 concept Bar {
f i e l d f : I n t ;
f a c t o r y d e f a u l t ( ) : { f : uI n t } {
return @{f =1};
}
}
e n t i t y Baz p r o v i d e s Bar {
f i e l d g : I n t ;
f i e l d h : Bool = t ru e ;


Example

Seperti apa bentuk Bosque? Berikut adalah contoh untuk loop dalam JavaScript, di mana // menunjukkan komentar satu baris.

//Functor (Bosque) 

var a = List[Int]@{...};
//Pre: true

var b = a.map[Int](fn(x) => x*2);
//Post: List[Int]::eq(fn(x, y) => y == x*2, a, b)
 
 
untuk contoh lebih banyak kalian bisa kunjungi https://github.com/Microsoft/BosqueLanguage
dan informasi terbaru tentang Bosque language 

oke itu informasi saya dapat mengenai Bosque language 

AHHHSIAP BOSQUE!!!!!!!!!!!!!!!!
 


Post a Comment

http://www.hackcuih.com/ akan terus berkembang dan akan membagikan artikel menarik lainnya.

Previous Post Next Post