প্যারালেল কম্পিউটেশন ব্যবহার করে টেক্সটে অক্ষরের ফ্রিকোয়েন্সি গণনা করুন।
প্যারালেলিজম মানে হলো এমন কিছু কাজ প্যারালেলে করা, যেগুলো সিকোয়েন্সিয়ালিও করা যায়। এর একটি কমন উদাহরণ হলো অক্ষরের ফ্রিকোয়েন্সি গণনা করা। টেক্সটের একটি তালিকায় প্রতিটি অক্ষরের মোট ফ্রিকোয়েন্সি হিসাব করতে প্যারালেলিজম ব্যবহার করুন।
অক্ষর গণনা করুন, কেস এবং অক্ষর ছাড়া অন্য সবকিছু উপেক্ষা করে, আর ছোট হাতের অক্ষর থেকে তাদের গণনার একটি ডিকশনারি রিটার্ন করুন। অক্ষরগুলোকে Unicode স্কালার ভ্যালু হিসেবে ধরুন; Unicode নরমালাইজেশন প্রয়োজন নেই।
roc-parallel প্ল্যাটফর্ম থেকে pf.Parallel.map!(items, { workers, task }) ব্যবহার করে একটি পিউর task ফাংশন দিয়ে প্রদত্ত items একাধিক থ্রেডে (যা workers দেয়) সমান্তরালে প্রসেস করুন।
সব আইটেম প্রসেস হয়ে গেলে ফলাফলগুলো ইনপুটের ক্রমেই রিটার্ন করা হয়।
আপনাকে শুধু ParallelLetterFrequency.roc এডিট করতে হবে।
বেশিরভাগ অন্য অনুশীলনীর বিপরীতে এই অনুশীলনীতে এফেক্টফুল ফাংশন ব্যবহার করা হয়।
roc test-এর বদলে roc --opt=speed parallel-letter-frequency-test.roc দিয়ে টেস্টগুলো রান করুন।
Roc কোড যে-কোনো এরর রিটার্ন করলে তা প্ল্যাটফর্ম রিপোর্ট করে, সাধারণের চেয়ে আলাদা একটি ফরম্যাটে।
আপনি bank-account অনুশীলনী-টিও দেখে নিতে পারেন, যেটি কনকারেন্সির আরেকটি দিক ঘুরে দেখে: শেয়ার্ড স্টেটে নিরাপদে আপডেট প্রয়োগ করা।
Exercism-এ সাইন আপ করুন, Roc ট্র্যাকের 139টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।
আমরা কনকারেন্সি ও প্যারালালিজমের মধ্যে পার্থক্য নিয়ে আলোচনা করি এবং JavaScript, Go, Elixir ও Rust-এর মতো ভাষাগুলো যে বিভিন্ন পদ্ধতি অবলম্বন করে তা দেখি।