in Ծրագրավորում

Ի՞նչ կմտածի մարդը, եթե տեսնի այսպիսի բան

(_,_) <: ((!,_),(_,!))

հետույքի ու ծիծիկների էմոտիկո՞ն ․․․

չէէէէ ։D

Իրականում սա ծրագիր է, գրված է faust ծրագրավորման լեզվով։ Անցյալ երեք օրերը թումոյում սա էինք ուսումնասիրում, եթե ասեմ, որ արդեն տարրական բաներից զատ  լուրջ մի բան կարող եմ այս լեզվով՝ սուտ կլինի, բայց ամեն դեպքում ֆանտաստիկ հետաքրքիր էր։

faust-ը դոմեյն սպեցիֆիկ, ֆունկցիոնալ֊բլոկային լեզու է, նախատեսված է աուդիո ազդակնշանների (ձայնի) մշակման համար։ Վերևի ծրագիը մուտքին ստանում է երկու ձայնային ազդակ և առաջին մուտքի ազդակը տալիս է երկրորդ ելքին,  իսկ երկրորդը՝ առաջին ելքին։ Ծրագրի դիագրամը այսպիսին է։

faust_diagramm_switch_signals

Հաջորդը  էխո ստեղծող ծրագիր է, մտնող ազդակին ավելացնում է արձագանք։ Օգտագործում է delay (հետաձում) և ռեկուրսիա։ Թու’յն ա ։)

echo (d,v) = + ~(@(d) : *(v));
 process = echo(10000,20);

ու իր դիագրամը

faust_diagramm_echo

Հետաքրքիրը այն է, որ այս լեզուն այնքան ֆունկցիոնալ է, որ նույնիսկ փոփոխականներ չունի ։)

Ամեն դեպքում եթե հետաքրքրեց՝

  1. մի քիչ խաղացեք, նայեք ինչեր են անում faust-ով (այս խաղալիքի ցանկցած բլոկ , faust-ով գրված ծրագիր է)
  2. կարդացեք կարճ նկարագրությունը
  3. գրեք ծրագրեր և կոմպիլացրեք առցանց կամ լոկալ կոմիլյատորով
  4. խորացեք

Վերջին մի երկու բան

Սա կարելի է օգտագործել դպրոցում կամ համալասարանում, ալիքների և տատանումների ֆիզիկա բացատրելիս։ Սակայն բարդ մաթեմատիկան ինչ որ մի եղանակով պետք է մանկավարժորեն պարզեցնել։ Նաև կարելի է խաղալ, ստեղծելով էլեկտրոնային երաժշտություն, էլեկտրոնային էֆֆեկտներ։ faust-ը գործիք է, որը նոր գործիքներ ստեծելու հնարավորություն է տալիս (յանմ ո՞ր մի ծրագրավորման լեզուն չի  այսպիսին)։

Դբա Լավը։)

ՀԳ։ Մոռացա, այստեղ էլ faust-ին վերաբերող բոլոր հավաքածս հղումներն են։