نسخه جدید مفسر GNU Awk 5.2

نسخه جدیدی از پیاده سازی پروژه گنو از زبان برنامه نویسی AWK، Gawk 5.2.0، معرفی شده است. AWK در دهه 70 قرن گذشته توسعه یافت و از اواسط دهه 80، که در آن ستون اصلی زبان تعریف شد، دستخوش تغییرات قابل توجهی نشده است، که به آن اجازه داده است تا ثبات و سادگی زبان را نسبت به گذشته حفظ کند. دهه ها با وجود سن بالا، AWK هنوز به طور فعال توسط مدیران برای انجام کارهای معمول مربوط به تجزیه انواع مختلف فایل‌های متنی و تولید آمارهای ساده نتیجه استفاده می‌شود.

تغییرات کلیدی:

  • پشتیبانی آزمایشی برای مدیریت حافظه pma (malloc پایدار) اضافه شده است که به شما امکان می دهد مقادیر متغیرها، آرایه ها و توابع تعریف شده توسط کاربر را بین اجراهای مختلف awk ذخیره کنید.
  • پشتیبانی حسابی با دقت بالا ارائه شده توسط کتابخانه MPFR از مسئولیت نگهدارنده GNU Awk خارج شده و به یک علاقه مندان خارجی برون سپاری شده است. خاطرنشان می شود که اجرای حالت MPFR در GNU Awk یک اشکال در نظر گرفته می شود. در صورت حفظ تغییر حالت، برنامه حذف کامل این ویژگی از GNU Awk است.
  • اجزای زیرساخت اسمبلی Libtool 2.4.7 و Bison 3.8.2 به روز شده اند.
  • منطق مقایسه اعداد تغییر کرده است که با منطق استفاده شده در زبان C مطابقت دارد. برای کاربران، این تغییر عمدتاً بر مقایسه مقادیر Infinity و NaN با اعداد منظم تأثیر می گذارد.
  • امکان استفاده از تابع هش FNV1-A در آرایه های انجمنی وجود دارد که زمانی فعال می شود که متغیر محیطی AWK_HASH روی "fnv1a" تنظیم شود.
  • پشتیبانی برای ساخت با استفاده از CMake حذف شده است (کد پشتیبانی Cmake مورد تقاضا نبود و به مدت پنج سال به روز نشده است).
  • تابع mkbool() برای ایجاد مقادیر بولی، که اعداد هستند اما به عنوان بولی در نظر گرفته می شوند، اضافه شده است.
  • در حالت BWK، مشخص کردن پرچم "--سنتی" به طور پیش‌فرض، پشتیبانی از عبارات را برای تعریف محدوده‌هایی که قبلا توسط گزینه "-r" ("--re-interval") فعال شده‌اند، فعال می‌کند.
  • پسوند rwarray توابع جدید writeall() و readall() را برای نوشتن و خواندن همه متغیرها و آرایه ها به طور همزمان ارائه می کند.
  • اسکریپت gawkbug برای گزارش اشکالات اضافه شد.
  • در صورت شناسایی خطاهای نحوی، خاموش شدن فوری ارائه می شود، که مشکلات استفاده از ابزارهای تست فازی را حل می کند.
  • پشتیبانی از سیستم عامل های OS/2 و VAX/VMS متوقف شده است.

منبع: opennet.ru

اضافه کردن نظر