একটি ICI ফাইল কি?
একটি সাধারণ-উদ্দেশ্য প্রোগ্রামিং ভাষা যা ব্যাখ্যা করা হয় এবং এতে নমনীয় ডেটা টাইপ সহ গতিশীল টাইপিংয়ের মতো বেশ কয়েকটি বৈশিষ্ট্য রয়েছে যা আইসিআই (একটি সংক্ষিপ্ত রূপ নয়) প্রোগ্রামিং ভাষা হিসাবে পরিচিত। এটিকে Perl ভাষার অনুরূপ বলে মনে করা হয়। এই আইসিআই ভাষাতে প্রবাহ নিয়ন্ত্রণ গঠন রয়েছে এবং এতে সি ভাষার কিছু অপারেটরও রয়েছে। এটি একটি বস্তু-ভিত্তিক ভাষা নয় তবে OOP-এর কিছু বৈশিষ্ট্য একটি নির্দিষ্ট উত্তরাধিকার পদ্ধতি দ্বারা অর্জন করা যেতে পারে যা সুপারস্ট্রাকচার নামে পরিচিত। C-এর মতো, এই আইসিআই প্রোগ্রামিং ভাষার একই সিস্টেম ইন্টারফেস এবং বিল্ট-ইন ফাংশনের জন্য একটি স্ট্যান্ডার্ড লাইব্রেরি রয়েছে।
সংক্ষিপ্ত ইতিহাস
1980 এর দশকের শেষের দিকে, এটি টিম লং দ্বারা একটি সাধারণ-উদ্দেশ্য ব্যাখ্যা করা প্রোগ্রামিং ভাষা হিসাবে বিকশিত হয়েছিল। এই ভাষার বেশিরভাগ বৈশিষ্ট্যই সি এর মতো এবং এটি কিছু বিশেষ পদ্ধতি প্রয়োগ করে কিছু বৈশিষ্ট্য অর্জন করতে পারে। এই ভাষাটি একটি পাবলিক ডোমেইন হিসাবে মালিকানাধীন এবং এটি একটি পুনঃবিক্রয়যোগ্য ভাষা হিসাবে উপলব্ধ এবং কেউ উল্লেখ করতে বাধ্য নয় যে তিনি সোর্স কোডটি কোথা থেকে পেয়েছেন৷ আইসিআই-এর ডকুমেন্টেশন ক্যানন ইনফরমেশন সিস্টেম রিসার্চ অস্ট্রেলিয়ার কপিরাইটের অধীনে।
প্রযুক্তিগত স্পেসিফিকেশন
এই ভাষায় ব্যবহৃত দুটি ভিন্ন ডেটা টাইপ আছে। এই দুটি আদিম এবং সমষ্টিগত ডেটা প্রকার। এই উভয় ভাষাতে তাদের পূর্ব-সংজ্ঞায়িত রচনা অনুসারে বিভিন্ন অভিব্যক্তি অন্তর্ভুক্ত করে। বিভিন্ন মডিউল যেমন নেস্টেড এবং সাবরুটিন এই ভাষা দ্বারা সমর্থিত। এর কিছু বৈশিষ্ট্য পার্লের মতো হওয়ায় এটির নিয়মিত অভিব্যক্তিগুলির সাথে কঠোর সংহতকরণ রয়েছে।
সেটগুলি ভিন্নধর্মী এবং নেস্টেড হতে সীমাবদ্ধ। এই সেটগুলি সাধারণভাবে ব্যবহৃত সেট অপারেশন যেমন ইউনিয়ন এবং ইন্টারসেকশন ইত্যাদির জন্য সমর্থন প্রদান করে। এটি বেশিরভাগই বহুজাতিক সংস্থার মালিকানাধীন অ্যাপ্লিকেশনগুলির মূল বাস্তবায়নের জন্য একটি ভাষা হিসাবে ব্যবহৃত হয়।
প্রায় সব ধরনের প্রোগ্রাম এই ভাষায় লেখা যায় এবং বেশিরভাগ নির্দিষ্ট প্রোগ্রাম যা জটিল ডাটা স্ট্রাকচার জড়িত থাকে তা আইসিআই প্রোগ্রামিং ভাষায় লেখা হয়। অ্যাপ্লিকেশনগুলি আইসিআই বাস্তবায়নকে এমনভাবে জড়িত করতে পারে যাতে সেগুলি এতে লেখা উচিত। অ্যাপ্লিকেশনটির কার্যকরী অংশগুলি আইসিআই-এর মডিউল দ্বারা প্রয়োগ করা যেতে পারে। আইসিআই-এর ভাষা কিছুটা সি ভাষার সাথে সাদৃশ্যপূর্ণ কিন্তু আইসিআই-এর ডেটা মডেলটি বেশ উচ্চ স্তরের এবং ডিকশনারি (স্ট্রাকট), সেট, ডায়নামিক অ্যারে, রেগুলার এক্সপ্রেশন এবং (বাস্তব) স্ট্রিং এর মত ভিন্ন।
ICI ফাইল ফরম্যাটের উদাহরণ
printf("Hello world.\n");
s = [set 200, 300, "a string"];
if (s[200])
printf("200 is in the set\n");
if (s[400])
printf("400 is in the set\n");
if (s["a string"])
printf("\"a string\" is in the set\n");
s[200] = 0;
if (s[200])
printf("200 is in the set\n");
forall (colour in [array "red", "green", "blue"])
printf("%s\n", colour);