payamvha/North_RAG huggingface dataset:
شرکت‌های کره‌ای بود. در سال ۱۹۹۱، کارخانه کشتی سازی‌ای که کیم به درخواست حکومت کره خریده بود، پس از ۱۱ سال، به سود رسید. او در طول فعالیت خود در دوو، شرکت‌های ورشکسته بسیاری را خریداری کرد و با تغییر ساختار مدیریتی به سوددهی رساند. شکست و ورشکستگی. کیم در پیِ بحران مالی و ارزی در آسیا و به دنبال مشکلات اعتباری، با بحران در مدیریت و نگهداری شرکتهای تابعه دوو مواجه شد مجبور به فروش ۵۰ درصد از سهام شرکت‌های اصلی دوو گردید. زمانی که او در خارج از کشور زندگی می‌کرد، به دلیل بدهی‌های شرکت دوو به کارکنان و…، مدتی
به دلیل بدهی‌های شرکت دوو به کارکنان و…، مدتی تحت تعقیب پلیس بین‌الملل بود. وی به زودی در چهاردهم ژوئن ۲۰۰۵ پس از بازگشت به کره بازداشت شد؛ برای مشکلات مالی دوو عذرخواهی کرد و تمامی مسئولیت قانونی بدهی‌های دوو را برعهده گرفت. در ماه مه ۲۰۰۶، کیم برای مشکلات مالی، از جمله اختلاس به ده سال زندان محکوم شد. ۲۲ میلیارد دلار از دارایی او مصادره شد و موظف به پرداخت ۱۰میلیون جریمه اضافی شد. کیم در ۳۰ دسامبر ۲۰۰۷، توسط رئیس‌جهور وقت کره، رو مو هیون، مورد عفو قرار گرفت. (رؤسای جمهور کره، طبق یک سنت، برای هر سال
گرفت. (رؤسای جمهور کره، طبق یک سنت، برای هر سال جدید، تعدادی از مجرمین را مورد عفو عمومی قرار می‌دهند) روزنامهٔ "کُریا هِرالد" "()"، که به زبان انگلیسی در سئول منتشر می‌شود در تاریخ ۱۲ دسامبر ۲۰۱۷ در خبری با عنوان «فهرست ۲۱٬۰۰۰ بدهکار مالیاتی اعلام عمومی شد»، نوشت کیم وو چونگ مالیات خود به مبلغ ۳۶٫۹ میلیارد وون کره جنوبی را پرداخت نکرده‌است. پیوند به بیرون. - به انگلیسی
ماست و موسیر (ماستُ موسیر) خوراک اشتها آوری‌ است که با افزودن موسیر به ماست تهیه می‌شود. طرز تهیه. برای تهیه ماست و موسیر باید موسیر تازه یا موسیر خشکِ خیس کرده را ریز یا رنده نمود و با کمی نمک و فلفل و پونه در ماست مخلوط و سرد نمود. نسبت مواد بستگی به سلیقه و سلامت افراد دارد. فواید. "ماست" دارای میکروارگانیسم‌های زنده‌ ارزشمندی‌است که به دفع مخمرهای رایج کمک می‌‌کند و با تولید آب اکسیژنه مانع از رشد استافیلوکوک اورئوس می‌شود. "موسیر" فواید بسیاری دارد، از جمله: تقویت قدرت جنسی، افزایش دفع ادرار،
دارد، از جمله: تقویت قدرت جنسی، افزایش دفع ادرار، التیام‌دهنده و ترمیم‌‌کنندهٔ زخم‌ها، تسکین‌دهندهٔ التهاب طحال و کبد، کاهش سردردهای میگرنی، کمک به سیستم قلبی‌عروقی، کمک به کاهش چربی‌های خون، پیشگیری از تصلب شرایین، تنظیم فشارخون، پیشگیری از انواع سرطان. زیان. زیاده‌روی در مصرف موسیر به دلیل داشتن طبع گرم زیاد باعث ایجاد عارضه می‌گردد. کالری. یک لیوان ماست پرچرب ۱۵۰ کالری، یک لیوان ماست کم‌چرب ۱۱۰ کالری و ۱۰۰ گرم موسیر ۷۰ کالری انرژی دارد. کاربرد. ماست و موسیر چاشنی و خوراکی اشتها‌آور در کنار غذای اصلی
موسیر چاشنی و خوراکی اشتها‌آور در کنار غذای اصلی است. منابع. گروه مجلات همشهری سیمرغ روزنامه جام جم
ارلنگ یک زبان برنامه‌نویسی همه‌منظوره، همروند، دارای زباله جمع‌کن و سامانهٔ زمان‌اجرا است. برای همروندی از مدل اکتور پیروی می‌کند. این زبان توسط شرکت اریکسون برای پشتیبانی و توسعه برنامه‌های توزیع‌شده، تحمل‌پذیر در برابر خطا، بیدرنگ نرم و بدون وقفه طراحی شده‌است. اریکسون برای طراحی نرم افزار های سوییچینگ تلفن قبلا از زبانی به نام استفاده میکرده که این زبان بسیار شبیه Erlang بوده منتهی مشکلاتی داشته که Erlang بطور کامل آنها را رفع کرده. این زبان از تعویض داغ که در آن بدون توقف سامانه، قادر به تغییر کدهای
که در آن بدون توقف سامانه، قادر به تغییر کدهای برنامه هستیم پشتیبانی می‌کند. سیستم زمان اجرا ارلنگ برای طراحی سیستم هایی که نیازمند خصوصیات زیر هستند استفاده میشود (به نوع ماشین مجازی ارلنگ این امکانات را دارد): زبان برنامه‌نویسی ارلنگ برای خواص زیر شناخته می‌شود: ارلنگ در واقع یک زبان اختصاصی در شرکت اریسکون بود که توسط جو آرمسترانگ، رابرت ویردینگ و مایک ویلیامز در سال ۱۹۸۶ توسعه پیدا کرده بود، اما در سال ۱۹۹۸ به عنوان یک زبان متن باز منتشر شد. Erlang/OTP توسط واحد محصول OTP در اریکسون پشتیبانی و نگهداری
توسط واحد محصول OTP در اریکسون پشتیبانی و نگهداری می‌شود. تاریخچه. نام «ارلنگ» توسط Bjarne Däcker که سرپرست آزمایشگاه و تیم طراحی ارلنگ بوده انتخاب شده. این نام از دو جهت قابل ملاحظه و جالب هست ابتدا اینکه از نام یک مهندس و ریاضی دان دانمارکی Agner Krarup Erlang گرفته شده که این فرد در زمینه مخابرات هم فرمولی دارد (Erlang formula) و از طرفی هم از مخفف Ericsson Programming Language گرفته شده.ارلنگ با هدف بهبود و توسعه برنامه‌های کاربردی تلفن طراحی شده‌است. نسخه اولیه ارلنگ در پرولگ اجرا شد و توسط زبان
نسخه اولیه ارلنگ در پرولگ اجرا شد و توسط زبان برنامه‌نویسی مورد استفاده در مبادلات زودتر اریکسون تأثیر پذیرفته بود. در سال ۱۹۸۸ ارلنگ ثابت کرده بود که برای نمونه‌سازی مبادلات تلفنی مناسب است، اما در prolog بسیار آهسته اجرا می‌شد. یک گروه از متخصصان اریکسون تخمین زده بودند که برای استفاده از محصولشان سرعت آن باید ۴۰ بار سریعتر شود بنابراین در سال 1992 شروع به بازنویسی آن با زبان C کردند و ماشین مجازی BEAM متولد شد. نحوه عملکرد ماشین مجازی BEAM ترکیبی از کدهای NATIVE و تفسیر مستقیم برای ایجاد تعادل بین حجم
NATIVE و تفسیر مستقیم برای ایجاد تعادل بین حجم کدها و افزایش عملکرد محیط اجرا است. با توجه به گفته‌های آرمسترانگ، این زبان زمانی از یک محصول آزمایشگاهی به یک محصول واقعی تبدیل شد که در طراحی نسل جدید AXE به AXE-N در سال ۱۹۹۵ استفاده شد با این موفقیت در نتیجه Erlang برای سویچ های شبکه از نوع ATM (Asynchronous Transfer Mode) هم انتحاب شد. در سال ۱۹۹۸ اریکسون از سوئیچ AXD301 اطلاع داد، که شامل بیش از یک میلیون خط از ارلنگ می‌شد و از در دسترس بودن بالای ۹ گزارش داد. مدت کوتاهی پس از آن، سیستم رادیو ارلنگ
گزارش داد. مدت کوتاهی پس از آن، سیستم رادیو ارلنگ استفاده از ارلنگ برای محصول جدید در مصارف خانگی را ممنوع کرد، این اتفاق با استناد به اولویت زبان‌های غیررسمی روی داد. این ممنوعیت باعث شد آرمسترانگ و دیگران شرکت اریکسون را ترک کنند. اجرای متن بازکردن این زبان در انتهای همین سال روی داد. سرانجام با برداشتن این ممنوعیت اریکسون دوباره آرمسترانگ را در سال ۲۰۰۴ استخدام کرد. در سال ۲۰۰۶، پشتیبانی از چند پردازنده‌ای متقارن محلی به سیستم زمان اجرا و ماشین مجازی اضافه شد. جهان بینی ارلنگ. دیدگاه ارلنگ از جهان، از
شد. جهان بینی ارلنگ. دیدگاه ارلنگ از جهان، از زبان جو آرمسترانگ، یکی از سازنده گان ارلنگ که خلاصه‌ای از آن را در پایان‌نامه دکترای خود به شرح زیر آورده: جو آرمسترانگ در سال ۲۰۱۳ در مصاحبه با Rackspace اشاره می‌کند: «اگر جاوا یک بار نوشته شود و همه جا اجرا شود، پس ارلنگ یک بار نوشته می‌شود و همیشه اجرا می‌شود.» استفاده. ارلنگ در حال حاضر توسط شرکت‌ها از جمله سیسکو سیستمز, متا پلتفرمز, نورتل و تی-موبایل استفاده شده‌است. ارلنگ در گره پشتیبانی اریکسون، و 3G , GPRS و شبکه‌های LTE در سرار جهان مورد استفاده قرار
و شبکه‌های LTE در سرار جهان مورد استفاده قرار می‌گیرد. در حقیقت بیشتر ترافیک اینترنت بصورت مستقیم یا غیر مستقیم از طریق ارلنگ مدیریت میشود, هر زمان که از تلفن ثابت یا تلفن همراه و یا اینترنت استفاده میکنیم در حقیقت در حال استفاده از ارلنگ هستیم. مفاهیم کلیدی. در Erlang، فرایندها (processes)، پایش‌ها (monitors) و ناظران (supervisors) مفاهیم مهمی برای ساخت برنامه‌های مقاوم در برابر خطا و قابل مقیاس هستند: فرایندها - فرایندهای Erlang واحدهای اجرای سبک، جداگانه و همزمان هستند. - آنها با استفاده از توابع
و همزمان هستند. - آنها با استفاده از توابع `()spawn` ایجاد می‌شوند و از طریق پیام‌های غیرهمزمان با هم ارتباط برقرار می‌کنند. - فرایندها می‌توانند با استفاده از توابع `register/2` و `whereis/1` تحت نام‌های ثبت شده برای آدرس‌دهی آسان‌تر ثبت شوند. پایش‌ها - پایش‌ها پیوندهای یک‌طرفه بین فرایندها هستند که به یک فرایند امکان می‌دهند فرایند دیگری را پایش کند. - یک پایش با استفاده از `erlang:monitor/2` ایجاد می‌شود و فرایند پایش‌کننده پیام `'DOWN'` دریافت می‌کند اگر فرایند پایش‌شده پایان یابد. - پایش‌ها برای
اگر فرایند پایش‌شده پایان یابد. - پایش‌ها برای فرایندهای خارجی که به وضعیت فرایند دیگری علاقه‌مند هستند اما مسئول مستقیم آن نیستند مفید هستند. ناظران - ناظران فرایندهای ویژه‌ای هستند که مجموعه‌ای از فرایندهای فرزند را پایش و کنترل می‌کنند، که می‌توانند کارگران (workers) یا ناظران دیگر باشند. - ناظران یک استراتژی راه‌اندازی مجدد برای مدیریت شکست‌های فرایندهای فرزند تعریف می‌کنند، مانند one_for_one (فقط فرزند شکست‌خورده را راه‌اندازی مجدد کن)، one_for_all (همه فرزندان را راه‌اندازی مجدد کن) یا rest_for_one
فرزندان را راه‌اندازی مجدد کن) یا rest_for_one (فرزند شکست‌خورده و آنهایی را که پس از آن هستند را راه‌اندازی مجدد کن). - ناظران با استفاده از یک ماژول بازخورد که توابعی مانند `init/1` را صادر می‌کند تعریف می‌شوند تا فرایندهای فرزند و استراتژی راه‌اندازی مجدد را مشخص کنند. - درختان نظارتی (supervision trees) چیدمان سلسله‌مراتبی ناظران و کارگران هستند که یک روش ساختاریافته برای ساخت برنامه‌های مقاوم در برابر خطا فراهم می‌کنند. به طور خلاصه، فرایندها واحدهای اجرای پایه را فراهم می‌کنند، پایش‌ها به فرایندها
اجرای پایه را فراهم می‌کنند، پایش‌ها به فرایندها امکان می‌دهند یکدیگر را زیر نظر بگیرند، و ناظران سلسله‌مراتبی از فرایندها را با سیاست‌های راه‌اندازی مجدد تعریف‌شده هماهنگ می‌کنند. به طور یکپارچه، آنها ساخت برنامه‌های مقاوم Erlang خودترمیم را امکان‌پذیر می‌سازند. نمونه برنامه‌نویسی تابعی. یک تابع ارلنگ که از توابع بازگشتی برای شمارش تا ده استفاده می‌کند: -module(count_to_ten). -export([count_to_ten/0]). count_to_ten() -&gt; do_count(0). do_count(10) -&gt; 10; do_count(N) -&gt; do_count(N + 1). الگوریتم
10; do_count(N) -&gt; do_count(N + 1). الگوریتم اجرای فاکتوریل در ارلنگ: -module(fact). % This is the file 'fact.erl', the module and the filename must match -export([fac/1]). % This exports the function 'fac' of arity 1 (1 parameter, no type, no name) fac(0) -&gt; 1; % If 0, then return 1, otherwise (note the semicolon ; meaning 'else') fac(N) when N&gt; 0, is_integer(N) -&gt; N * fac(N-1). % Recursively determine, then return the result % (note the period . meaning 'endif' or 'function end') %% This
. meaning 'endif' or 'function end') %% This function will crash if anything other than a nonnegative integer is given. %% It illustrates the "Let it crash" philosophy of Erlang. الگوریتم اجرای فیبوناچی در ارلنگ (توجه داشته باشید: این الگوریتم فقط برای نشان دادن نحوه نگارش ارلنگ است و از نظر زمانی بهینه نیست): -module(fibonacci). % This is the file 'fibonacci.erl', the module and the filename must match -export([fib/1]). % This exports the function 'fib' of arity 1 fib(0) -&gt; 0; % If 0, then return 0,
of arity 1 fib(0) -&gt; 0; % If 0, then return 0, otherwise (note the semicolon ; meaning 'else') fib(1) -&gt; 1; % If 1, then return 1, otherwise fib(N) when N&gt; 1 -&gt; fib(N - 1) + fib(N - 2). مرتب‌سازی سریع در ارلنگ، با استفاده از لیست درک مطلب: %% qsort:qsort(List) %% Sort a list of items -module(qsort). % This is the file 'qsort.erl' -export([qsort/1]). % A function 'qsort' with 1 parameter is exported (no type, no name) qsort([]) -&gt; []; % If the list [] is empty, return an empty list (nothing
list [] is empty, return an empty list (nothing to sort) qsort([Pivot|Rest]) -&gt; % Compose recursively a list with 'Front' for all elements that should be before 'Pivot' % then 'Pivot' then 'Back' for all elements that should be after 'Pivot' qsort([Front || Front &lt;- Rest, Front &lt;Pivot]) ++ [Pivot] ++ qsort([Back || Back &lt;- Rest, Back&gt;= Pivot]). در مثال بالا تابع فراخوانی بازگشتی مرتب‌سازی سریع تا زمانی که چیزی برای مرتب‌سازی باقی نمانده باشد ادامه پیدا می‌کند . عبارت [Front || Front &lt;-
ادامه پیدا می‌کند . عبارت [Front || Front &lt;- Rest, Front &lt;Pivot] یک لیست درک است، به این معنی «ساخت یک لیست از عناصر Front به‌طوری‌که Front عضو Rest است، و Front کمتر از Pivot است.» ++ عملگر الحاق لیست است. یک تابع مقایسه می‌توان برای سازه‌های پیچیده‌تر به خاطر خوانایی استفاده می‌شود. کد زیر لیست‌ها را بر اساس طول مرتب می‌کند: % This is file 'listsort.erl' (the compiler is made this way) -module(listsort). % Export 'by_length' with 1 parameter (don't care about the type and name)
1 parameter (don't care about the type and name) -export([by_length/1]). by_length(Lists) -&gt; % Use 'qsort/2' and provides an anonymous function as a parameter qsort(Lists, fun(A,B) -&gt; length(A) &lt;length(B) end). qsort([], _)-&gt; []; % If list is empty, return an empty list (ignore the second parameter) qsort([Pivot|Rest], Smaller) -&gt; % Partition list with 'Smaller' elements in front of 'Pivot' and not-'Smaller' elements % after 'Pivot' and sort the sublists. qsort([X || X &lt;- Rest,
and sort the sublists. qsort([X || X &lt;- Rest, Smaller(X,Pivot)], Smaller) ++ [Pivot] ++ qsort([Y || Y &lt;- Rest, not(Smaller(Y, Pivot))], Smaller). در اینجا، دوباره یک Pivot از اولین پارامتر داده شده به ()qsort گرفته شده‌است و نام لیست rest را Rest قرار داده‌است. توجه داشته باشید که بیان [X || X &lt;- Rest, Smaller(X,Pivot)] تفاوتی با حالت زیر ندارد [Front || Front &lt;- Rest, Front &lt;Pivot] (در مثال قبل) به جز برای استفاده از یک تابع مقایسه‌ای در آخرین بخش، صدا زدن"ساخت یک لیست از عناصر codice_1
آخرین بخش، صدا زدن"ساخت یک لیست از عناصر codice_1 به‌طوری‌که codice_1 یک عضو از codice_3 است، و codice_4 درست می‌باشد." با codice_4 از پیش تعریف شده مانند fun(A,B) -&gt; length(A) &lt;length(B) end توجه داشته باشید تابع بی‌نامی که codice_4 ، در لیست پارامتر تعریف دوم codice_7 هست را می‌توان با نامی که در تابع اشاره شده نامید. انواع داده. Integers. اعداد صحیح به عنوان دنباله‌ای از اعداد اعشاری نوشته شده‌است، به عنوان مثال، ۱۲، ۱۲۳۷۵ و -۲۳٬۴۲۷ اعداد صحیح هستند. علم حساب اعداد صحیح دقیق و تنها محدود به حافظه
علم حساب اعداد صحیح دقیق و تنها محدود به حافظه موجود بر روی دستگاه است. Atoms. اتم‌ها در یک برنامه برای نشان دادن ارزش‌های متمایز استفاده می‌شود. آن‌ها به صورت رشته‌ای از کاراکترهای الفبایی متوالی نوشته می‌شوند، اولین کاراکتر که حروف کوچک است. اتم‌ها می‌توانند شامل هر کاراکتر باشند اگر آن‌ها در نقل قول‌های محصور و یک کنوانسیون فرار وجود داشته باشد که اجازه می‌دهد هر کاراکتر در یک اتم استفاده شود. Floats. عداد ممیز شناور از IEEE 754 بیتی۶۴ استفاده می‌کند. Reference. مراجع نمادهای منحصر به فرد جهانی هستند که
مراجع نمادهای منحصر به فرد جهانی هستند که تنها ویژگی آن‌ها این است که می‌توان آن‌ها را برای برابری مقایسه کرد. نوع داده مرجع در زبان ارلنگ : در ارلنگ، یک مرجع یک عبارت منحصر به فرد است که برای شناسایی یک فرآیند یا منبع خاص در سیستم زمان اجرای ارلنگ ایجاد می‌شود. این منحصر به فرد بودن باعث می‌شود که مراجع را بتوان به طور ایمن در برنامه‌نویسی همزمان استفاده کرد، جایی که چندین فرآیند ممکن است همزمان در حال اجرا باشند. ایجاد مراجع مراجع با فراخوانی تابع درونی make_ref/0 تولید می‌شوند. هر فراخوانی از این تابع
make_ref/0 تولید می‌شوند. هر فراخوانی از این تابع یک مرجع جدید تولید می‌کند که متمایز از همه مراجع دیگری است که در طول اجرای برنامه ایجاد شده‌اند. این امر حیاتی است تا اطمینان حاصل شود که مراجع را می‌توان به طور قابل اعتماد برای ردیابی منابع یا فرآیندها بدون خطر برخورد استفاده کرد. ویژگی‌های مراجع : منحصر به فرد بودن: هر مرجع تضمین می‌شود که در سراسر سیستم ارلنگ منحصر به فرد باشد. این بدان معناست که هیچ دو مرجعی هرگز برابر نخواهند بود، که آنها را برای تمایز بین موجودیت‌های مختلف ایده‌آل می‌کند. ثابت بودن:
بین موجودیت‌های مختلف ایده‌آل می‌کند. ثابت بودن: یک مرجع پس از ایجاد، قابل تغییر نیست. این ثابت بودن یک ویژگی مشترک در زبان‌های برنامه‌نویسی تابعی مانند ارلنگ است. استفاده: مراجع اغلب در سناریوهای مربوط به ارتباطات آسنکرون استفاده می‌شوند، مانند زمانی که پیام‌ها بین فرآیندها ارسال می‌شوند. آنها می‌توانند به عنوان شناسه‌هایی برای پاسخ‌ها یا ردیابی وضعیت عملیات‌ها عمل کنند. Binaries. دودویی دنباله‌ای از بایت است. باینری راه صرفه جویی در فضای ذخیره‌سازی داده‌های دودویی را ارائه می‌دهد. Pids. pid برای شناسایی
دودویی را ارائه می‌دهد. Pids. pid برای شناسایی فرایند کوتاه است. pid توسط ارقام ابتدایی ارلنگ ایجاد می‌شود. Ports. Ports برای برقراری ارتباط با دنیای خارج استفاده می‌شود. پورت‌ها با function-built-in open_port ایجاد می‌شوند. پیام‌ها را می‌توان به پورت‌ها ارسال و دریافت کرد، اما این پیام‌ها باید به اصطلاح «پروتکل پورت» مطابقت داشته باشند. Funs. Funs تابع بسته‌است. Funs توسط عبارات فرم ایجاد می‌شود: Fun(...) -&gt; … end Tuples. Tupels ظروف برای تعداد ثابت از انواع داده ارلنگ هستند. نحو {D1 , D2, … ,Dn} یک
انواع داده ارلنگ هستند. نحو {D1 , D2, … ,Dn} یک تابع را نشان می‌دهد که استدلال آن D1, D2, … ,Dn است. استدلال می‌تواند نوع داده‌های اولیه یا انواع داده‌های ترکیب باشد. هر عنصر یک دوره زمانی می‌تواند در زمان ثابت مشاهده شود. Lists. لیست‌ها ظروف برای تعداد متغیری از انواع داده Erlang هستند. نحو [Dh | Dt] یک لیست را نشان می‌دهد که اولین عنصر آن Dh است و عناصر باقی‌مانده آن Dt است. نحو [] یک لیست خالی را نشان می‌دهد. نحو [D1، D2، ..، Dn] کوتاه است برای [D1 | [D2 | .. | [Dn | []]]]. اولین عنصر از یک لیست در زمان
| .. | [Dn | []]]]. اولین عنصر از یک لیست در زمان ثابت قابل دسترسی است. اولین عنصر از لیست، سر لیست است. باقی‌مانده از یک لیست زمانی که سر آن حذف شده‌است، دم لیست است. Maps. نقشه‌ها دارای تعداد متغیری از ارتباطات کلیدی ارزش هستند. نحو به این صورت # {Key1 =&gt; Value1، …، KeyN =&gt; ValueN} است. Strings. رشته‌ها مابین نقل قول دوتایی نوشته می‌شوند. این یک نحو جالب برای نمایش دنباله‌ای از کدهای اسکی یا لیستی از کارکترها می‌باشد؛ بنابراین، به عنوان مثال، رشته "CAT" به صورت [۹۹٬۹۷٬۱۱۶] کوتاه می‌شود. این
رشته "CAT" به صورت [۹۹٬۹۷٬۱۱۶] کوتاه می‌شود. این پشتیبانی جزئی برای رشته Unicode است. Records. سوابق یک راه مناسب برای ارتباط یک برچسب با هر یک از عناصر در یک تاپل فراهم می‌کند. این موضوع اجازه می‌دهد تا به یک عنصر از یک تاپل با نام و نه با موقعیت اشاره کرد. یک پیش کامپایلر طول می‌کشد؛ رکورد، تعریف و جایگزین آن با مرجع تاپل مناسب شود. بارگذاری کد و ماژول‌های جدید. ارلنگ از بروزرسانی برنامه‌هایی با سطح زبان پویا پشتیبانی می‌کند. برای اجرای این، کد به عنوان یک واحد «ماژول» بارگذاری و مدیریت می‌شود؛ ماژول یک
واحد «ماژول» بارگذاری و مدیریت می‌شود؛ ماژول یک واحد تلفیقی است. سیستم می‌تواند هم‌زمان دو نسخه از یک ماژول را در حافظه نگه دارد و فرایندها می‌توانند هم‌زمان هر یک از کدها را اجرا کنند. به نسخه‌ها با نسخه‌های جدید و قدیمی مراجعه می‌شود. فرایندها تا زمانی که یک تماس خارجی به ماژول آن ایجاد نشود به نسخه جدید تبدیل نمی‌شوند. یک مثال از مکانیزم بارگیری کد: %% A process whose only job is to keep a counter. %% First version -module(counter). -export([start/0, codeswitch/1]). start() -&gt; loop(0). loop(Sum)
codeswitch/1]). start() -&gt; loop(0). loop(Sum) -&gt; receive {increment, Count} -&gt; loop(Sum+Count); {counter, Pid} -&gt; Pid ! {counter, Sum}, loop(Sum); code_switch -&gt; ?MODULE:codeswitch(Sum) % Force the use of 'codeswitch/1' from the latest MODULE version end. codeswitch(Sum) -&gt; loop(Sum). برای نسخه دوم، ما امکان اضافه کردن شمارش به صفر را اضافه می‌کنیم. %% Second version -module(counter). -export([start/0, codeswitch/1]). start() -&gt; loop(0). loop(Sum) -&gt; receive {increment, Count} -&gt;
loop(Sum) -&gt; receive {increment, Count} -&gt; loop(Sum+Count); reset -&gt; loop(0); {counter, Pid} -&gt; Pid ! {counter, Sum}, loop(Sum); code_switch -&gt; ?MODULE:codeswitch(Sum) end. codeswitch(Sum) -&gt; loop(Sum).
اختلال خلقی به نوعی از اختلالات روانی و روانی گفته می‌شود که با تجربه افسردگی یا شیدایی (یا هر دو) تعریف می‌شود که در آن اختلال در خلق و خوی فرد ویژگی اصلی آن است. اختلالات خلقی شامل دو ردهٔ اصلی افسردگی تک‌قطبی و اختلال دوقطبی هستند. اختلالات خلقی به هفت گروه اصل از جمله خلق و خوی غیرعادی بالا، مانند مانیا یا هیپومانیا؛ خلق و خوی افسرده، که شناخته شده‌ترین و بیشتر مورد تحقیق آن اختلال افسردگی اساسی (MDD) است (که به‌طور جایگزین به عنوان افسردگی تک قطبی شناخته می‌شود) و خلق و خوی چرخه ای بین مانیا و افسردگی،
می‌شود) و خلق و خوی چرخه ای بین مانیا و افسردگی، معروف به اختلال دوقطبی (BD) تقسیم می‌شود. چندین نوع فرعی از اختلالات افسردگی یا سندرم‌های روان‌پزشکی نیز وجود دارد که علائم کمتری مانند اختلال دیس‌تایمیک (مشابه MDD، اما طولانی‌تر و پایدارتر، هرچند اغلب خفیف تر) و اختلال سیکلوتایمیک (مشابه اما خفیف تر از BD) دارند. در برخی موارد، بیش از یک اختلال خلقی می‌تواند در یک فرد وجود داشته باشد، مانند اختلال دوقطبی و اختلال افسردگی که به آن چندابتلایی می‌گویند اگر یک اختلال خلقی و اسکیزوفرنی هر دو در فردی وجود داشته
اختلال خلقی و اسکیزوفرنی هر دو در فردی وجود داشته باشد، این اختلال به عنوان اختلال اسکیزوافکتیو شناخته می‌شود. اختلالات خلقی همچنین ممکن است ناشی از مواد باشد یا در پاسخ به یک بیماری رخ دهد. روان‌پزشک انگلیسی هنری مادزلی یک دسته کلی از اختلال عاطفی را پیشنهاد کرد. سپس این اصطلاح با اختلال خلقی جایگزین شد، زیرا اصطلاح دوم به حالت عاطفی زیربنایی یا طولی اشاره دارد، در حالی که اولی به بیان بیرونی مشاهده شده توسط دیگران اشاره دارد. این اختلالات در ICD-10 تحت عنوان «"اختلالات خلقی (عاطفی)"» طبقه‌بندی می‌شوند.
طرح‌های ملی و منطقه‌ای یک دسته از طرح‌های شهرسازی و معماری ایرانی می‌باشند که به سه گروه اصلی تقسیم می‌شوند: طرح جامع سرزمین. طرح جامع سرزمین، طرحی است که شامل استفاده از سرزمین در قالب هدف‌ها و خط مشیهای ملی و اقتصادی از طریق بررسی امکانات و منابع و مراکز جمعیت شهری و روستایی کشور و حدود و توسعه و گسترش شهر‌ها و شهرکهای فعلی و آینده و قطبهای صنعتی و کشاورزی و مراکز جهانگردی و خدماتی بوده و در اجرای برنامه‌های عمرانی بخشهای عمومی و خصوصی ایجاد نظم و هماهنگی نماید. طرح کالبدی ملی. با هدف مکانیابی برای گسترش
نماید. طرح کالبدی ملی. با هدف مکانیابی برای گسترش آینده شهرهای موجود و ایجاد شهر‌ها و شهرک‌های جدید، ‌پیشنهاد شبکه شهری آینده کشور یعنی اندازه شهر‌ها، چگونگی استقرار آن‌ها در پهنه کشور و سلسله مراتب میان شهر‌ها به منظور تسهیل و مدیریت سرزمین و امر خدمت رسانی به مردم و پیشنهاد چارچوب مقررات ساخت و ساز در کاربری‌های مجاز زمین‌های سراسر کشور منابع. درگاه معاونت شهرسازی و معماری وزارت مسکن و شهرسازی
در علوم رایانه بازیافت حافظه یا زباله‌روبی نوعی مدیریت حافظهٔ خودکار است. این حالت خاصی از مدیریت منابع است و منبع محدودی که مدیریت می‌شود، حافظه است. زباله‌روبی تلاشی برای بازیافت قطعات کوچک حافظه و ادغام آن‌ها است که این حافظه‌ها قبلاْ توسط اشیاء به کار گرفته شده‌اند، ولی دیگر مورد نیاز برنامه نیستند. تکنیک بازیافت حافظه توسط جان مک‌کارتی در حدود سال ۱۹۵۹ برای حل مشکلات لیسپ اختراع شده‌است. بازیافت حافظه معمولاْ به عنوان جنبهٔ مخالف مدیریت دستی حافظه بیان می‌شود که در آن آزادسازی هر شی از حافظه به صورت
می‌شود که در آن آزادسازی هر شی از حافظه به صورت دستی انجام و توسط برنامه‌نویس مشخص می‌شود. مانند سایر تکنیک‌های مدیریت حافظه، بازیافت حافظه میزان قابل توجهی از زمان کل اجرای یک برنامه را شامل می‌شود، در نتیجه می‌تواند تأثیر قابل توجهی روی کارایی برنامه داشته باشد. با استفاده از یک پیاده‌سازی مناسب، حافظهٔ کافی و با توجه به کاربرد، بازیافت حافظه می‌تواند سریع‌تر از مدیریت دستی حافظه باشد. درحالی که مدیریت دستی حافظه در گذشته با استفاده از الگوریتم‌های غیر بهینهٔ پاک‌سازی حافظه، یک راه حل بوده‌است. همچنین
بهینهٔ پاک‌سازی حافظه، یک راه حل بوده‌است. همچنین منابع خاص دیگری به غیر از حافظه مانند سوکت‌های شبکه، پایگاه‌های داده و فایل‌ها به‌طور معمول با تکنیک زباله‌روبی مدیریت نمی‌شوند. روش‌هایی که برای مدیریت چنین منابعی استفاده می‌شود، به خصوص مخرب‌ها، ممکن است برای مدیریت حافظه کافی باشند و نیازی به استفاده از روش زباله روبی نباشد. اصول بازیافت حافظه. اصول ابتدایی زباله‌روبی حاکی از این است که در یک برنامه، اشیایی را که در آینده قابل دسترسی نیستند، پیدا کرده و حافظهٔ تخصیص داده شده به آن‌ها را آزاد کنیم.
و حافظهٔ تخصیص داده شده به آن‌ها را آزاد کنیم. بسیاری از زبان‌های برنامه‌نویسی به روش زباله‌روبی نیاز دارند، چه به عنوان بخشی از خصوصیات زبان برنامه‌نویسی (مانند جاوا، سی شارپ، گو، دی و بسیاری از زبان‌های اسکریپت‌نویسی) و چه به صورت مؤثر برای پیاده‌سازی‌های عملی مانند زبان صوری حساب لاندا. به چنین زبان‌هایی، زبان‌های زباله‌روبی می‌گویند. سایر زبان‌ها به گونه‌ای طراحی شده‌اند که مدیریت حافظهٔ آن‌ها به صورت دستی انجام می‌شود، اما پیاده‌سازی زباله‌روبی هم دارند مانند C و ++C. برخی از زبان‌ها مانند Ada،
دارند مانند C و ++C. برخی از زبان‌ها مانند Ada، Modula-3 و C++/CLI هر دو قابلیت آزادسازی دستی حافظه و زباله‌روبی را دارند و از دو هرم جداگانه برای نگهداری اشیائی که با زباله‌روب حذف می‌شوند و اشیائی که به صورت دستی آزاد می‌شوند؛ استفاده می‌کنند. مزایا. بازیافت حافظه باعث می‌شود تا برنامه‌نویس دخالتی در مدیریت حافظه نداشته باشد، در نتیجه مشکلات برنامه‌نویسی زیر دیگر رخ نخواهند داد: معایب. بازیافت حافظه معایبی مانند مصرف منابع اضافی، تأثیر بر عملکرد، ناسازگاری با مدیریت منابع دستی و توقف در اجرای برنامه
با مدیریت منابع دستی و توقف در اجرای برنامه دارد. در فرایند زباله‌روبی منابع محاسباتی به منظور تصمیم‌گیری برای اینکه کدام حافظه‌ها باید حذف شوند، مصرف می‌شوند. هرچند ممکن است برنامه‌نویس از این اطلاعات مطلع باشد. درصورت مدیریت نکردن طول عمر اشیاء به صورت دستی در یک برنامه، ممکن است سربار محاسبات برای انجام فعالیت‌های زباله روبی منجر به کاهش عملکرد شود. مقاله‌ای کارشناسی شده این نتیجه را بیان می‌کند که بازیافت حافظه به حافظه‌ای معادل پنج برابر حالت عادی نیاز دارد تا به این سربار غلبه کند و عملکرد آن به نسبت
دارد تا به این سربار غلبه کند و عملکرد آن به نسبت سرعت مدیریت حافظه، آشکار می‌باشد. تعامل با اثرات سلسله مراتب حافظه می‌تواند این سربار محاسبات را در شرایطی که پیش‌بینی یا تشخیص آزادسازی حافظه در آزمایش‌های معمول سخت است، غیرقابل تحمل کند. به عنوان مثال شرکت اپل، زباله روب را با وجود تمام ویژگی‌های مطلوب آن به دلیل تأثیرات بر عملکرد سیستم، برای سیستم‌عامل آی‌اواس نپذیرفت. زمان دقیقی که یک زباله از حافظه حذف می‌شود به دلیل توقف‌های کوتاهی که برای جابه‌جایی یا آزاد کردن حافظه انجام می‌شود، قابل پیش‌بینی
یا آزاد کردن حافظه انجام می‌شود، قابل پیش‌بینی نیست. زباله‌روب‌های افزایشی، هم‌زمانی و زمان واقعی با روش‌های متفاوتی به مشکلاتی از قبیل توقف‌ها در هنگام اجرای برنامه‌های :رایانش بی‌درنگ، پردازش تراکنش‌ها و برنامه‌های تعاملی رسیدگی می‌کنند. در پیاده‌سازی زباله‌روب‌های امروزی سعی شده‌است که این توقف‌ها را با روش به حداکثر رساندن کارهایی که در پس زمینه اجرا می‌شوند، به حداقل برسانند. برای مثال با علامت‌گذاری نمونه‌های دست نیافتنی زباله هنگامی که برنامه در حال اجرا است، این کار صورت می‌گیرد. زباله‌روب‌های غیر