• gRPC

    gRPC is an open-source, high-performance remote procedure call (RPC) framework developed by Google. It allows for efficient communication between client and server applications by enabling them to call functions and exchange data as if they were local, even though they might be running on different machines or in different locations. gRPC supports multiple programming languages…

  • API Query Layer

    An API Query Layer is a part of the software architecture that allows users or applications to retrieve, manipulate, and interact with data through Application Programming Interfaces (APIs). It acts as an intermediary between users and a database, enabling the querying and fetching of specific data through structured requests. APIs provide a way for external…

  • Static Typed Languages

    Static typed languages are programming languages in which the type of a variable is known and checked at compile time rather than at runtime. This means that variables must be explicitly declared with a specific data type (e.g., integer, string, boolean) before they are used. If there are type mismatches or errors, they are detected…

  • Polymorphism

    Polymorphism is a concept in programming and type theory where a function, variable, or data type can operate on different data types while maintaining a consistent interface. Essentially, it allows one piece of code to be used for different types of inputs, increasing code flexibility and reusability. In simple terms, polymorphism allows functions or types…

  • Escrows

    In the context of blockchain and smart contracts, an escrow is a financial arrangement where a third party temporarily holds and manages the funds involved in a transaction between two parties until certain conditions are met. Escrows on Cardano are implemented using Plutus smart contracts, ensuring trustless and secure transactions without the need for a…

  • Type System

    A type system is a set of rules that assigns types to various parts of a computer program, such as variables, expressions, functions, or modules. These types define what kind of values the program components can take and what operations can be performed on them. Type systems help catch errors during compilation or runtime by…

  • Embedded Domain Specific Languages (eDSL)

    Embedded Domain-Specific Languages (eDSLs) are specialized programming languages designed to solve problems in a specific domain. They are embedded within a host general-purpose language, meaning that the domain-specific syntax and functionality are written as part of the main language. An eDSL leverages the existing tools, libraries, and infrastructure of the host language but adds domain-specific…

  • Native Asset

    A native asset on Cardano is a type of token that is created and managed directly on the Cardano blockchain, alongside the ADA cryptocurrency, without the need for smart contracts. This contrasts with how assets are typically handled on other blockchains like Ethereum, where smart contracts (e.g., ERC-20 for fungible tokens and ERC-721 for NFTs)…

  • Untyped Plutus Core (UPLC)

    Untyped Plutus Core (UPLC) is a low-level, intermediate representation of smart contracts on the Cardano blockchain. It is the core language used by the Plutus Platform, which enables the creation and execution of smart contracts on Cardano. Untyped Plutus Core is designed to be a minimal, well-defined language that serves as a bridge between high-level…

  • Assembly Languages

    Assembly languages are low-level programming languages that are closely tied to a computer’s hardware architecture. They are designed to be human-readable representations of machine code, which the computer’s CPU understands. Each assembly language is specific to a particular type of processor or computer architecture, and it provides a way for programmers to write instructions that…