Live data from Hacker News

NoiseLang: Where N = 5 is a Dirac delta

manualmeida.dev

31–40 of 57 posts

Re: NoiseLang: Where N = 5 is a Dirac delta

#33

Earlier quoted context omitted.

Very cool. I have a couple of questions: 1. It's obvious that you are a big fan of Cranelift. I'd be interested to hear more about your experience in practical terms. For example could you share any insight about use cases where it is best suited, and where it might be better to look elsewhere? Did you hit any pain points? What was its killer feature for NoiseLang? 2. You wrote: "My favorite trick is in the RNG. Gene…

I was exploring ways to speed up this language, the naive implementation is just a interpreter executed in rust, which can just do so much. Once thing i explored was to compile the program graph into WASM, then execute WASM. The idea is the the WASM runtime would JIT program and run faster than any interpreter I could write myself. During this exploration, i found that I could use the JIT optimizer directly and skip…

Surely SIMD combined with multiple streams would beat both approaches. (This would be separate streams in each SIMD lane and separate streams in different SIMD variables.) There are multiple SIMD execution units, just like the 6 scalar units you mention. The latency of SIMD ops will be similar to scalar, except in cases you mention like shifts.

Re: NoiseLang: Where N = 5 is a Dirac delta

#34

Interestingly, shading languages started out like this - way before consumer GPUs. I remember encountering this idea written in a book written by Ed Catmull of Pixar fame (can't find the title sorry, but it was written in the 80s), but generally comes from signal processing as a way of avoiding aliasing artifacts.. The core idea is to make programming, which is a discrete and discontinuous domain, into a well-behaved…

I don't know JAX, but can this trick be applied as a higher-level function to autodiff-capable languages like JAX?

Re: NoiseLang: Where N = 5 is a Dirac delta

#35
post #14

Earlier quoted context omitted.

Be warned - by using AI like this you've made yourself a lightning rod for the people who really really really dislike AI.

I know haha I wanted to be transparent about this, I have been coding since 9 years old, 32 years old now. I have nothing to prove other than it would have been impossible for me find time to complete this project without help, also a Toy language. Not trying to replace anything people use today :) it's a cute project

Yeah. :)

Since the advent of AI I have been delighted by the number of old project ideas I've been able to execute. There are just too many ideas to implement them all by yourself - but AIs don't seem to mind in the least.

It's a brave new world.

Re: NoiseLang: Where N = 5 is a Dirac delta

#36

I started this about 9 years ago and never finished it. The idea comes from a course in my telecom degree called "Señales Aleatorias y Ruido" (Random Signals and Noise), I spent so many evenings writing probability by hand, and every time I wanted to check a result with a computer it was a ton of boilerplate. The engine is Rust, the JIT is built on Cranelift, there is also a WASM backend so everything runs in the bro…

how much did Ai cost for you?

Claude Max Plan honestly is kind of endless, I have a old game written in MRC Objectice-C that i am porting to something more modern, and still within the limits of the flat subscription... not sure for how long this will last

Re: NoiseLang: Where N = 5 is a Dirac delta

#37
post #28

I'd have just written this as a Python library that lazily evaluates expression via numpy personally. The API is useful, language is not

People do this kind of computation using numpy all the time. If you weren’t developing a new language with a new syntax, there really isn’t much of a library to write. At that point it’s just using numpy.

the language can do a lot of very expressive things, every language feature works in your favor too, but agree with you, i would not use my own language for anything production.

like this:

D ~ unif_int(1, 6); Print("P(rolled a 6 | rolled > 3) =", P(D == 6 | D > 3));

or:

loss ~ unif(0, 1000); claim = if loss > 200 { loss - 200 } else { 0 }; p = P(claim > 0); Print("P(insurer pays a claim) =", p)

notice that "claim" is also a random variable! result of a if expression

Re: NoiseLang: Where N = 5 is a Dirac delta

#38

Earlier quoted context omitted.

mmmh i can't see the domain blocked in the list, it's my personal blog, i don't even have tracking other than server-side stats. could it be because using netlify dns?

Firstly, I'm not intending any slight on you personally! In fact this might be more of an issue for you interacting with the site than for people just reading an article. There are multiple versions of the list. The authoritative site appears to be https://github.com/hagezi/dns-blocklists , and making a fairly random choice, I used the "medium" version of the "Threat intelligence feed", and specifically the one marke…

Sent issue: https://github.com/hagezi/dns-blocklists/issues/10759

Re: NoiseLang: Where N = 5 is a Dirac delta

#39

Earlier quoted context omitted.

how much did Ai cost for you?

Claude Max Plan honestly is kind of endless, I have a old game written in MRC Objectice-C that i am porting to something more modern, and still within the limits of the flat subscription... not sure for how long this will last

so 200$

Re: NoiseLang: Where N = 5 is a Dirac delta

#40

I started this about 9 years ago and never finished it. The idea comes from a course in my telecom degree called "Señales Aleatorias y Ruido" (Random Signals and Noise), I spent so many evenings writing probability by hand, and every time I wanted to check a result with a computer it was a ton of boilerplate. The engine is Rust, the JIT is built on Cranelift, there is also a WASM backend so everything runs in the bro…

I built a small one of these as a calculator back in the day, it was fun and I always wanted to see someone really run with the idea more, so your project is super cool!

Did you ever look at symbolic or exact operators instead of purely monte-Carlo?

I remember reading the paper for distr, they used a mix of Fourier transforms for convolution and symbolic reduction to build a probabilistic computing library in R. I attempted building a small python library for this, but for my problems the CLT ended up sufficient to approximate the results faster, so I went with that.

You may enjoy reading the paper, it’s not groundbreaking but is a nice presentation of relationships/operations. Maybe it’ll inspire some features for you.

https://arxiv.org/pdf/1006.0764

Post reply on HN