From Wikipedia, the free encyclopedia
اِشِر یک زبان برنامهنویسی اعلانی است که هر دو مدل برنامهنویسی تابعی و برنامهنویسی منطقی را حمایت میکند. این زبان توسط J.W. Lloyd در اواسط سال ۱۹۹۰ میلادی گسترش یافت. اِشِر بیشتر به عنوان یک تحقیق یا وسیلهای برای آموزش طراحی شدهاست. نمای پایهای از برنامهنویسی به نمایش گذاشته شده توسط اِشِر و زبانهای وابسته به آن این است که یک برنامه نمایشی از یک تئوری در یک سری چارچوبهای منطقی است و اجرای یک برنامه (انجام محاسبات) نتیجهای از آن تئوری است. چارچوب منطقی اِشِر، تئوری سادهای از انواع از آلانزو چرچ (Alonzo Church) است.
این مقاله نیازمند ویکیسازی است. لطفاً با توجه به راهنمای ویرایش و شیوهنامه، محتوای آن را بهبود بخشید. (آوریل ۲۰۲۲) |
اِشِر به ویژه در یک برنامهنویسی تابعی از ورودی/خروجی (I/O) حمایت میکند تا نشاندهندهٔ جهان بیرون به سبک زبان برنامهنویسی هاسکل (Haskell) باشد. یکی از اهداف طراحان اِشِر حمایت از متا-برنامهنویسی بود و بنابراین این زبان به منظور تولید برنامهها حمایت وسیعی شد.
MODULE Lambda.
CONSTRUCT Person/0.
FUNCTION Jane, Mary, John: One -> Person.
FUNCTION Mother : Person * Person -> Boolean.
Mother(x,y) =>
x=Jane & y=Mary.
FUNCTION Wife : Person * Person -> Boolean.
Wife(x,y) =>
x=John & y=Jane.
FUNCTION PrimitiveRel : (Person * Person -> Boolean) -> Boolean.
PrimitiveRel(r) =>
r=Mother \/ r=Wife.
FUNCTION Rel : (Person * Person -> Boolean) -> Boolean.
Rel(r) =>
PrimitiveRel(r) \/
(SOME [r1,r2]
(r = LAMBDA [u] (SOME [z] (r1(Fst(u),z) & r2(z,Snd(u)))) &
PrimitiveRel(r1) & PrimitiveRel(r2))).
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.