صفحه 1 از 9 123 ... آخرآخر
نمایش نتایج 1 تا 40 از 329

نام تاپیک: ساخت Compiler و یک زبان برنامه نویسی جدید

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    Lightbulb ساخت Compiler و یک زبان برنامه نویسی جدید

    سلام دوستان،
    برای ساخت یک زبان برنامه نویسی جدید و در اصل یک Compiler کسی هست که با هم همکاری کنیم؟

  2. #2
    کاربر دائمی آواتار Hossenbor
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    پارس
    پست
    429

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    اگه یک کاربر بیسواد میخوایی من حاضرم دوسته عزیز من این ایده تو رو داشتم ولی هدفم یک مترجم برای برنامه سی پلاس پلاس بود این پروژه ام کاری نمی کرد فقط کارش این بود که دستور زبانه منو به سی پلاس پلاس تغییر بده و دستور زبانم هم سی شارپ بود تقریبا

  3. #3

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    منم هستم
    فقط یه کم بیشتر توضیح بده

  4. #4
    کاربر جدید آواتار Asg.Mojtaba
    تاریخ عضویت
    دی 1390
    محل زندگی
    تهران
    پست
    7

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    اینکه از پایه زبان رو بسازید احتیاج به مطالعه بسیار زیاد داره و همچنین انگیزه.
    حواستون باشه چیز با ارزشی به نام زمان وجود داره ، سوال اصلی اینجاست آیا واقعا ما به زبان جدید نیاز داریم.یا به عبارت دیگر چه نیازی هست که باید براش زبان برنامه نویسی درست کنیم.

    اما نوشتن یک مفسر بسیار راحتر از نوشتن یک کامپایلر خواهد بود ، مثلا مفسری که یک قالب ساده که بسیار شبیه محاوره هست رو به کد سی پلاس پلاس تبدیل کنه و بعد از اون از طریق خود سی پلاس پلاس کامپایل کندش.

    به هر حال در کنار شما خواهم بود چون مطالب جالبی رو یاد خواهیم گرفت.

  5. #5
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    هدف این بود که VB6 زنده بشه،
    شی گرایی به طور کامل اضافه بشه و ...
    البته منظورم تغییر VB6 نیست. منظورم اینه که از پایه این کارو انجام بدیم و کد هامون رو به کد Assembly تبدیل کنیم.
    در مورد دانش این کار هم نگران نباشید.
    قبلا به طور عملی، تجربه ی این کارارو داشتم... فقط این کار وقت و حوصله نیاز داره، که به نظرم گروهی باشه بهتره.

  6. #6
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    به نظر من اگه واقعآ قصد چنین کاری رو دارید باید به شکل اصولی پیش برید.یعنی اولآ کامپایلر باید به دو قسمت جلوبندی و عقب بندی تقسیم بشه. دومآ در جلوبندی باید فازهای تحلیلگر لغوی , تحلیلگر نحوی و معنایی رو به شکل استاندارد پیاده سازی کنید ( مثل همه کاپایلر ها). اگه توضیحات بیشتری خواستید در خدمتم.

  7. #7
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    برای ایجاد تحلیل گر، چه کار کنیم؟
    خودمون بنویسیم؟ یا از نرم افزار استفاده کنیم؟
    و اگه از نرم افزار، چه نرم افزاری؟

  8. #8
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    برای ایجاد تحلیل گر، چه کار کنیم؟
    خودمون بنویسیم؟ یا از نرم افزار استفاده کنیم؟
    و اگه از نرم افزار، چه نرم افزاری؟
    برای تحلیلگر لغوی میتونید از flex و برای تحلیلگر نحوی از bison یا yacc استفاده کنید. کار این ابزارها به این شکل هست که شما مشخصات لغوی یا نحوی زبانتون رو با یک زبان مخصوص این ابزارها تعریف میکنید و این ابزارها تحلیلگر رو به زبان c یا پاسکال (معمولا) براتون ایجاد میکنند. اما اگه از من بپرسید میگم تحلیلگرها رو خودتون بنویسید چون انعطاف پذیریش خیلی میره بالا.
    من نمیدونم اطلاعاتتون در مورد کامپایلر چقدره اگه خواستید میتونم از ابتدا براتون توضیح بدم.

  9. #9
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    خیلی ممنون از پاسختون.
    فکر نمی کنم از اوّل لازم باشه... اطلاعات تا حدی دارم که راحت صحبت کنیم.
    به نظر من هم خودمون بنویسیم بهتره...
    اما در مورد این که خودمون بنویسیم، با چه زبانی؟ با چه Method ای؟ ...

  10. #10
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    اکه سرعت براتون مهم نباشه فاز جلو بندی رو میتونید با هر زبانی پیاده سازی کنید ولی احتمالا تو فاز عقب بندی (به خاطر تولید کد ) نمیتونید روی هر زبانی حساب باز کنید.
    اگه شما با فازها و زیر فازهای کامپایلر و کاربردشون آشنا نیستید میتونم براتون توضیح بدم. من اطلاعاتم بیشتر در فاز جلوبندی هست. یعنی تا جایی که بتونید یه
    مفسر بنویسید.وقتی حرف از کاپایلر میشه معمولا شما باید بتونید برای سیستم عامل مورد نظر یه برنامه اجرایی تولید کنید.که من اطلاعات زیادی در این مورد ندارم. ولی در مفسر شما
    فقط فاز جلوبندی و زیر شاخه های اونو دارید.و در آخر کد میانی تولید شده رو مستقیم اجرا میکنید.
    در کل فکر میکنم c یا ++c برای ایجاد کامپایلر مناسب باشه. ولی مفسر رو میتونید از هر زبانی استفاده کنید.البته باید به سرعت اجرا دقت کنید.

  11. #11

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط amin32 مشاهده تاپیک
    اکه سرعت براتون مهم نباشه فاز جلو بندی رو میتونید با هر زبانی پیاده سازی کنید ولی احتمالا تو فاز عقب بندی (به خاطر تولید کد ) نمیتونید روی هر زبانی حساب باز کنید.
    اگه شما با فازها و زیر فازهای کامپایلر و کاربردشون آشنا نیستید میتونم براتون توضیح بدم. من اطلاعاتم بیشتر در فاز جلوبندی هست. یعنی تا جایی که بتونید یه
    مفسر بنویسید.وقتی حرف از کاپایلر میشه معمولا شما باید بتونید برای سیستم عامل مورد نظر یه برنامه اجرایی تولید کنید.که من اطلاعات زیادی در این مورد ندارم. ولی در مفسر شما
    فقط فاز جلوبندی و زیر شاخه های اونو دارید.و در آخر کد میانی تولید شده رو مستقیم اجرا میکنید.
    در کل فکر میکنم c یا ++c برای ایجاد کامپایلر مناسب باشه. ولی مفسر رو میتونید از هر زبانی استفاده کنید.البته باید به سرعت اجرا دقت کنید.

    سلام.من این مطلب شمارو توآرشيو اينجا پيدا کردم و در حال حاضر برای درس کامپايلر بايد ی مفسر ساده بسازم
    درواقع سوال استاد اين که ی فايل txt. بديم ب مفسر بعد ی فايل با ی زبان برنامه نويسی تحويل بگيريم که ترجيحا از خانواده C باشه
    می خواستم بدونم شما ميتونی کمک کنی؟

  12. #12
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    سرعت برام مهم نیست.
    در مورد تولید کد اجرایی، کدمون رو به کد Assembly تبدیل می کنیم و با Flat Assembler فایل اجرایی می گیریم. ضمنا FASM رو برای این گفتم که هم Open Source هست، هم این که باهاش برنامه های Windows و DOS بلدم بنویسم.
    به غیر از مرحله تولید کد اجرایی و Assemble کردن و LINK کردن، در مورد مراحل قبلیش یه توضیح مختصر بدی که می خوایم چی کار کنیم ممنون می شم.

  13. #13
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    امیدوارم ازم ناراحت نشی , اصلآ قصدم نصیحت نیست.میخوام یکم منطقی باشی... ساخت کامپایلر و یه زبان جدید کار با ارزشیه. کسانی که موفق به انجام این کار شدن از علم بالایی برخوردار بودند.
    حداقل کاری که باید انجام بدی اینه که یه کتاب در مورد اصول طراحی کامپایلر و همچنین نظریه زبانها و ماشینها بخونی. فکر میکنم این در مقابل کاری میخوای انجام بدی بهای کمی باشه.
    خب سعی میکنم در مورد کامپایلر یه توضیح مختصر و مفید بدم که شاید کسانی که هیچی در موردش نمیدونن هم چیزی عایدشون بشه.
    مراحل کامپایل: در کل کامپایلر به دو فاز جلوبندی و عقب بندی تقسیم میشه. هر کدوم از این فازها هم به فازهای کوچکتر تقسیم میشن.
    مراحل جلو بندی:
    ۱-تحلیلگر لغوی: این تحلیلگر کارش اینه که تک تک لغات برنامه زبان مبدآ رو بررسی میکنه و نوعشون رو مشخص میکنه(شناسه,کلمه کلیدی,عملگر و...) و همچنین چک میکنه که آیا این لغت جزء زبان هست یا نه و اگر نباشه خطای لغوی رخ داده.(مثلا در اکثر زبانها نام متغییرها نمیتونن با عدد شروع بشن.) برای ایجاد تحلیلگر لغوی باید DFA های مربوط به انواع لغات زبانتون رو به شکل تابع پیاده سازی کنید و هر لغت برنامه ورودی رو با همشون چک کنید تا نوعش مشخص بشه.DFA و زبانهای باقاعده رو نمیشه اینجا توضیح داد ولی فقط بگم از مباحث اصلی نظریه زبانهاست.در آخر باید لغات به همراه نوعشون برای فاز بعدی یعنی تحلیلگر نحوی فرستاده بشه.

    ۲-تحلیلگر نحوی: به زبان ساده درستی ترتیب لغات در کنار هم رو بررسی میکنه. برای مثال در زبان پاسکال یک برنامه باید به این شکل شروع شود:
    نام برنامه program
    تعریف متغیرها
    و باقی برنامه....

    حالا اگر برنامه را به این شکل بنویسیم:
    program نام برنامه
    تعریف متغیرها
    و باقی برنامه....

    یا حتی:
    تعریف متغیرها
    نام برنامه program
    و باقی برنامه....

    در این حالات خطای نحوی رخ داده.در واقع کار تحلیلگر نحوی اینه که بعد از بررسی ترتیب لغات از ساختار برنامه یه درخت به نام درخت تجزیه به عنوان خروجی ایجاد کنه و برای فاز دیگه بفرسته.برای پیاده سازی
    تحلیلگر نحوی باید از گرامرهای مستقل از متن استفاده کنید.که اونم توضیحش مفصل و در نظریه زبانها و ماشینها در موردش صحبت شده.

    و اینجاست که میفهمیم چرا علمی به نام علوم کامپیوتر پایه گذازی شد!!!!

    ۳-تحلیلگر معنایی
    ۴-تولید کننده کد میانی

    این دوتا فاز و همچنین عقب بندی بمونه برای بعد.

  14. #14
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نه ناراحت نمی شم،
    اتفاقا از رو کتاب می رم جلو
    ولی این قدر تئوریه که بعضی جاهاش گنگ می شه...

  15. #15
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    الان دقیقا کجاهاش برات گنگه؟

  16. #16
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    یه درخت تجزیه رو به چه صورت باید ذخیره کنیم که بهمون کمک کنه؟

  17. #17
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    والا دانش اندک و ناقص من میگه که این بیشتر به زبان برنامه نویسی مورد استفاده مربوط میشه.
    حالا تو در مراحل قبلی یعنی تحلیلگر لغوی که مشکلی نداری. اگه ابهامی هست بگو. چون من تصمیم دارم یک تحلیلگر لغوی ساده بنویسم.البته اگه بتونم.

  18. #18
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نه با تحلیلگر لغوی مشکل خاصی ندارم. بعدشم ما می خوایم طعم این کارو بچشیم، کار تجاری که نمی خوایم بکنیم. امتحانش ضرر نداره.
    ببین واسه شروع یه کار ساده می گم.
    خط به خط برنامه رو جدا می کنیم تو یه آرایه.
    بعد هر خط رو بر اساس فواصل بین کلمات و عبارات جدا می کنیم.
    فقط توجه می کنیم که این کارو برای عبارات داخل کوتیشن انجام ندیم.
    ... ؟

  19. #19
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    ... این کار برای ساختار های چند خطی یا تو در تو جواب نمی ده یا خیلی سخته.
    چون ما داریم هر خط رو به تنهایی بر رسی می کنیم.
    البته می شه یه کاری کرد.
    این که بیایم تعیین کنیم الان تو چه ساختاری هستیم، ساختار For، ساختار While، ...
    اما اگه به پایان ساختار فعلی رسیدیم، باید بفهمه ساختار فعلی، خودش جزو کدوم ساختار بوده، یعنی ساختار قبلی چی بوده.
    چون ممکنه برنامه نویس چند تا For تو در تو داشته باشه یا ...
    پس می شه یه متغیر رشته ای در نظر گرفت که وقتی وارد ساختار جدید می شیم، مشخصه ی اون ساختار بهش اضافه می شه و وقتی می آیم بیرون از ساختار، آخرین ساختار ثبت شده از متغیر حذف می شه.
    نظر شما چیه؟

  20. #20
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    پس می شه یه متغیر رشته ای در نظر گرفت که وقتی وارد ساختار جدید می شیم، مشخصه ی اون ساختار بهش اضافه می شه و وقتی می آیم بیرون از ساختار، آخرین ساختار ثبت شده از متغیر حذف می شه.
    نظر شما چیه؟
    این تو رو یاد چیزی نمیندازه؟؟؟

    پشته.... یو ها ها ها ها .......

    فکر میکنم اول باید به زیربنا توجه کنیم.این مسائل چیزی نیست که اول کار به فکرشون باشیم. راستی هنوز ساختار و نحو دستورات زبان مشخص نیستند.

  21. #21
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط amin32 مشاهده تاپیک
    این تو رو یاد چیزی نمیندازه؟؟؟

    پشته.... یو ها ها ها ها .......

    فکر میکنم اول باید به زیربنا توجه کنیم.این مسائل چیزی نیست که اول کار به فکرشون باشیم. راستی هنوز ساختار و نحو دستورات زبان مشخص نیستند.
    آه... آره چه قدر خودمو عذاب دادم، یهو می نوشتم Stack دیگه...!

    الان ساختار و نحو رو مشخص کنیم اول؟ نظری داری؟

  22. #22
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک

    الان ساختار و نحو رو مشخص کنیم اول؟ نظری داری؟
    خب آره . فکر میکنم برای اینکه بتونیم به طور جدی کار رو شروع کنیم باید ساختار نحوی زبانمون مشخص باشه . ولی فکر میکنم نیازه که اول یه تحلیلگر لغوی ساده رو به صورت آزمایشی ایجاد کنیم.
    من میتونم روی اون کار کنم و شما هم در این فرصت روی ساختار زبان فکر کنی.

  23. #23
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    به این لینک نیگا بنداز، می تونی ایده بگیری : groups.engin.umd.umich.edu/CIS/course.des/cis400/index.html

  24. #24
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    ببخشید ولی فکر میکنم جدا کردن لغات جزء تحلیلگر لغویه و جدا کردن کدها به شکل خط به خط یا ';' یا تگ و .... کار تحلیلگر نحویه و با این کار با هم تداخل پیدا میکنند.
    پیشنهاد من اینه که اول از تحلیلگر لغوی شروع کنیم.برای شروع هم من دارم یک تحلیلگر ساده مینویسم که لغات رو از هم جدا میکنه و شناسه ها و اعداد ثابت رو تشخیص میده.
    البته با وی بی مینویسم ولی بعدآ در صورت لزوم میتونم با c هم بنویسم.

  25. #25
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    Thumbs up نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    عیب نداره. چون پردازش رشته می کنیم، فعلا با VB6 راحت تریم.
    راستی یه برنامه ای هم گذاشتم ببین، با همین VB6 نوشته شده:
    فایل های ضمیمه فایل های ضمیمه

  26. #26
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    ببین زبان های جورواجور با Syntax های عجیب و غریب و بعضا جالب خیلی هست. اما من به نظرم به جای این که یه Syntax کاملا جدید درست کنیم، همین Syntax زبان BASIC رو استفاده کنیم.
    چون می خوایم باهاش Win32 Application نوشته بشه، به نظرم رو VB Classic تمرکز کنیم بهتر باشه. اما با ایده های جدید خودمون و یه سری تغییرات جالب.
    به نظرم خیلی عالی می شه اگه VB6 رو احیا کنیم.
    نظرت چیه؟

  27. #27
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    ببین زبان های جورواجور با Syntax های عجیب و غریب و بعضا جالب خیلی هست. اما من به نظرم به جای این که یه Syntax کاملا جدید درست کنیم، همین Syntax زبان BASIC رو استفاده کنیم.
    چون می خوایم باهاش Win32 Application نوشته بشه، به نظرم رو VB Classic تمرکز کنیم بهتر باشه. اما با ایده های جدید خودمون و یه سری تغییرات جالب.
    به نظرم خیلی عالی می شه اگه VB6 رو احیا کنیم.
    نظرت چیه؟

    نظرت قابل احترامه ولی انصافآ این که ما بیایم یک زبان (vb) رو در یک محیط (win32) از نو بسازیم یکم کار بیهوده ای به نظر میاد.من نظرم اینه که یا یک زبان جدید رو برای win32 بسازیم یا اینکه یک زبان مثل vb رو برای محیطی جدید ایجاد کنیم.

  28. #28
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    Thumbs up نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    باشه.
    برای چه محیطی منظورت هست؟
    البته بیهوده هم نیست، چون الان VB6 دیگه از دور خارج شده، قرار هم نیست کار تکراری کنیم و عین VB6 رو بسازیم.
    ولی خوب نظر شما چیه؟

  29. #29
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    منظورم از محیط جدید محیطهایی هست که مثلا زبان vb به اون اندازه در اونها توسعه پیدا نکرده.مثل لینوکس, اندروید و .... البته منظورم
    ساخت برنامه اجرایی از کد هست نه ساخت کامپایلر برای اون محیطها. اما در کل ساخت یک زبان جدید رو جالبتر میدونم.

    راستی تونستم یک تحلیلگر لغوی ساده طراحی کنم.این تحلیلگر اعداد و شناسه ها رو تشخیص میده و لغات دیگر رو خطا میگیره

    Lexical Analyzer.zip

  30. #30
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    ای ول، خیلی کارت درسته!
    آخه می دونی، من که فعلا از محیط های دیگه اطلاع کافی ندارم...
    می تونیم از Windows شروع کنیم و به اونا هم برسیم...

    یه فکری به نظرم رسید:
    الان برای شروع بیا یه کار خیلی سریع تر و ساده تر کنیم،
    فقط برای محیط Console برنامه بنویسه...
    ضمنا برنامه های Console در Windows دو نوع هستند.
    یه سری با وقفه ها نوشته شدن و در سیستم عامل های دیگه هم می تونن کار کنن،
    و یه سری با توابع API نوشته شدن و فقط در Windows کار می کنند.

    این نوع دوم رو بعدا می شه گسترش داد به برنامه های غیر Console ای که حالت گرافیکی Windows رو دارن.

    حالا به نظر خودت چه زبانی رو برای Windows بنویسیم که هم بیهوده نباشه، هم جذابیت داشته باشه؟

  31. #31
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    شاید دیگه بهم بگی عجب کلیدی هستی تو... ولی باز به نظر من یک زبان جدید میتونه جالبتر باشه.میتونیم با هم فکر کنیم و ساختارهای جالبی رو بسازیم. فکر نمیکنم اونقدر سخت باشه.
    راستش وقتی خودم رو جای کسی که با زبان ما (vb توسعه داده شده) برخورد میکنه میگذارم یه خورده نسبت بهش بی تفاوتم.خصوصآ با وجود چارچوب دات نت.ولی باز مشورت شرط عقل است.
    در ضمن به نظر من محیط کنسول یا گرافیکی هر دو خوبن و برام فرقی نمیکنه.
    آخرین ویرایش به وسیله amin32 : چهارشنبه 28 دی 1390 در 22:00 عصر

  32. #32
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    باشه.
    اتفاقا از کارهای تازه و خیس خوشم می آد!
    اولا که این مشخص بشه : برای Windows برنامه می نویسه دیگه؟ منظورم اینه که تحت چارچوب Console و DOS نباشه دیگه؟

  33. #33
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    باشه.
    اتفاقا از کارهای تازه و خیس خوشم می آد!
    اولا که این مشخص بشه : برای Windows برنامه می نویسه دیگه؟ منظورم اینه که تحت چارچوب Console و DOS نباشه دیگه؟
    اگه موافق باشی فعلا مبتنی بر کنسول کار کنیم.چون برای ویندوز مجبوریم در همین ابتدا روی شی گرایی و ارتباط با کنترلها کار کنیم. که یکم کارو پیچیده میکنه.

  34. #34
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    موافقم.
    با استفاده از وقفه (Interrupt) ها یا با استفاده از توابع API؟
    من با دومی موافقم.

  35. #35
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    نقل قول نوشته شده توسط IamOverlord مشاهده تاپیک
    موافقم.
    با استفاده از وقفه (Interrupt) ها یا با استفاده از توابع API؟
    من با دومی موافقم.
    هر کدوم که کار رو ساده تر میکنند. ظاهرآ api سادهتره .منم موافقم.
    فقط من دوست ندارم بد قول باشم.این کار رو یه کار علمی بدونیم. هر زمانی ممکنه من یا شما نتونیم کارو ادامه بدیم.

  36. #36
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    من هم دقیقا حس شما رو دارم، لازم نیست گیر سه پیچ بدیم در عوض از کار لذت می بریم...

    اتفاقا Interrupt ها ساده ترند.

    ولی برای روش دوم یعنی استفاده از توابع API این مرجع MSDN هست که توابع API و Structure ها و Event های مربوطه رو توضیح داده.

    در مورد Interrupt ها هم این جا رو ببینید : www.ctyme.com/intr/int.htm

    می خواستم یه لینک به این جا رم بدم، ولی مثل این که امشب یه خبرایی هست!!! : www.sopastrike.com

  37. #37
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    خب پس بهتر کم کم به فکر ساختار زبان باشیم.

  38. #38
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    برای توابع بازگشتی این کارو می تونه بکنه :

    phibonacci(n)
    {
    n = 1 : 1
    n = 2 : 1
    n > 2 : phibonacci(n-1) + phibonacci(n-2)
    }


    این کار جنبه ی ریاضی و قشنگ تری به کد می ده...

    مثلا تابع قدر مطلق رو این طوری می تونه تعریف کنه :

    Absolute(x)
    {
    n => 0 : x
    n < 0 : -x
    }

  39. #39
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    35°41′46″N 51°25′23″E
    سن
    24
    پست
    1,545

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    بالاخره از یه جایی باید شروع کرد دیگه، ایده های کوچیک و بزرگ....

    مثلا طرف بنویسه :

    f(x) = x ^ 2


    و کارش اینه که این مدل کدها رو :

    f(35)


    تبدیل به این مدل کد ها می کنه:

    35 ^ 2


    یعنی طرف به سادگی و به طور صریح Function تعریف می کنه (جدا از اون Function هایی که مثل زیربرنامه ها هستند و اجرا می شن)

    حتی می تونه یه همچین توابعی هم داشته باشه:

    Zarb3Ta(a,b,c) = a * b *c

  40. #40
    کاربر دائمی آواتار amin32
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    !SolarSystem>Earth>Persia>North
    پست
    304

    نقل قول: ساخت Compiler و یک زبان برنامه نویسی جدید

    ایده هات عالی بود. ولی بهتره اول به مسائل اساسی تر فکر کنیم.مثل چگونگی شروع و پایان برنامه-تعریف متغییرها-چگونگی استفاده از عملگرها و...

صفحه 1 از 9 123 ... آخرآخر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •