nevalang/neva
نئوالنگ یک زبان برنامهنویسی استاتیک تایپشده است که برنامهها را به صورت گرافهای انتقال پیام مینویسد و موازیسازی را به صورت خودکار فراهم میکند.
این زبان مستقیماً به کد ماشین کامپایل میشود و عملکرد بسیار بالایی دارد.
کاربرد:
این زبان برای ساخت سیستمهای همزمان و موازی مناسب است، مانند پردازش جریان داده، سرویسهای توزیعشده و برنامههای بلادرنگ.
چون بر پایه انتقال پیام کار میکند، از همه مشکلات مربوط به قفل و رقابت (race condition) جلوگیری میکند.
در چه شرایطی بهتره استفاده شود؟
وقتی نیاز به سیستمی سریع، ایمن و مقیاسپذیر دارید و میخواهید بدون دردسر دستی کردن با نخها (threads) و قفلها، از تمام هستههای پردازنده استفاده کنید.
همچنین وقتی میخواهید کدی بنویسید که از ابتدا از نظر نوع (type) ایمن باشد و خطاهای زمان کامپایل داشته باشید.
چند مثال از موارد استفاده:
- پردازش بلادرنگ دادههای حسگر در سیستمهای IoT
- ساخت میکروسرویسهای سبک و سریع با ارتباطات داخلی ایمن
- شبیهسازی سیستمهای چندعامله (multi-agent) مثل ترافیک یا بازارهای مالی
- ##concurrent
- ##parallel
- ##static
- ##message
- ##systems
- ##high
- ##compiled
- ##nevalang
- ##distributed
- ##real
