{"guid":"249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","title":"Declarative programming in Rust","subtitle":null,"slug":"rustfest-rome-5-declarative-programming-in-rust","link":"https://c3voc.de","description":"One of the secret ingredients in many successful, big code bases is that they found a good level of abstraction. One helpful technique is to write declarative code: You describe \"what\" you want to do, but don't mix it with the \"how\". While this is not specific to Rust, the language and its ecosystem help us write declarative code. This talk will go over some examples, covering famous crates and APIs as well as more obscure ones, to then dive into ways to use this to your advantage in your own code.\n","original_language":"eng","persons":["Pascal Hertleif"],"tags":["rustfest-rome","5"],"view_count":1158,"promoted":false,"date":"2018-11-24T00:00:00.000+01:00","release_date":"2018-11-25T01:00:00.000+01:00","updated_at":"2026-01-19T16:15:11.948+01:00","length":1964,"duration":1964,"thumb_url":"https://static.media.ccc.de/media/conferences/rustfest/2018-2/5-hd.jpg","poster_url":"https://static.media.ccc.de/media/conferences/rustfest/2018-2/5-hd_preview.jpg","timeline_url":"https://static.media.ccc.de/media/conferences/rustfest/2018-2/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b-timeline.jpg","thumbnails_url":"https://static.media.ccc.de/media/conferences/rustfest/2018-2/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b-thumbnails.vtt","frontend_link":"https://media.ccc.de/v/rustfest-rome-5-declarative-programming-in-rust","url":"https://api.media.ccc.de/public/events/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","conference_title":"Rustfest 2018 Rome","conference_url":"https://api.media.ccc.de/public/conferences/rustfest18rome","related":[{"event_id":3760,"event_guid":"1c75e6a1-e586-4b91-abce-92a4561d0181","weight":7},{"event_id":5638,"event_guid":"bc119064-0b23-443b-82d4-55719d478151","weight":26},{"event_id":6354,"event_guid":"963d743f-195b-4462-9047-7bb6b5e68fc8","weight":74},{"event_id":6355,"event_guid":"3b2b2a8d-2ac3-4977-820e-34e65a349b7a","weight":16},{"event_id":6356,"event_guid":"f8962974-0a5b-4529-b08c-7622588450e7","weight":60},{"event_id":6357,"event_guid":"d834bcae-84cd-467f-b4b0-6e337d8edad8","weight":22},{"event_id":6358,"event_guid":"bc8c2220-646b-4f45-86d9-5b2dd07f920f","weight":45},{"event_id":6359,"event_guid":"54c4d9c4-312c-4ed6-b642-be999b4bf74f","weight":17},{"event_id":6360,"event_guid":"d640c62b-d4c1-4d31-bc97-63e5747f1424","weight":42},{"event_id":6361,"event_guid":"a29e2610-de67-4c7a-a6a8-ad552db8aa25","weight":63},{"event_id":6362,"event_guid":"d86c7136-8c6b-416b-b2fe-94480b2e2ba0","weight":56},{"event_id":6363,"event_guid":"ea4b4671-01cb-46b2-bb27-bb11705b1284","weight":19},{"event_id":6366,"event_guid":"32815e38-392e-55d1-ac88-cba18ce6a739","weight":11},{"event_id":6370,"event_guid":"15cf6e43-dc3a-5126-9fdb-0cf729e2ddcf","weight":13},{"event_id":6371,"event_guid":"491c9d7e-68e5-5439-a824-ee082a4c3ed0","weight":6},{"event_id":6372,"event_guid":"40a4d7ee-e76d-5367-874d-153ea850995e","weight":12},{"event_id":6375,"event_guid":"42542e40-f237-11e8-9af6-7fb90298b852","weight":9},{"event_id":6376,"event_guid":"456fb60c-5ce7-11e8-be47-1fb2912eb895","weight":7}],"recordings":[{"size":135,"length":1964,"mime_type":"video/mp4","language":"eng","filename":"rustfest-rome-5-eng-Declarative_programming_in_Rust_hd.mp4","state":"new","folder":"h264-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2018-11-25T17:12:49.882+01:00","recording_url":"https://cdn.media.ccc.de/events/rustfest/2018-2/h264-hd/rustfest-rome-5-eng-Declarative_programming_in_Rust_hd.mp4","url":"https://api.media.ccc.de/public/recordings/30712","event_url":"https://api.media.ccc.de/public/events/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","conference_url":"https://api.media.ccc.de/public/conferences/rustfest18rome"},{"size":29,"length":1958,"mime_type":"audio/mpeg","language":"eng","filename":"rustfest-rome-5-eng-Declarative_programming_in_Rust_mp3.mp3","state":"new","folder":"mp3","high_quality":false,"width":0,"height":0,"updated_at":"2018-11-25T17:14:59.396+01:00","recording_url":"https://cdn.media.ccc.de/events/rustfest/2018-2/mp3/rustfest-rome-5-eng-Declarative_programming_in_Rust_mp3.mp3","url":"https://api.media.ccc.de/public/recordings/30713","event_url":"https://api.media.ccc.de/public/events/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","conference_url":"https://api.media.ccc.de/public/conferences/rustfest18rome"},{"size":22,"length":1958,"mime_type":"audio/opus","language":"eng","filename":"rustfest-rome-5-eng-Declarative_programming_in_Rust_opus.opus","state":"new","folder":"opus","high_quality":false,"width":0,"height":0,"updated_at":"2018-11-25T17:15:35.238+01:00","recording_url":"https://cdn.media.ccc.de/events/rustfest/2018-2/opus/rustfest-rome-5-eng-Declarative_programming_in_Rust_opus.opus","url":"https://api.media.ccc.de/public/recordings/30714","event_url":"https://api.media.ccc.de/public/events/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","conference_url":"https://api.media.ccc.de/public/conferences/rustfest18rome"},{"size":52,"length":1964,"mime_type":"video/mp4","language":"eng","filename":"rustfest-rome-5-eng-Declarative_programming_in_Rust_sd.mp4","state":"new","folder":"h264-sd","high_quality":false,"width":720,"height":576,"updated_at":"2018-11-25T17:18:35.307+01:00","recording_url":"https://cdn.media.ccc.de/events/rustfest/2018-2/h264-sd/rustfest-rome-5-eng-Declarative_programming_in_Rust_sd.mp4","url":"https://api.media.ccc.de/public/recordings/30715","event_url":"https://api.media.ccc.de/public/events/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","conference_url":"https://api.media.ccc.de/public/conferences/rustfest18rome"},{"size":76,"length":1964,"mime_type":"video/webm","language":"eng","filename":"rustfest-rome-5-eng-Declarative_programming_in_Rust_webm-sd.webm","state":"new","folder":"webm-sd","high_quality":false,"width":720,"height":576,"updated_at":"2018-11-25T17:23:01.794+01:00","recording_url":"https://cdn.media.ccc.de/events/rustfest/2018-2/webm-sd/rustfest-rome-5-eng-Declarative_programming_in_Rust_webm-sd.webm","url":"https://api.media.ccc.de/public/recordings/30716","event_url":"https://api.media.ccc.de/public/events/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","conference_url":"https://api.media.ccc.de/public/conferences/rustfest18rome"},{"size":213,"length":1964,"mime_type":"video/webm","language":"eng","filename":"rustfest-rome-5-eng-Declarative_programming_in_Rust_webm-hd.webm","state":"new","folder":"webm-hd","high_quality":true,"width":1920,"height":1080,"updated_at":"2018-11-25T17:39:40.648+01:00","recording_url":"https://cdn.media.ccc.de/events/rustfest/2018-2/webm-hd/rustfest-rome-5-eng-Declarative_programming_in_Rust_webm-hd.webm","url":"https://api.media.ccc.de/public/recordings/30717","event_url":"https://api.media.ccc.de/public/events/249fbe57-2fe1-4a79-98f3-e4ff160dfb2b","conference_url":"https://api.media.ccc.de/public/conferences/rustfest18rome"}]}