DEV Community

Danison Nuñez
Danison Nuñez

Posted on

The Great Logic Revolution: Why I Killed && and || in My Programming Language?


 The Great Logic Revolution: Why I Killed && and || in My Programming Language

For decades, programmers have struggled with boolean operator confusion. How many times have you seen:

if (user.isActive && user.hasPermission || user.isAdmin) {
  // Wait, does this mean (A && B) || C or A && (B || C)?
}
Enter fullscreen mode Exit fullscreen mode

I decided enough was enough. In Coderive v0.2.3, I completely removed && and || operators. Here's why and what replaced them.

The Problem with Traditional Boolean Operators

· Precedence confusion: && vs || precedence trips up beginners and experts alike
· Visual noise: Long chains become hard to read
· Error-prone: Easy to mix up & and &&, or | and ||
· Not expressive: Doesn't clearly communicate intent

The Solution: Quantifier-First Logic

Coderive introduces any[] and all[] quantifiers:

# Instead of: if (name != "" && age >= 0 && age <= 120)
if all[name != "", age >= 0, age <= 120] {
    registerUser()
}

# Instead of: if (isAdmin || (isOwner && isActive))  
if any[isAdmin, all[isOwner, isActive]] {
    grantAccess()
}
Enter fullscreen mode Exit fullscreen mode

Benefits of Quantifier Syntax

🎯 Clear Intent

# What it says vs what it means
all[scores >= 60]        # "All scores must be 60 or above"
any[users.isActive]      # "At least one user must be active"
Enter fullscreen mode Exit fullscreen mode

🐛 Fewer Bugs

No more operator precedence debates. The syntax forces clarity.

📚 Beginner Friendly

Reads like natural language, lowering the learning curve.

⚡ Built-in Short Circuiting

if all[expensiveOperation(), shouldSkip] {
    # expensiveOperation() won't run if shouldSkip is false
}
Enter fullscreen mode Exit fullscreen mode

Built Against All Odds

What makes Coderive unique is its development story:

· Built entirely on a phone using Java NIDE, QuickEdit, and Termux
· Mobile-first architecture from day one
· Filipino-made - proving innovation isn't geography-dependent
· Dual compilation to both bytecode and native code (ARM64/x86_64)

Technical Architecture

Coderive isn't just syntax sugar - it's a full compiler:

· Dual parser system: ANTLR + manual recursive backtracking
· Advanced register allocation with predictive spilling
· Multi-return slot system for clean multiple returns
· Native code generation with working ARM64 assembly output

Try It Yourself

# Run interpreter
java -jar coderive.jar program.cod

# Compile to native
java -jar coderive.jar --native program.cod
Enter fullscreen mode Exit fullscreen mode

Join the Discussion

I'm convinced quantifier-first logic is the future, but I want to hear from you:

· Would you use a language without && and ||?
· What other traditional syntax could be improved?
· Have you built anything in unconventional environments?

Check out the project: Coderive on GitHub

Let's rethink programming together! 🚀

Top comments (0)