frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
214•isitcontent•12h ago•25 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
319•vecti•14h ago•141 comments

Show HN: I built a free UCP checker – see if AI agents can find your store

https://ucphub.ai/ucp-store-check/
2•vladeta•24m ago•1 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
271•eljojo•15h ago•159 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
69•phreda4•12h ago•13 comments

Show HN: Smooth CLI – Token-efficient browser for AI agents

https://docs.smooth.sh/cli/overview
90•antves•1d ago•66 comments

Show HN: ARM64 Android Dev Kit

https://github.com/denuoweb/ARM64-ADK
16•denuoweb•1d ago•2 comments

Show HN: Compile-Time Vibe Coding

https://github.com/Michael-JB/vibecode
9•michaelchicory•1h ago•1 comments

Show HN: Slack CLI for Agents

https://github.com/stablyai/agent-slack
47•nwparker•1d ago•11 comments

Show HN: Artifact Keeper – Open-Source Artifactory/Nexus Alternative in Rust

https://github.com/artifact-keeper
150•bsgeraci•1d ago•63 comments

Show HN: Gigacode – Use OpenCode's UI with Claude Code/Codex/Amp

https://github.com/rivet-dev/sandbox-agent/tree/main/gigacode
17•NathanFlurry•20h ago•7 comments

Show HN: Slop News – HN front page now, but it's all slop

https://dosaygo-studio.github.io/hn-front-page-2035/slop-news
8•keepamovin•2h ago•2 comments

Show HN: Fitspire – a simple 5-minute workout app for busy people (iOS)

https://apps.apple.com/us/app/fitspire-5-minute-workout/id6758784938
2•devavinoth12•5h ago•0 comments

Show HN: Horizons – OSS agent execution engine

https://github.com/synth-laboratories/Horizons
23•JoshPurtell•1d ago•5 comments

Show HN: I built a RAG engine to search Singaporean laws

https://github.com/adityaprasad-sudo/Explore-Singapore
4•ambitious_potat•6h ago•4 comments

Show HN: Daily-updated database of malicious browser extensions

https://github.com/toborrm9/malicious_extension_sentry
14•toborrm9•17h ago•7 comments

Show HN: Sem – Semantic diffs and patches for Git

https://ataraxy-labs.github.io/sem/
2•rs545837•7h ago•1 comments

Show HN: Micropolis/SimCity Clone in Emacs Lisp

https://github.com/vkazanov/elcity
172•vkazanov•2d ago•49 comments

Show HN: BioTradingArena – Benchmark for LLMs to predict biotech stock movements

https://www.biotradingarena.com/hn
25•dchu17•17h ago•12 comments

Show HN: Falcon's Eye (isometric NetHack) running in the browser via WebAssembly

https://rahuljaguste.github.io/Nethack_Falcons_Eye/
4•rahuljaguste•11h ago•1 comments

Show HN: FastLog: 1.4 GB/s text file analyzer with AVX2 SIMD

https://github.com/AGDNoob/FastLog
5•AGDNoob•8h ago•1 comments

Show HN: Local task classifier and dispatcher on RTX 3080

https://github.com/resilientworkflowsentinel/resilient-workflow-sentinel
25•Shubham_Amb•1d ago•2 comments

Show HN: Gohpts tproxy with arp spoofing and sniffing got a new update

https://github.com/shadowy-pycoder/go-http-proxy-to-socks
2•shadowy-pycoder•9h ago•0 comments

Show HN: I built a directory of $1M+ in free credits for startups

https://startupperks.directory
4•osmansiddique•9h ago•0 comments

Show HN: A Kubernetes Operator to Validate Jupyter Notebooks in MLOps

https://github.com/tosin2013/jupyter-notebook-validator-operator
2•takinosh•10h ago•0 comments

Show HN: A password system with no database, no sync, and nothing to breach

https://bastion-enclave.vercel.app
11•KevinChasse•17h ago•16 comments

Show HN: GitClaw – An AI assistant that runs in GitHub Actions

https://github.com/SawyerHood/gitclaw
9•sawyerjhood•18h ago•0 comments

Show HN: 33rpm – A vinyl screensaver for macOS that syncs to your music

https://33rpm.noonpacific.com/
3•kaniksu•11h ago•0 comments

Show HN: Chiptune Tracker

https://chiptunes.netlify.app
3•iamdan•11h ago•1 comments

Show HN: Craftplan – I built my wife a production management tool for her bakery

https://github.com/puemos/craftplan
567•deofoo•5d ago•166 comments
Open in hackernews

Show HN: Coderive – Iterating through 1 Quintillion Inside a Loop in just 50ms

https://github.com/DanexCodr/Coderive
8•DanexCodr•1mo ago
Author: Danison Nuñez Project: Coderive Project Type: Programming Language Highlight: Formula-based Execution

## Coderive - Iterating Through 1 Quintillion in a Loop

*Subtitle: How a phone interpreter achieves what supercomputers cannot*

The Impossible Loop:

```java // In any other language, this would be computational suicide for i in [0 to 1Qi] { // 1,000,000,000,000,000,000 iterations arr[i] = i * i } ```

Traditional Reality:

· Python: MemoryError at array creation · Java/C++: Theoretical 31 years (with 8 exabytes of RAM) · NumPy/TensorFlow: Immediate crash · GPU Computing: 80GB VRAM limit exceeded

Coderive's Reality: 50 milliseconds.

The Magic Behind It:

1. NaturalArray: Virtual arrays that store formulas, not data 2. Runtime Pattern Detection: Transforms loops to mathematical expressions 3. Lazy Evaluation: Computes only what's accessed 4. Formula Storage: LoopFormula, ConditionalFormula, MultiBranchFormula

Technical Deep Dive:

```java // What you write: for i in [0 to 1Qi] { if i % 2 == 0 { arr[i] = i * i } elif i % 3 == 0 { arr[i] = i * i * i } else { arr[i] = i } }

// What Coderive creates internally: arr.addMultiBranchFormula( conditions: [i%2==0, i%3==0], expressions: [ii, iii], elseExpr: i, range: [0, 1Qi] ) ```

The Optimization Pipeline:

``` User Code → Pattern Detection → Formula Creation → Lazy Evaluation ↓ ↓ ↓ ↓ O(n) O(1) O(1) O(1) per access ```

Complete Pattern Coverage:

· Simple Transformations: arr[i] = f(i) → LoopFormula · Binary Decisions: if-else → ConditionalFormula · Multi-way Branches: if-elif-else → MultiBranchFormula · Partial Updates: if-only with implicit else preservation

Real-World Impact:

```java // Process every pixel in 8K video (≈33 million frames) for frame in [0 to 33M] { for pixel in [0 to 7680

4320] { // 33 million frames × 33 million pixels if brightness > 128 { pixels[pixel] = 255 } elif brightness > 64 { pixels[pixel] = 128 } else { pixels[pixel] = 0 } } } // Traditional: Impossible // Coderive: Seconds, not centuries ```

The Secret Sauce:

· No data movement (arrays stay virtual) · No parallel programming (formulas are inherently parallel) · No memory management (O(1) memory complexity) · No specialized hardware (runs on Java 7)

Conclusion: Coderive doesn't just make loops faster—it redefines what's computationally possible on commodity hardware.

Check Coderive now at: [https://github.com/DanexCodr/Coderive](https://github.com/DanexCodr/Coderive)

Comments

onion2k•1mo ago
I'm intrigued about how you're loading a 13.66 days long 8K video into memory to be able to process all the pixels in 50ms...
DanexCodr•1mo ago
// Other sample

collatz := [1 to 1T] for n in collatz { steps := 0 current := n while current != 1 { current = if current % 2 == 0 { current/2 } else {3*current + 1} steps += 1 } collatz[n] = steps }

// On my phone, I can instantly check: outln("27 takes " + collatz[27] + " steps") // 111 steps outln("871 takes " + collatz[871] + " steps") // 178 steps

onion2k•1mo ago
That doesn't explain anything.
DanexCodr•1mo ago
You've highlighted exactly why my example was poorly chosen - it sounds physically impossible. Let me explain what's actually happening:

We're NOT loading 13.66 days of 8K video. That would indeed be ~2.5 petabytes.

What we are doing is creating a virtual processing pipeline that could process that much data if you had it, but instead processes only what you actually need.

The Actual Code Behind This:

```java // 1. Virtual reference, NOT loading video := virtual_source("8k_video.mp4") // O(1) memory - just metadata

// 2. Algorithm expressed at full scale for frame in [0 to 33M] { // VIRTUAL: 33 million frames for pixel in [0 to 33M] { // VIRTUAL: 33 million pixels brightness = calculate_brightness(pixel) // FORMULA, not computation

        // Creates conditional formula
        if brightness > 128 {
            pixels[pixel] = 255
        } elif brightness > 64 {
            pixels[pixel] = 128  
        } else {
            pixels[pixel] = 0
        }
    }
}

// 3. Only compute specific frames (e.g., every 1000th frame for preview) for preview_frame in [0, 1000, 2000, 3000] { actual_pixels = video[preview_frame].compute() // Only NOW computes display(actual_pixels) // These 4 frames only } ```

What Actually Happens in 50ms:

1. 0-45ms: Pattern detection creates optimization formulas 2. 5ms: Compute the few frames actually requested 3. 0ms: Loading video (never happens)

Better, More Honest Example:

A real use case would be:

```java // Video editing app on phone // User wants to apply filter to 10-second clip (240 frames)

clip_frames := video[frame_start to frame_end] // 240 frames, virtual filter := create_filter("vintage") // Filter definition

// Design filter at full quality for frame in clip_frames { frame.apply_filter(filter) // Creates formula application }

// Preview instantly at lower resolution preview = clip_frames[0].downsample(0.25).compute() // Fast preview

// Render only when user confirms if user_confirms { for frame in clip_frames { output = frame.compute_full_quality() // Now compute 240 frames save(output) } } ```

The Real Innovation:

Separating algorithm design from data scale.

You can:

· Design algorithms assuming unlimited data · Test with tiny samples · Deploy to process only what's needed · Scale up seamlessly when you have infrastructure

My Mistake:

The '50ms for 937 billion pixels' claim was misleading. What I should have said:

'50ms to create a processing algorithm that could handle 937 billion pixels, then instant access to any specific pixel.'

The value isn't in processing everything instantly (impossible), but in designing at scale without scale anxiety.

schobi•1mo ago
I'm confused by the claims..

You try to compute something that supercomputer can't - by not computing it? Instead the formula is stored in a data structure. But once you need to access all the values you still have something that does not fit the memory and needs to be computed.

I can't judge on the Java side, but suggest to pick a better example on how this can be useful.

DanexCodr•1mo ago
it only compute what was needed on the right time. See this output for example:

Enter file path or press Enter for default [/storage/emulated/0/JavaNIDE/Programming-Language/Coderive/executables/LazyLoop.cod]: > Using default file: /storage/emulated/0/JavaNIDE/Programming-Language/Coderive/executables/LazyLoop.cod Testing timer() function: Timer resolution: 0.023616 ms

Testing condition evaluation: 2 % 2 = 0 2 % 2 == 0 = true 3 % 2 = 1 3 % 2 == 0 = false 24000 % 2 = 0.0 24000 % 2 == 0 = true

Conditional formula creation time: 2.657539 ms

Results: arr[2] = even arr[3] = odd arr[24000] = even arr[24001] = odd

=== Testing 2-statement pattern optimization === Pattern optimization time: 0.137 ms arr2[3] = 14 (should be 33 + 5 = 14) arr2[5] = 30 (should be 55 + 5 = 30) arr2[10] = 105 (should be 1010 + 5 = 105)

Variable substitution time: 0.064384 ms arr3[4] = 1 (should be 4

2 - 7 = 1) arr3[8] = 9 (should be 82 - 7 = 9)

=== Testing conditional + 2-statement === Mixed optimization time: 3.253846 ms arr4[30] = 30 (should be 30) arr4[60] = 121 (should be 60

2 + 1 = 121)

=== All tests completed ===

---

From:

unit test

share LazyLoop { share main() { // Test timer() first - simplified outln("Testing timer() function:") t1 := timer() t2 := timer() outln("Timer resolution: " + (t2 - t1) + " ms") outln()

        arr := [0 to 1Qi]
        
        // Test the condition directly
        outln("Testing condition evaluation:")
        outln("2 % 2 = " + (2 % 2))
        outln("2 % 2 == 0 = " + (2 % 2 == 0))
        outln("3 % 2 = " + (3 % 2))
        outln("3 % 2 == 0 = " + (3 % 2 == 0))
        
        // Also test with larger numbers
        outln("24000 % 2 = " + (24K % 2))
        outln("24000 % 2 == 0 = " + (24K % 2 == 0))
        
        // Time the loop optimization
        start := timer()
        for i in [0 to 1Qi] {
            if i % 2 == 0 {
                arr[i] = "even"
            } elif i % 2 == 1 {
                arr[i] = "odd"
            }
        }
        loop_time := timer() - start
        outln("\nConditional formula creation time: " + loop_time + " ms")

        outln("\nResults:")
        outln("arr[2] = " + arr[2])
        outln("arr[3] = " + arr[3])
        outln("arr[24000] = " + arr[24K])
        outln("arr[24001] = " + arr[24001])
        
        // Test the 2-statement pattern optimization with timing
        outln("\n=== Testing 2-statement pattern optimization ===")
        
        arr2 := [0 to 1Qi]
        
        start = timer()
        for i in arr2 {
            squared := i * i
            arr2[i] = squared + 5
        }
        pattern_time := timer() - start
        outln("Pattern optimization time: " + pattern_time + " ms")
        
        outln("arr2[3] = " + arr2[3] + " (should be 3*3 + 5 = 14)")
        outln("arr2[5] = " + arr2[5] + " (should be 5*5 + 5 = 30)")
        outln("arr2[10] = " + arr2[10] + " (should be 10*10 + 5 = 105)")
        
        // Test with different variable names
        arr3 := [0 to 1Qi]
        
        start = timer()
        for i in arr3 {
            temp := i * 2
            arr3[i] = temp - 7
        }
        var_time := timer() - start
        outln("\nVariable substitution time: " + var_time + " ms")
        
        outln("arr3[4] = " + arr3[4] + " (should be 4*2 - 7 = 1)")
        outln("arr3[8] = " + arr3[8] + " (should be 8*2 - 7 = 9)")
        
        // Test that it still works with conditional
        outln("\n=== Testing conditional + 2-statement ===")
        
        arr4 := [0 to 100]
        
        start = timer()
        for i in arr4 {
            if i > 50 {
                doubled := i * 2
                arr4[i] = doubled + 1
            } else {
                arr4[i] = i
            }
        }
        mixed_time := timer() - start
        outln("Mixed optimization time: " + mixed_time + " ms")
        
        outln("arr4[30] = " + arr4[30] + " (should be 30)")
        outln("arr4[60] = " + arr4[60] + " (should be 60*2 + 1 = 121)")

        outln("\n=== All tests completed ===")
    }
}
DanexCodr•1mo ago
Most languages force you to choose: either compute everything upfront (O(n) memory) or write complex lazy evaluation code. Coderive gives you declarative intent with automatic optimization. You write what you mean (for i in [0 to 1Qi]), and the runtime figures out the optimal execution strategy. This is like having a JIT compiler that understands mathematical patterns, not just bytecode."
Validark•1mo ago
Why did you restrict yourself to mobile development only?
DanexCodr•1mo ago
it's because I only have a phone to use for coding. Tho, I am planning to make it more general. Mobile development is just one of the main goals of this language.
MobiusHorizons•1mo ago
> Conclusion: Coderive doesn't just make loops faster—it redefines what's computationally possible on commodity hardware.

I mean this as kindly as possible, but please don’t say things like this if you want to be taken seriously. Computer languages cannot possibly change what is possible on a given machine for the simple reason that whatever they are doing had to previously be possible in assembly on the same machine.

I don’t mean to overly discourage you. Lazy execution can be very useful, but it’s also not clearly new or hard to get in other languages (although it would require different syntax than an idiomatic for loop most of the time). It may help to try to pick an example where the lazy execution is actually exercised. Preferably one that would be hard for an optimizing compiler to optimize.

I would also not recommend claiming iteration if you also claim 50ms, since that’s clearly impossible regardless of memory consumption, so you have to optimize away or defer the work in some way (at which point iteration is no longer occurring).

For these examples, I think you would just express the code as a function taking i instead of pre-populating the array. This doesn’t seem hard at least for the provided examples, and has the benefit that it can be opted into when appropriate.

DanexCodr•1mo ago
yeah. I should have been more specific that it takes an imperative-like syntax and not actually iterate it internally but takes the formula it can use to process the loop much faster. Here is an actual output too:

Enter file path or press Enter for default [/storage/emulated/0/JavaNIDE/Programming-Language/Coderive/executables/LazyLoop.cod]: > Using default file: /storage/emulated/0/JavaNIDE/Programming-Language/Coderive/executables/LazyLoop.cod Testing timer() function: Timer resolution: 0.023616 ms

Testing condition evaluation: 2 % 2 = 0 2 % 2 == 0 = true 3 % 2 = 1 3 % 2 == 0 = false 24000 % 2 = 0.0 24000 % 2 == 0 = true

Conditional formula creation time: 2.657539 ms

Results: arr[2] = even arr[3] = odd arr[24000] = even arr[24001] = odd

=== Testing 2-statement pattern optimization === Pattern optimization time: 0.137 ms arr2[3] = 14 (should be 33 + 5 = 14) arr2[5] = 30 (should be 55 + 5 = 30) arr2[10] = 105 (should be 1010 + 5 = 105)

Variable substitution time: 0.064384 ms arr3[4] = 1 (should be 4

2 - 7 = 1) arr3[8] = 9 (should be 82 - 7 = 9)

=== Testing conditional + 2-statement === Mixed optimization time: 3.253846 ms arr4[30] = 30 (should be 30) arr4[60] = 121 (should be 60

2 + 1 = 121)

=== All tests completed ===

---

That is from this source:

unit test

share LazyLoop { share main() { // Test timer() first - simplified outln("Testing timer() function:") t1 := timer() t2 := timer() outln("Timer resolution: " + (t2 - t1) + " ms") outln()

        arr := [0 to 1Qi]
        
        // Test the condition directly
        outln("Testing condition evaluation:")
        outln("2 % 2 = " + (2 % 2))
        outln("2 % 2 == 0 = " + (2 % 2 == 0))
        outln("3 % 2 = " + (3 % 2))
        outln("3 % 2 == 0 = " + (3 % 2 == 0))
        
        // Also test with larger numbers
        outln("24000 % 2 = " + (24K % 2))
        outln("24000 % 2 == 0 = " + (24K % 2 == 0))
        
        // Time the loop optimization
        start := timer()
        for i in [0 to 1Qi] {
            if i % 2 == 0 {
                arr[i] = "even"
            } elif i % 2 == 1 {
                arr[i] = "odd"
            }
        }
        loop_time := timer() - start
        outln("\nConditional formula creation time: " + loop_time + " ms")

        outln("\nResults:")
        outln("arr[2] = " + arr[2])
        outln("arr[3] = " + arr[3])
        outln("arr[24000] = " + arr[24K])
        outln("arr[24001] = " + arr[24001])
        
        // Test the 2-statement pattern optimization with timing
        outln("\n=== Testing 2-statement pattern optimization ===")
        
        arr2 := [0 to 1Qi]
        
        start = timer()
        for i in arr2 {
            squared := i * i
            arr2[i] = squared + 5
        }
        pattern_time := timer() - start
        outln("Pattern optimization time: " + pattern_time + " ms")
        
        outln("arr2[3] = " + arr2[3] + " (should be 3*3 + 5 = 14)")
        outln("arr2[5] = " + arr2[5] + " (should be 5*5 + 5 = 30)")
        outln("arr2[10] = " + arr2[10] + " (should be 10*10 + 5 = 105)")
        
        // Test with different variable names
        arr3 := [0 to 1Qi]
        
        start = timer()
        for i in arr3 {
            temp := i * 2
            arr3[i] = temp - 7
        }
        var_time := timer() - start
        outln("\nVariable substitution time: " + var_time + " ms")
        
        outln("arr3[4] = " + arr3[4] + " (should be 4*2 - 7 = 1)")
        outln("arr3[8] = " + arr3[8] + " (should be 8*2 - 7 = 9)")
        
        // Test that it still works with conditional
        outln("\n=== Testing conditional + 2-statement ===")
        
        arr4 := [0 to 100]
        
        start = timer()
        for i in arr4 {
            if i > 50 {
                doubled := i * 2
                arr4[i] = doubled + 1
            } else {
                arr4[i] = i
            }
        }
        mixed_time := timer() - start
        outln("Mixed optimization time: " + mixed_time + " ms")
        
        outln("arr4[30] = " + arr4[30] + " (should be 30)")
        outln("arr4[60] = " + arr4[60] + " (should be 60*2 + 1 = 121)")

        outln("\n=== All tests completed ===")
    }
}
DanexCodr•1mo ago
You're right about hardware limits, but wrong about what's being 'redefined.' Coderive redefines developer productivity for certain computationally hard problems to solve:

Before Coderive: To explore 1 trillion cases, you'd need:

· A cluster of machines · Distributed computing framework (Spark/Hadoop) · More time for setup

With Coderive:

```java results := [1 to 1T] // Conceptually 1 trillion for i in results { results[i] = analyzeCase(i) } // Check interesting cases immediately ```

It's not about computing faster than physics allows. It's about thinking and exploring with ease without infrastructure constraints.

DanexCodr•1mo ago
just as a virtual machine is not an actual machine, what I meant about iteration is being a 'virtual iteration'.