XOLIX Explorer Logo
Proprietary Blockchain Technology

FLUID (XLS)

The native, AI-aware smart contract language powering the XOLIXBlock Ecosystem. FLUID (XLS) compiles to EVM-compatible bytecode while unlocking native access to Sentient Node protocols.

Sentient AI Integration

Unlike traditional static languages like Solidity, FLUID (XLS) natively intercepts our Rust-based Xolix Node Sentient Logic. You can write conditional logic that queries the node's built-in neural network for real-time transaction fraud risk and wallet profiling.

EVM Cross-Compilation

FLUID (XLS) code doesn't isolate developers. Through our advanced LLVM-based compiler pipeline, XLS translates seamlessly into Ethereum Virtual Machine (EVM) bytecode. This guarantees 100% compatibility with MetaMask, Web3.js, and Ethers.js.

Quantum-Resistant Handshakes

FLUID (XLS) abstracts the complexity of Post-Quantum Cryptography (QGP Signatures). Standard cryptographic signature verifications are automatically hardened at the compiler level using lattice-based algorithms.

RAISE Contract Architecture

Fluid Contracts operate on our proprietary RAISE architecture, solving upgradeability by fundamentally separating logic from state (data storage). A Proxy contract delegates calls to a specific Logic contract, while state is held in a persistent Storage contract.

Fluid Upgradability: How it Works

On traditional blockchains, upgrading a smart contract requires deploying an entirely new contract and persuading users to migrate their assets. Fluid Contracts solve this seamlessly:

  1. Initial Deployment: A developer deploys a Logic, Storage, and Proxy contract. The Proxy holds the public address and delegates all calls to the initial Logic contract.
  2. Governance Upgrade: When a bug needs fixing or a feature is added, the developer deploys a new LogicV2 contract. A DAO proposal is created to upgrade the Proxy.
  3. Seamless Transition: Once the governance vote passes, the Proxy updates its implementation address. All subsequent user interactions are automatically routed to the new, upgraded logic on the exact same address, continuing to operate on the same persistent Storage.

FLUID (XLS) vs Solidity Example

Standard Solidity

// Requires complex Oracles for risk
pragma solidity ^0.8.20;

contract TokenSwap {
    function swap(uint amount) external {
        // Blind execution, no context
        require(balances[msg.sender] >= amount);
        
        balances[msg.sender] -= amount;
        balances[owner] += amount;
    }
}

FLUID (XLS)
AI Native

// Native AI Risk Assessment
pragma fluid ^1.0.0;

contract TokenSwap {
    @SentientGuard(maxRisk: 0.8)
    function swap(uint amount) external {
        // The node intercepts this transaction
        // before it reaches the EVM execution layer.
        // If the AI flags the sender's pattern as fraud,
        // it reverts with 0 gas cost.
        
        balances[msg.sender].fluidSub(amount);
        balances[owner].fluidAdd(amount);
    }
}

Full Template Code: Deflationary Token

Xolix-Standard Token Implementation in FLUID (XLS)

A native implementation of our 6% auto-burn and treasury routing token standard.

pragma fluid ^1.0.0;
import { SentientNode, GlobalState } from "@xolix/core";

contract XolixNativeToken {
    string public name = "Xolix";
    string public symbol = "FLUID";
    uint256 public totalSupply = 50_000_000 * 10**18;
    
    mapping(address => uint256) public balances;
    
    // FLUID (XLS) specific syntax for DAO Treasury routing
    address immutable DAO_TREASURY = GlobalState.getProtocolTreasury();

    constructor() {
        balances[msg.sender] = totalSupply;
    }

    // @SentientGuard protects against flash-loan draining
    @SentientGuard(maxRisk: 0.75)
    function transfer(address to, uint256 amount) external returns (bool) {
        require(balances[msg.sender] >= amount, "Insufficient balance");
        
        // FLUID (XLS) calculates protocol tax natively at the bytecode layer
        uint256 tax = (amount * 6) / 100;
        uint256 transferAmount = amount - tax;
        
        uint256 burnAmount = (tax * 8333) / 10000; // 5% of 6%
        uint256 daoAmount = tax - burnAmount;      // 1% of 6%

        balances[msg.sender] -= amount;
        balances[to] += transferAmount;
        balances[DAO_TREASURY] += daoAmount;
        
        // Burn permanently from supply
        totalSupply -= burnAmount;
        
        return true;
    }
}