জাদু কম্পাইলার জাদু প্রোগ্রামিং ভাষা একটি বাস্তবায়ন. & Nbsp; জাদু প্রোগ্রামিং ভাষা সেট প্ল্যাটফর্ম এর নির্দেশ উপর নিষ্কাশিত এবং নিয়মাবলী কলিং, কিন্তু অন্যথায় এ সব কিছু করতে বিনামূল্যে প্রোগ্রামার যাব, একটি নিম্ন স্তরের প্রোগ্রামিং ভাষা.
জাদু কম্পাইলার রুবি লেখা ও i386 সামঞ্জস্যপূর্ণ, AMD64, এবং MIPS CPU- র জন্য কোড তৈরি করে করা হয়. অতিরিক্ত লক্ষ্য CPU- র জন্য সমর্থন ভবিষ্যতের জন্য পরিকল্পনা করা হয়েছে.
ব্যবহারের
Voodooc প্রোগ্রাম দ্বারা, বা রুবি API- টি ব্যবহার করে: জাদু কম্পাইলার ব্যবহার করতে দুটি প্রধান উপায় আছে.
voodooc প্রোগ্রাম একটি জাদু সূত্র ফাইল সংকলন. তার ব্যবহার ডিস্ট্রিবিউশনের মধ্যে, voodooc.1 র manpage বর্ণিত অন্তর্ভুক্ত করা হয়. নিম্নলিখিত voodooc একটি সোর্স ফাইল hello.voo থেকে একটি এক্সিকিউটেবল হ্যালো তৈরি করতে ব্যবহার করা যেতে পারে কিভাবে একটি উদাহরণ:
$ Voodooc hello.voo
$ সিসি hello.o o হ্যালো
$ হ্যালো
ওহে বিশ্ব!
Hello.voo একটি বাস্তবায়ন বিতরণের ডিরেক্টরি পরীক্ষা খুঁজে পাওয়া যেতে পারে.
জাদু কম্পাইলার ব্যবহার দ্বিতীয় উপায় একটি রুবি প্রোগ্রাম থেকে এটি ব্যবহার করা হয়. এটি একটি .voo ফাইল তৈরি করেও লক্ষ্য প্ল্যাটফর্মের জন্য কোড জেনারেট করতে, উদাহরণস্বরূপ, ব্যবহার করা যেতে পারে. নিম্নলিখিত ফ্যাক্টোরিয়ালের নির্ণয় একটি ফাংশন যা আসলে একটি সংজ্ঞা ধারণকারী, fact.o নামক একটি বস্তুর ফাইল তৈরি করে যা একটি উদাহরণ:
'জাদু' প্রয়োজন
জেনারেটরের = জাদু :: CodeGenerator.get_generator: স্থাপত্য =>: i386,
& Nbsp; বিন্যাস =>: পরী
generator.export: আসলে
generator.add_function_label: আসলে
generator.add_function [: এন],
& Nbsp; [: iFle, [: এন, 1],
& Nbsp; # তারপর
& Nbsp; [[: ফিরে, 1]],
& Nbsp; # অন্য
& Nbsp; [[: যাক, এক্স,: সাব, এন, 1],
& Nbsp; [: সেট, এক্স,: কল,: আসলে: X],
& Nbsp; [: ফিরে,: Mul, এন,: X]]]
File.open ('fact.o', 'W') {| outfile | generator.write outfile}
রুবি প্রোগ্রাম একটি পাওয়া যায় যে জাদু কম্পাইলার API 'API ডকুমেন্টেশন বর্ণনা করা হয়েছে
এই রিলিজে নতুন কি:.
- < Li> রুবি 1.9 সাথে সামঞ্জস্যের, রুবি 1.8 ছাড়াও; পরীক্ষা এখন পাস এবং ব্যর্থ পরীক্ষা সংখ্যা রিপোর্ট করা.
- অনেক Vars পরীক্ষা অনেক args বিভক্ত করা হয়েছে, অনেক args দ্বিধাবিভক্ত, এবং অনেক-স্থানীয়.
কি সংস্করণ 1.0.1 নতুন:
- এই সংস্করণ পার্সার উন্নতি সংখ্যা যোগ করা এখন সব ত্রুটি জন্য সোর্স কোড অবস্থানে রিপোর্ট এবং ব্লক, কর্ম, এবং কন্ডিশন ভিতরে একাধিক ত্রুটি রিপোর্ট করতে পারেন. পার্সার জন্য বেশ কিছু পরীক্ষা যোগ করা হয়েছে.
- এই মুক্তির মন্তব্য দ্বারা অনুসরণ বিবৃতি একটি পার্স ত্রুটি এবং পার্সার খালি ইনপুট ব্যর্থ হত যা একটি সমস্যা সমাধান করা হয়েছে.
কি সংস্করণ 1.0.0 নতুন:
- এআরএম কোড জেনারেটরের: কম্পাইলার এখন তৈরি করতে পারেন সমাবেশ এবং এআরএম আর্কিটেকচারের জন্য বামন অবজেক্ট কোড.
- উন্নত এরর রিপোর্টিং:. আরও বেশি ত্রুটি সনাক্ত করা হয় এবং ত্রুটি ত্রুটি বার্তা বুঝতে সহজ রিপোর্ট করা হয়
- ভ্যালিডেটার মডিউল: এই নতুন মডিউল তৈরি জাদু বৈধতা যাচাই কোড ব্যবহার করা যেতে পারে. এটা পার্স বৈধতা যাচাই কোড পার্সার দ্বারা ব্যবহৃত হয়.
- বৈশিষ্ট্য ইন্টারফেস: বাস্তবায়ন বৈশিষ্ট্য programmatically ও কমান্ড-লাইন থেকে উভয় অনুসন্ধান করা যাবে করুন .
কি সংস্করণ 0.7.0 নতুন:
- ব্লকসমূহ: এই সুযোগ প্রদান যা স্থানীয় ভেরিয়েবল হতে পারে যাক সঙ্গে সংজ্ঞায়িত করা. এই ধরনের ভেরিয়েবল ব্লক শেষ পর্যন্ত যাক বিবৃতি শেষ থেকে বিদ্যমান. ব্লকসমূহ একটি কর্ম হতে পারে যেখানে কোনো জায়গায় ঘটতে পারে. তারা ব্লক দিয়ে শুরু এবং শেষ ব্লক সঙ্গে শেষ হয়.
- শৃঙ্খলিত কন্ডিশন: এটা, & quot লিখতে করা সম্ভব হয়; অন্যথায় যদি & quot ;, পরিবর্তে অন্য ধারা যদি একটি নেস্টেড প্রয়োজন এর .
- শিফট এবং আবর্তিত: কর্ম (Asr, BSR, SHL, এসএইচআর) এবং আবর্তিত কর্ম (Rol, Ror) যোগ করা হয়েছে নামান করুন .
- মান ছাড়া ফিরে: ফিরে এখন মূল্যায়নের একটি অভিব্যক্তি উল্লেখ না করে ব্যবহার করা যেতে পারে. এটি একটি অনির্ধারিত মান ফাংশন থেকে ফিরে করা হয়.
কি সংস্করণ 0.6.3 নতুন:
- এই রিলিজে এ এক্সপ্রেশন প্রবর্তন: একটি prefixing দ্বারা একটি @ সঙ্গে লেবেল, স্থানীয় পরিবর্তনশীল, বা পূর্ণসংখ্যা মান একটি ঠিকানা হিসাবে গণ্য করা হয়, এবং যে ঠিকানা সংরক্ষিত শব্দ ফিরিয়ে দেওয়া হয়.
- উপরন্তু, কিছু বাগ উপায় স্ট্রিং মধ্যে উন্মোচিত হয় উত্পন্ন সমাবেশ কোড মধ্যে এনকোড করা হয়.
- এই বাগ সংশোধন করা হয়েছে, এবং সংস্করণ 0.6.3 এখন সঠিকভাবে সব 256 সম্ভব বাইট মান ধারণকারী স্ট্রিং পরিচালনা করা.
কি সংস্করণ 0.6.2 নতুন:
- এই রিলিজে সমাধান করা হয়েছে সেট-এর বাস্তবায়নের মধ্যে বাগ i386 ও AMD64 ও শব্দ পূর্বে সঠিকভাবে কাজ না করে ক্ষেত্রে পরীক্ষা যোগ করা হয়েছে.
পাওয়া মন্তব্যসমূহ না