prompt:
Translate the following text from en to ar:
24.1 [code/2pc.hny] Two Phase Commit protocol: code for banks . . . . . . . . . . . . . . 150

completion: 24.1 [code/2pc.hny] بروتوكول الالتزام على مرحلتين: كود للبنوك . . . . . . . . . . . . . . 150

source_lang: en

target_lang: ar

domain: technical

complexity: standard


prompt:
Translate the following text from en to ar:
Harmony is a concurrent programming and specification language with a model checker.

completion: هارموني هي لغة برمجة ومواصفات متزامنة مع مدقق نموذج.


prompt:
Translate the following text from en to ar:
Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) at http://creativecommons.org/licenses/by-nc-sa/4.0.

completion: يُسمح بنسخ هذه الوثيقة وتوزيعها و/أو تعديلها بموجب شروط المشاع الإبداعي نسبة المصنف - غير تجاري - مشاركة بالمثل 4.0 دولي (CC BY-NC-SA 4.0) على http://creativecommons.org/licenses/by-nc-sa/4.0.


prompt:
Translate the following text from en to ar:
1 Contents 1 On Concurrent Programming9 2 Hello World!13 3 The Problems with Concurrent Programming19

completion: 1 المحتويات 1 حول البرمجة المتزامنة9 2 مرحبًا بالعالم!13 3 مشاكل البرمجة المتزامنة19

complexity: simple


prompt:
Translate the following text from ar to en:
1 Contents 1 On Concurrent Programming9 2 Hello World!13 3 The Problems with Concurrent Programming19

completion: 1 المحتويات 1 حول البرمجة المتزامنة9 2 مرحبًا بالعالم!13 3 مشاكل البرمجة المتزامنة19

source_lang: ar

target_lang: en


prompt:
Translate the following text from en to ar:
For example, we could insert the following code to enter the critical section: await False This code will surely prevent two or more threads from executing in the critical section at the same time. But it does so by preventinganythread from reaching the critical section.

completion: على سبيل المثال، يمكننا إدراج الكود التالي للدخول إلى القسم الحرج: await False من المؤكد أن هذا الكود سيمنع اثنين أو أكثر من سلاسل العمليات من التنفيذ في القسم الحرج في نفس الوقت. لكنه يفعل ذلك عن طريق منع أي سلسلة عمليات من الوصول إلى القسم الحرج.


prompt:
Translate the following text from en to ar:
In Harmony, any statement can be preceded by theatomicallykeyword. It means that the statement as a whole is to be executed atomically.

completion: في هارموني، يمكن أن يسبق أي عبارة الكلمة المفتاحية atomically. وهذا يعني أن العبارة ككل يجب أن تُنفذ بشكل ذري.


prompt:
Translate the following text from en to ar:
When running multiple threads, each essentially runs an instantiation of the machine, and they do so in parallel. As they execute, their machine instructions are interleaved in unspecified and often unpredictable ways.

completion: عند تشغيل سلاسل رسائل متعددة، يقوم كل منها أساسًا بتشغيل نسخة من الجهاز، ويفعلون ذلك بالتوازي. أثناء التنفيذ، تتداخل تعليمات الجهاز الخاصة بهم بطرق غير محددة وغير متوقعة في الغالب.


prompt:
Translate the following text from en to ar:
Harmony programs, and indeed the HVM, manipulate Harmony values. Harmony values are recursively defined: They include booleans (False and True), integers (but not floating point numbers), strings (enclosed by single or double quotes), sets of Harmony values, lists of Harmony values, dictionaries that map Harmony values to other Harmony values.

completion: برامج Harmony، وبالفعل HVM، تتلاعب بقيم Harmony. يتم تعريف قيم Harmony بشكل متكرر: وهي تتضمن قيمًا منطقية (خطأ وصواب)، وأعدادًا صحيحة (ولكن ليس أرقامًا ذات فاصلة عائمة)، وسلاسل (محاطة بعلامات اقتباس مفردة أو مزدوجة)، ومجموعات من قيم Harmony، وقوائم قيم Harmony، وقواميس تربط قيم Harmony بقيم Harmony الأخرى.

complexity: complex


prompt:
Translate the following text from en to ar:
The problem is that we would like make sure that, when the count variable is being updated, no other thread is trying to do the same thing.

completion: مسألة هي أننا نود التأكد من أنه عندما يتم تحديث متغير العد، لا يحاول أي مؤشر ترابط آخر فعل الشيء نفسه.


prompt:
Translate the following text from ar to en:
عند تشغيل سلاسل رسائل متعددة، يقوم كل منها أساسًا بتشغيل نسخة من الجهاز، ويفعلون ذلك بالتوازي. أثناء التنفيذ، تتداخل تعليمات الجهاز الخاصة بهم بطرق غير محددة وغير متوقعة في الغالب.

completion: When running multiple threads, each essentially runs an instantiation of the machine, and they do so in parallel. As they execute, their machine instructions are interleaved in unspecified and often unpredictable ways.


prompt:
Translate the following text from ar to en:
برامج Harmony، وبالفعل HVM، تتلاعب بقيم Harmony. يتم تعريف قيم Harmony بشكل متكرر: وهي تتضمن قيمًا منطقية (خطأ وصواب)، وأعدادًا صحيحة (ولكن ليس أرقامًا ذات فاصلة عائمة)، وسلاسل (محاطة بعلامات اقتباس مفردة أو مزدوجة)، ومجموعات من قيم Harmony، وقوائم قيم Harmony، وقواميس تربط قيم Harmony بقيم Harmony الأخرى.

completion: Harmony programs, and indeed the HVM, manipulate Harmony values. Harmony values are recursively defined: They include booleans (False and True), integers (but not floating point numbers), strings (enclosed by single or double quotes), sets of Harmony values, lists of Harmony values, dictionaries that map Harmony values to other Harmony values.


prompt:
Translate the following text from ar to en:
مسألة هي أننا نود التأكد من أنه عندما يتم تحديث متغير العد، لا يحاول أي مؤشر ترابط آخر فعل الشيء نفسه.

completion: The problem is that we would like make sure that, when the count variable is being updated, no other thread is trying to do the same thing.


prompt:
Translate the following text from en to ar:
The implementation uses separate locks for the head and the tail, allowing aputand aget operation to proceed concurrently.

completion: يستخدم التنفيذ أقفالًا منفصلة للرأس والذيل، مما يسمح بتنفيذ عمليتي put و get في وقت واحد.


prompt:
Translate the following text from en to ar:
race in which T1 was trying to lockpool[0].lock(which contained the node with the value 1) while T3 was freeing that very same node, and T1 lost the race.

completion: في سباق كان فيه T1 يحاول قفل lockpool[0].lock (الذي يحتوي على العقدة ذات القيمة 1) بينما كان T3 يحرر نفس العقدة، وخسر T1 السباق.


prompt:
Translate the following text from en to ar:
Imagine five philosopers sitting around a table, each with a plate of food in front of them and a fork between every two plates. Each philosopher requires two forks to eat.

completion: تخيل خمسة فلاسفة يجلسون حول طاولة، كل منهم لديه طبق طعام أمامه وشوكة بين كل طبقين. يحتاج كل فيلسوف إلى شوكتين للأكل.


prompt:
Translate the following text from ar to en:
في حالة الفلاسفة، يمكنهم منع الجمود عن طريق التقاط الشوكة ذات الرقم الأقل دائمًا قبل الشوكة ذات الرقم الأعلى، على هذا النحو:

completion: In the case of the philosophers, they could prevent deadlock by always picking up the lower numbered fork before the higher numbered fork, like so:


prompt:
Translate the following text from en to ar:
The file service implementation will use a collection of worker threads synchronizing using both ordinary locks and reader/writer locks.

completion: ستستخدم عملية تنفيذ خدمة الملفات مجموعة من سلاسل العمل المتزامنة باستخدام كل من الأقفال العادية وأقفال القارئ/الكاتب.


prompt:
Translate the following text from ar to en:
في نظام ملفات يونكس، يتم تقسيم القرص إلى ثلاثة أجزاء:

completion: In a Unix file system, the disk is subdivided into three parts:


prompt:
Translate the following text from en to ar:
The Alternating Bit Protocol (Figure 22.1) is suitable for our purposes. We assume that there are two unreliable network channels: one from Alice to Bob and one from Bob to Alice.

completion: بروتوكول البت البديل (الشكل 22.1) مناسب لأغراضنا. نفترض وجود قناتين شبكتين غير موثوقتين: واحدة من أليس إلى بوب وأخرى من بوب إلى أليس.


prompt:
Translate the following text from en to ar:
The consensus problem is impossible to solve in the face of processor failures and without making assumptions about how long it takes to send and receive a message [FLP85].

completion: من المستحيل حل مشكلة الإجماع في مواجهة أعطال المعالج ودون افتراضات حول المدة التي يستغرقها إرسال واستقبال رسالة [FLP85].


prompt:
Translate the following text from en to ar:
The Needham-Schroeder protocol [NS78] is a security protocol in which two parties authenticate one another by exchanging large and recently created random numbers callednoncesthat nobody else should be able to read.

completion: بروتوكول نيدهام-شرودر [NS78] هو بروتوكول أمان يتحقق فيه طرفان من هوية بعضهما البعض عن طريق تبادل أرقام عشوائية كبيرة تم إنشاؤها مؤخرًا تسمى "نونس" والتي لا ينبغي لأي شخص آخر أن يكون قادرًا على قراءتها.


prompt:
Translate the following text from en to ar:
The Harmony compiler, in order to stay true to the Harmony source program, does not do much in the way of optimizations.

completion: من أجل البقاء وفياً لبرنامج مصدر Harmony ، لا يفعل مُجمِّع Harmony الكثير في طريق التحسينات.


prompt:
Translate the following text from en to ar:
The Split Binary Semaphore (SBS) approach is a general technique for implementing conditional waiting. SBS was originally proposed by Tony Hoare and popularized by Edsger Dijkstra [Dij79].

completion: نهج التقسيم الثنائي للسيمفور (SBS) هو أسلوب عام لتنفيذ الانتظار الشرطي. اقترح توني هور في الأصل SBS وعممه إدجر ديكسترا [Dij79].


prompt:
Translate the following text from ar to en:
एक स्प्लिट बाइनरी सेमाफोर (एसबीएस) दृष्टिकोण सशर्त प्रतीक्षा को लागू करने के लिए एक सामान्य तकनीक है। एसबीएस को मूल रूप से टोनी होरे द्वारा प्रस्तावित किया गया था और एडगर डिज्क्स्ट्रा [Dij79] द्वारा लोकप्रिय बनाया गया था।

completion: The Split Binary Semaphore (SBS) approach is a general technique for implementing conditional waiting. SBS was originally proposed by Tony Hoare and popularized by Edsger Dijkstra [Dij79].


prompt:
Translate the following text from en to ar:
Methodwaitincrements the condition’s counter, releases the monitor mutex, blocks while trying to acquire the condition’s semaphore, and upon resuming decrements the counter—in much the same way as we have seen for SBS.

completion: تقوم طريقة الانتظار بزيادة عداد الشرط، وتحرر متبادل المراقبة، وتحظر أثناء محاولة الحصول على إشارة شرط، وعند الاستئناف تقلل العداد - بنفس الطريقة التي رأيناها في SBS.


prompt:
Translate the following text from en to ar:
In Harmony, shared variable Load and Store operations are atomic and have sequential consistency. However, Harmony does check for data races.

completion: في هارموني، تكون عمليات تحميل وتخزين المتغيرات المشتركة ذرية ولها اتساق تسلسلي. ومع ذلك، يتحقق هارموني من سباقات البيانات.


prompt:
Translate the following text from en to ar:
The statement `atomically: S1; S2; ...` evaluates statements S1, S2, ... atomically. This means that the statement runs indivisibly—no other thread can interleave in the atomic statement.

completion: العبارة `atomically: S1; S2; ...` تقوم بتقييم العبارات S1 و S2 و ... بشكل ذري. هذا يعني أن العبارة تعمل بشكل غير قابل للتجزئة - لا يمكن لأي سلسلة رسائل أخرى أن تتداخل في العبارة الذرية.


prompt:
Translate the following text from en to ar:
Harmony supports the shorthand `p→v` for the expression `(!p).v`.

completion: ہارمونی اظہار `(!p).v` کے لیے مختصر شکل `p→v` کی حمایت کرتا ہے۔


prompt:
Translate the following text from en to ar:
The statement `del x` removes variable x from the state. x can be either a local or a shared variable.

completion: بيان `del x` يزيل المتغير x من الحالة. يمكن أن يكون x إما متغيرًا محليًا أو متغيرًا مشتركًا.


prompt:
Translate the following text from en to ar:
The statement `for x in y: S1; S2; ...` iterates over y and executes for each element the statements S1, S2, ....

completion: العبارة `for x in y: S1; S2; ...` تتكرر على y وتنفذ لكل عنصر العبارات S1, S2, ....


prompt:
Translate the following text from en to ar:
The statement `when exists x in y: S1; S2; ...` requires that y evaluates to a set value.

completion: العبارة `when exists x in y: S1; S2; ...` تتطلب أن يتم تقييم y إلى قيمة مجموعة.


prompt:
Translate the following text from en to ar:
The statement `x+= 3` loads x, adds 3, and then stores the results in x. In this case, it is equivalent to `x=x+ 3`.

completion: العبارة `x+= 3` تقوم بتحميل x، وإضافة 3، ثم تخزين النتائج في x. في هذه الحالة، فهي تعادل `x=x+ 3`.


prompt:
Translate the following text from en to ar:
The statement `assert b` evaluates b and reports an error if b is false.

completion: يُقيِّم البيان `assert b` b ويُبلغ عن خطأ إذا كان b خطأ.


prompt:
Translate the following text from en to ar:
The statement `def m a [returns r]: S1; S2: ...` defines a new bytecode address constant m referring to a method that takes an argument a and executes the statements S1, S2, ....

completion: العبارة `def m a [returns r]: S1; S2: ...` تحدد ثابت عنوان رمز بايت جديد m يشير إلى طريقة تأخذ وسيطة a وتنفذ العبارات S1, S2, ....


prompt:
Translate the following text from en to ar:
The statement `let a=b: S1; S2, ...` evaluates b, assigns the result to read-only variable a, and evaluates statements S1, S2, ....

completion: تقوم العبارة `let a=b: S1; S2, ...` بتقييم b، وتعيين النتيجة للمتغير a للقراءة فقط، وتقييم العبارات S1, S2, ....


prompt:
Translate the following text from en to ar:
The statement `x=y= 3` first updates y, then x.

completion: يقوم البيان `x=y= 3` بتحديث y أولاً، ثم x.


prompt:
Translate the following text from en to ar:
The statement `atomically: S1; S2; ...` evaluates statements S1, S2, ... atomically.

completion: العبارة `atomically: S1; S2; ...` تقوم بتقييم العبارات S1, S2, ... بشكل ذري.


prompt:
Translate the following text from en to ar:
The statement `spawn lv` starts a new thread that evaluates lvalue expression lv.

completion: تبدأ العبارة `spawn lv` سلسلة رسائل جديدة تقوم بتقييم تعبير lvalue lv.


prompt:
Translate the following text from en to ar:
The statement `invariant c` declares that boolean expression c is an invariant.

completion: العبارة `invariant c` تعلن أن التعبير المنطقي c هو متغير.


prompt:
Translate the following text from en to ar:
In Python, lists are objects. Thus x and y point to the same list, and the assertion would fail if executed by Python.

completion: في بايثون، القوائم عبارة عن كائنات. وبالتالي يشير x و y إلى نفس القائمة، وسيفشل التأكيد إذا تم تنفيذه بواسطة بايثون.


prompt:
Translate the following text from en to ar:
The expression `const N= 3` introduces a new constant N with the value 3.

completion: يعرض التعبير `const N= 3` ثابتًا جديدًا N بالقيمة 3.


prompt:
Translate the following text from en to ar:
The statement `from x import a,b, ...` imports module x and makes its constants a,b, ... also constants in the current module.

completion: العبارة `from x import a,b, ...` تستورد الوحدة x وتجعل ثوابتها a,b, ... أيضًا ثوابت في الوحدة الحالية.


prompt:
Translate the following text from en to ar:
The statement `if c: S1, S2, ... else: T1; T2; ...` is similar, but executes statements T1, T2, ... if and only if c evaluated to False.

completion: العبارة `if c: S1, S2, ... else: T1; T2; ...` متشابهة، ولكنها تنفذ العبارات T1, T2, ... إذا وفقط إذا تم تقييم c إلى False.


prompt:
Translate the following text from en to ar:
The statement `goc c` starts a thread with context c that has executed a stop or save expression.

completion: تبدأ العبارة `goc c` سلسلة رسائل بالسياق c التي قامت بتنفيذ تعبير إيقاف أو حفظ.


prompt:
Translate the following text from en to ar:
The expression `const N= 3 + 4` assigns value 7 to constant N.

completion: يعين التعبير `const N= 3 + 4` القيمة 7 للثابت N.