বিশেষত সেই সংস্থার জন্য তৈরি প্রোগ্রামিং ভাষা শেখা [বন্ধ]


10

যদি আপনার XY অন্যান্য ভাষা থাকে যা তাদের লাইব্রেরি, যুক্তি ইত্যাদিতে আপনাকে সহায়তা করতে পারে তবে কেন সেই ফার্মের ভিতরেই কেউ তার নিজের ভাষাটি বিকশিত করবেন? আপনার নিজের ভাষা বিকাশের পরিবর্তে অন্য কোনও কিছুর সাথে প্রবাহের সাথে যাওয়া কি এত সহজ নয়?


6
আমাদের বুনোয় প্রচুর "নতুন" ভাষা "পুরানো" ভাষার জন্য ডিজাইন করা লাইব্রেরি ব্যবহার করতে পারে: উদাহরণস্বরূপ: সি ++ সি লিব ব্যবহার করতে পারে, স্কালা কোটলিন এবং অন্যরা জেভিএম-তে চলমান যে কোনও লিবি ব্যবহার করতে পারে, টাইপসক্রিপ্ট জেএস লিব ব্যবহার করতে পারে। সুতরাং একটি নতুন ভাষা থাকা মানেই
লিবিব

3
আপনি কেন স্ট্রেজ কার নিয়ে ড্রেস রেসিংয়ের জন্য ড্র্যাগস্টার তৈরি করবেন?
candied_orange

3
বা সত্যই, কোনও প্রোগ্রামিং ভাষা তৈরির পিছনে কারণগুলি এবং যুক্তিসঙ্গত তদন্ত করুন। কিছু লোক আপনার নিজের ভাষা তৈরি না করা পর্যন্ত আপনার সত্যিকারের কম্পিউটার বিজ্ঞানী হিসাবে বিশ্বাস করে না। আপনি যতক্ষণ না বন্দুকের গুঁড়া তৈরি করেছেন (এবং আপনার বাড়ির একটি ছোট অংশটি উড়িয়ে দিয়েছেন) এটি প্রকৃত রাসায়নিক প্রকৌশলী না হওয়ার সমতুল্য।
candied_orange

4
এরলং এর জন্মও এইভাবে হয়েছিল: যদি আমার ভুল না হয় তবে প্রাথমিকভাবে এরিকসনে অভ্যন্তরীণ ব্যবহারের জন্য এটি তৈরি করা হয়েছিল।
জর্জিও

3
অন্যদিকে, কোনও সংস্থার জন্য বিশেষত ডিজাইন করা একটি ভাষা বোকামি, অন্যদিকে, কোনও সমস্যা ডোমেনের জন্য বিশেষভাবে তৈরি করা একটি ভাষা যা সংস্থাটি হতে পারে তা কখনও কখনও বেশ কার্যকর হতে পারে। আপনি জানেন যে আপনার পূর্ববর্তীটির চেয়ে পূর্ববর্তীটি রয়েছে, যখন ভাষার নকশা এবং আর্কিটেকচারের কারণে সীমাবদ্ধ থাকে যা সমস্যার ডোমেনটিকে সমাধান / প্রকাশ করা আরও সহজ করে তোলে, কখনও কখনও সাধারণ উদ্দেশ্যে প্রোগ্রামিংয়ের জন্য ব্যয় করে ব্যয় করে।
মিথ্যা রায়ান

উত্তর:


25

আপনি যখন বুঝতে পারবেন যে এটি প্রায়শই দীর্ঘ প্রক্রিয়াজাতের পণ্য এবং কেবল "আমরা নতুন ভাষা তৈরি করতে চাই" এমন কেউ বলে না তখন এটি বোঝা অনেক সহজ।

এটি সাধারণত এই ধারণাটি দিয়ে শুরু হয় যে কোনও সাধারণ ডোমেন-নির্দিষ্ট ভাষা ব্যবহার করে কিছু সমস্যা সমাধান করা যেতে পারে। উদ্দেশ্যটি প্রায়শই অ-বিশেষজ্ঞদের এই ভাষাটি ব্যবহার করা উচিত, তাই এটি সহজ এবং প্রায়শই শক্তিশালী টাইপিং এবং মডিউলগুলির মতো বৈশিষ্ট্যের অভাব থাকে।

এ পর্যন্ত সব ঠিকই. তবে, লোকেরা এমন সমস্যাগুলি মারতে থাকে যেগুলি ভাষা দ্বারা সমাধান করা যায় না। সুতরাং এই সমস্যাগুলি সমাধান করতে ধীরে ধীরে নতুন "বৈশিষ্ট্যগুলি" যুক্ত করা হয়েছে। প্রক্রিয়াটি ধীর গতিতে রয়েছে এবং বৈশিষ্ট্যগুলি খুব কম দেখা যায়, যতক্ষণ সমস্যার সমাধান হয় ততক্ষণ এই নতুন বৈশিষ্ট্যগুলি সঠিকভাবে ডিজাইন করার কোনও প্রেরণা নেই।

সময়ের সাথে সাথে, নতুন ভাষা এমন বৈশিষ্ট্যগুলি অর্জন করে যা এটিকে একটি সাধারণ ডোমেন-নির্দিষ্ট ভাষা থেকে জটিল "সাধারণ" উদ্দেশ্যে ভাষায় রূপান্তরিত করে, প্রায়শই দ্বন্দ্বপূর্ণ, বিভ্রান্তিকর শব্দার্থক শব্দ এবং কঠোরভাবে অনুসরণ করে বাক্য গঠন নিয়ম ব্যবহার করে।

এবং লোকেরা যখন বুঝতে পারে যে তারা এ জাতীয় বিশাল জন্তুটি তৈরি করেছে, ইতিমধ্যে এটি হত্যা করতে এবং সঠিকভাবে নকশা করা ভাষার সাথে এটি প্রতিস্থাপন করতে খুব দেরি হয়ে গেছে।

কয়েকটি ভাষা রয়েছে যা এর মতো বিবর্তিত হয়েছে যা নির্দিষ্ট সংস্থাগুলির কাশি জাভাস্ক্রিপ্ট কাশি পিএইচপি কাশি দ্বারা আবদ্ধ নয় ।


10
দুর্দান্ত উত্তর, এবং জাভাস্ক্রিপ্টের সমস্যা থাকলেও আমি পিএইচপি-র মতো একই বাক্যে রাখা ঠিক মনে করি না। এটি বলার মতো, "আমাদের আশেপাশের বিল এবং টেডকে লাথি মারতে হবে, তারা অপরাধী!" তবে, বিল (জাভাস্ক্রিপ্ট) একজন জয়ওয়ালার এবং টেড (পিএইচপি) একটি সিরিয়াল কিলার।
দ্যাটিক্যাটহিস্পেরার 14'27

12
@ চ্যাটহিস্পের সাথে আমি একমত নই জাভাস্ক্রিপ্ট পিএইচপি এর মতোই খারাপ, বা আরও খারাপ। কারণ আপনি জাভাস্ক্রিপ্ট ব্যবহার করতে (বা এর মধ্যে স্থানান্তরিত) থাকতে পারেন, যখন পিএইচপি নিরাপদে উপেক্ষা করা যায়।
ইওফোরিক

2
এটি একটি বেশিরভাগ বৈধ পয়েন্ট।
দ্যাটিক্যাটহিস্পেরার

1
@ ইউফোরিক আসুন আমরা WASM এর জন্য অপেক্ষা করি , সম্ভবত দৃশ্যটি তখন বদলে যাবে ...
ক্রলটান

WASM- এর জন্য @ ক্রোল্টন +1!
ক্রেগআর 8806

15

আপনার নিজের ভাষা বিকাশের পরিবর্তে অন্য কোনও কিছুর সাথে প্রবাহের সাথে যাওয়া কি এত সহজ নয়?

অবশ্যই, তবে এটি একটি অযৌক্তিক পরিণতিটি অনুসরণ করতে, কেউ যদি নতুন ভাষা বিকাশ না করে তবে আমরা সবাই সমাবেশে সমস্ত কিছু লিখতে চাই।

কখনও কখনও কোন প্রবাহ থাকে না। নতুন ভাষার অস্তিত্ব ঘটে কারণ কারও স্ক্র্যাচ করতে চুলকানির সৃষ্টি হয়, তা সে ভাষা শখের লোক কিনা, যা কেবল নতুন কিছুর উদ্ভাবন করতে চায় বা ইতিমধ্যে যা আছে তার দ্বারা প্রয়োজনহীন কোনও সংস্থাকেই আবিষ্কার করতে চায়।

১৯৫৩ সালে জন ব্যাকাস আইবিএম ম্যাথমেটিক্যাল ফর্মুলা ট্রান্সলেটিং সিস্টেমের প্রস্তাব দেওয়ার সময় ঠিক এটি ঘটেছিল । তিনি বৈজ্ঞানিক ব্যবহারকারীদের পক্ষে অ্যাসেমব্লিতে লেখার চেয়ে গাণিতিক সূত্র নির্দিষ্ট করার সহজ উপায় চেয়েছিলেন। মালিকানাধীন পণ্যটি প্রথম প্রোগ্রামিং ভাষায় পরিণত হয়েছিল যা সমাবেশ ছিল না, এবং আপনি এটি ফোর্টরান হিসাবে জানেন।

ফোর্টরান যেখানে প্রথম সেই পথে গিয়েছিল, এর্লং এর পোস্টার চাইল্ড। এরিকসন তার টেলিফোন সুইচগুলির জন্য সফ্টওয়্যার তৈরি করার উপায়টি উন্নত করতে চেয়েছিল এবং প্রোটোটাইপিংয়ের জন্য একটি ভাষা আবিষ্কার করেছিল যা তাদের প্রয়োজনীয় বৈশিষ্ট্যগুলির সাথে নির্দিষ্ট করে। আমি যখন এটি প্রথম সন্ধান করেছি, তখন আমার গ্রহণযোগ্যতাটি হ'ল এটি সমাধান করার জন্য সত্যিকারের সমস্যাযুক্ত লোকেরা এটি বিকশিত হয়েছিল যা 1986-এ পাওয়া অন্য কোনও ভাষার দ্বারা ভালভাবে পরিবেশন করা সম্ভব হত না Er এরলং আপনার মতো মালিকানাধীন, অভ্যন্তরীণ পণ্য হিসাবে রয়ে গেল সহকর্মী এক দশকেরও বেশি পরে এটি উন্মুক্ত না হওয়া পর্যন্ত মুখোমুখি হয়েছিল এবং এখন এটি মূলধারার ভাষা।

গো এবং স্কেলা উভয়ই জিনিসগুলির দুর্দান্ত স্কিমের তুলনামূলকভাবে অল্প বয়স্ক ভাষা এবং এটি আপনার সম্পূর্ণ সহকর্মীর সংস্থায় ব্যবহৃত ভাষা উভয়কেই পূর্বাভাস দেওয়া সম্ভব। তার যা করা দরকার তা হ'ল তার ইতিহাস সম্পর্কে জিজ্ঞাসা করা, কেন এটি অস্তিত্ব নিয়ে এসেছিল এবং কেন এটি ব্যবহার অব্যাহত রয়েছে।

আমি ২০০৩ থেকে ২০১৩ সালের দশকটি এমন একটি সংস্থার হয়ে কাজ করেছি যা একটি শিল্প-নির্দিষ্ট পরিবেশের ব্যাপক ব্যবহার করেছিল যার মধ্যে নিজস্ব ভাষা অন্তর্ভুক্ত রয়েছে যা এর দশকের দশকের শেষের দিকে রয়েছে। যদিও কিছু নতুন ভাষাগুলি আরও উপযুক্ত প্রতিস্থাপন হতে পারে (এবং তাদের জন্য হুকগুলি সময়ের সাথে গ্রাফ করা হয়েছিল), সেই শিল্পটির যথেষ্ট পরিমাণে বিনিয়োগ ছিল এবং ভাল প্রমাণিত কোডের একটি বিশাল সংস্থান ছিল যে কেবল একটি ভাল ব্যবসায়ের ক্ষেত্রে ছিল না While অন্য কিছু পরিবর্তন করতে।


-1

আমি এটি আগেও দেখেছি। এটি কখনই ভাল কাজ করে না। কিছু লোকের "এখানে উদ্ভাবিত নয়" জটিল রয়েছে। এটি সাধারণত কোনও সংস্থাকে চক্রটি পুনর্নির্মাণের চারদিকে চালিত করে তোলে।

চিন্তা করুন. এই নতুন ভাষা সম্ভবত সব সময় বিরতি। একটি পার্সার, সংকলক, ভিএম, লিংকারের মধ্যে যাই হোক না কেন ... এখন হাজার হাজার বাগ রয়েছে যা লোকেদের সাথে এলোমেলো সমস্যাগুলি ডিবাগিংয়ের সাথে ঘন্টা নষ্ট করবে। তারা যা ভাবেন সেগুলির জন্য অন্যান্য ভাষাগুলির না থাকা দরকার।

সি / সি ++ অপারেটিং সিস্টেমগুলি লিখতে ব্যবহৃত হয়, আপনি জানেন যে এগুলি সমস্ত। এবং তবুও কেউ ভেবেছিল তাদের আলাদা কিছু দরকার।


7
সম্ভবত আপনি কোটলিনকে কখনও দেখেন নি। বা জাভাস্ক্রিপ্ট বা সি #, এই বিষয়ে। ফগ ক্রিক সফটওয়্যার তাদের নিজস্ব প্রোগ্রামিং ভাষাটি ওয়াসাবি (ভিবি ভিত্তিক) নামে বছরের পর বছর ধরে ব্যবহার করেছিল (যদিও স্বীকার করে নেওয়া হয় যে প্রযুক্তিগত debtণ শেষ পর্যন্ত তাদের সাথে ধরা পড়ে )। সুতরাং এটি কাজ করে সেখানে অবশ্যই আছে।
রবার্ট হার্ভে

1
যতদূর আমি মনে করতে পারি, সি # জন্মেছিল মাইক্রোসফ্ট জাভা-প্রয়োগ বাস্তবায়ন না করার জন্য মাইক্রোসফ্ট চেষ্টা করেছিল, সান এর বিরুদ্ধে মামলা করেছিল এবং হারিয়েছিল। cnet.com/news/sun-microsoft-settle-java-suit যেহেতু তারা এটিকে আর জাভা বলতে পারেন না, তাই তারা তাদের নিজস্ব ভাষা তৈরি করেছিলেন যা প্রাথমিকভাবে জাভার সাথে খুব মিল ছিল।
জর্জিও

1
"এই নতুন ভাষা সম্ভবত সর্বদা বিরতি" - যদি আপনার ভাষার নকশা আপনাকে পুরো শ্রেণীর অ্যাপ্লিকেশন বাগগুলি এড়াতে দেয় তবে এটি একটি গ্রহণযোগ্য ট্রেড অফ হতে পারে
এরিক

16
কখনও সি এর কথা শুনেছেন? এটি কেবলমাত্র একটি কম্পিউটারে একটি একক অপারেটিং সিস্টেমের জন্য ঘরে ঘরে তৈরি করা হয়েছিল বলে জানা গেছে। কেন ওআরআর কেন কেবল প্রমানিত কিছু ব্যবহার করেন নি যা অপারেটিং সিস্টেমগুলি যেমন PL / 1, BCPL বা Algol 68 রচনার জন্য ব্যবহৃত হয়েছিল?
idrougge
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.