7 مستودعات
Techniques for transforming functions to accept arguments one at a time through partial application.
Distinct from Function Argument Passing: The candidates focus on argument passing semantics or sanitization, not the functional pattern of currying and placeholders.
Explore 7 awesome GitHub repositories matching programming languages & runtimes · Function Currying. Refine with filters or upvote what's useful.
Lodash is a JavaScript utility library and data manipulation toolkit. It provides a collection of modular functions for transforming, filtering, and validating arrays, objects, strings, and numbers. The project functions as a functional programming toolkit, offering capabilities for function composition, currying, and lazy evaluation. It includes mechanisms for execution control, such as debouncing and throttling, to manage the timing and frequency of function invocations. The library covers a broad surface of data operations, including deep cloning and merging of complex nested structures,
Provides utilities to transform functions into curried versions that support partial application via placeholders.
Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie
Implements compiler-level optimizations for curried functions to reduce memory overhead during partial application.
PureScript is a statically typed, purely functional programming language that compiles to JavaScript. It is designed as a cross-platform frontend language for building safe web applications, utilizing a static type system and a JavaScript compiler to ensure program correctness across browser and server environments. The language is distinguished by its emphasis on mathematical purity, featuring a robust type system with first-class support for monads. It provides a sophisticated toolset for static verification, including algebraic data types, type classes, and automatic type inference to reje
Supports the execution of curried JavaScript functions by applying arguments sequentially.
Carp is a statically typed Lisp compiler that compiles Lisp-like syntax directly to C source code, enabling seamless integration with existing C libraries and low-level system programming. It manages memory deterministically at compile time using ownership tracking and linear types, eliminating garbage collection pauses and runtime overhead while ensuring type safety through an inferred static type system. The language distinguishes itself through compile-time macro expansion and metaprogramming capabilities, allowing code generation and transformation before final binary output. It enforces
Supports function currying for transforming multi-argument functions into chains of single-argument calls.
Ships an uncurrying utility that reverses the currying transformation for multi-argument invocation.
Rhai هو محرك برمجة نصية مضمن ولغة ذات كتابة ديناميكية مصممة للدمج في تطبيقات Rust. يعمل كمترجم لشجرة بناء الجملة المجردة (AST) وطبقة تداخل أصلية، مما يسمح للمطورين بربط أنواع ووظائف Rust ببيئة برمجة نصية للتواصل ثنائي الاتجاه. يعمل المشروع كإطار عمل لإنشاء لغات خاصة بالمجال (DSL) قابلة للتخصيص. يسمح بتعريف عوامل تشغيل مخصصة، وبناء جملة، وبيئات تنفيذ مقيدة، مما يتيح إنشاء لغات متخصصة ذات مجموعات وظيفية مصممة خصيصاً. يغطي المحرك مجموعة واسعة من القدرات بما في ذلك الحماية (Sandboxing) المحدودة الموارد للتنفيذ الآمن، وتنظيم الكود المعياري، ومعالجة البيانات الشاملة للأنواع الرقمية والنصية والثنائية. كما يوفر أدوات لمعالجة AST، وتسلسل حالة التنفيذ، وقابلية المراقبة في وقت التشغيل من خلال فحص مكدس الاستدعاءات وواجهات التصحيح. تم تصميم المحرك للنشر عبر المنصات على أي وحدة معالجة مركزية أو نظام تشغيل مدعوم من المترجم الأصلي.
Implements function currying by allowing arguments to be pre-filled to create new specialized function pointers.
Dollar هي مكتبة برمجة وظيفية لـ Swift توفر مجموعة أدوات شاملة لمعالجة المجموعات، ومعالجة السلاسل، والحسابات الرياضية، وإدارة التاريخ والوقت. تعمل كمجموعة أدوات لتصفية وتجميع وإعادة هيكلة المصفوفات والقواميس. ينفذ المشروع أنماط البرمجة الوظيفية مثل currying، و memoization، وتكوين الوظيفة. كما يتميز بواجهة مغلف قابلة للتسلسل تسمح بتطبيق تحويلات بيانات متعددة بالتسلسل قبل استخراج نتيجة نهائية. تغطي المكتبة مجموعة واسعة من مجالات القدرة، بما في ذلك تعقيم النص وتحويل الحالة، وعمليات التعبير العادي، وحساب القيم الرياضية مثل المضروبات والقواسم. كما تتضمن أدوات لتحليل طوابع Unix الزمنية وحساب إزاحات الوقت النسبية. توسع مجموعة الأدوات أنواع مكتبة Swift القياسية بطرق عامة لتحويل البيانات وتجميعها.
Implements functional patterns for currying and partial application to fix specific function arguments.