In object oriented programming, you define objects with "fields" that store data, and "methods" that manipulate those fields. An object oriented program is usually formulated imperatively, defining step by step instructions to complete the calculation.

In functional programming, you write the output mathematically, as a function of the inputs. A functional program is usually formulated in terms of "pure" functions which do not have "side effects" like writing to variables.
ในการเขียนโปรแกรมเชิงวัตถุ คุณกำหนดวัตถุด้วย "ฟิลด์" ที่เก็บข้อมูล และ "วิธีการ" ที่จัดการฟิลด์เหล่านั้น โปรแกรมเชิงวัตถุมักจะได้รับการกำหนดสูตรตามความจำเป็น โดยกำหนดคำแนะนำทีละขั้นตอนเพื่อทำการคำนวณให้เสร็จสิ้น ในการเขียนโปรแกรมเชิงฟังก์ชัน คุณจะเขียนเอาต์พุตทางคณิตศาสตร์เป็นฟังก์ชันของอินพุต โปรแกรมเชิงฟังก์ชันมักจะถูกสร้างในรูปแบบของฟังก์ชัน "บริสุทธิ์" ซึ่งไม่มี "ผลข้างเคียง" เช่น การเขียนลงในตัวแปร
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence