Hacker Newsnew | past | comments | ask | show | jobs | submit | solomonb's commentslogin

I run a LPFM radio station here in Los Angeles.

https://www.kpbj.fm/

There are many more LFPMs out there too!


You could take it to the next level and build a part 15 compliant FM transmitter kit.

For those curious, the relevant FCC regs. Generally:

Unlicensed operation on the AM and FM radio broadcast bands is permitted for some extremely low powered devices covered under Part 15 of the FCC's rules. On FM frequencies, these devices are limited to an effective service range of approximately 200 feet (61 meters). See 47 CFR (Code of Federal Regulations) Section 15.239, and the July 24, 1991 Public Notice (still in effect). On the AM broadcast band, these devices are limited to an effective service range of approximately 200 feet (61 meters). See 47 CFR Sections 15.207, 15.209, 15.219, and 15.221. These devices must accept any interference caused by any other operation, which may further limit the effective service range.

<https://www.fcc.gov/media/radio/low-power-radio-general-info...>

More on the regs: <https://www.fcc.gov/general/oet-bulletins-line#63>

Another option, addressed at the first link, is "carrier current" broadcasts, which transmit through (building) power lines.

There is also the option of a (licensed) low-power FM transmitter (LPFM), "available to noncommercial educational entities and public safety/travelers' information entities, but not individuals or commercial operations".

LPFM is not to be confused with microbroadcasting, though I'm not clear on just what that entails myself. I'm vaguely aware of some efforts to enable lawful very-low-power broadcasts at the community level, though that's had strong pushback from traditional broadcasters, including NPR in the US.

There are some Part 15 compliant transmitters and information listed here:

<https://www.hobbybroadcaster.net/resources/Part-15-transmitt...>


To my knowledge there is no legal way to do unlicensed carrier current transmission. Do you have information otherwise? I've always wanted to try it..

The Part15 regulations for AM and FM are more subtle then what you present here. On FM it is based on field strength readings, the exact values of which escape me, but yielding roughly the range you describe.

For AM the rules are more interesting. You can have up to a 3m antenna length and 100mW of DC power input to the final stage of amplification. The optimal setup is a class E amplifier with ~95-99% efficiency into a properly grounded 3m base loaded vertical antenna. The antenna will be grossly undersized but you try to compensate with a huge loading coil. In ideal conditions this setup can get you about 0.5km range.

LPFM is a much more significant undertaking and it is not trivial to get an LPFM license. I know because I have one :)


Quoting the FCC link above:

"Carrier Current stations and Campus Radio stations do not require a license to set up and operate."

(Emphasis added.)

<https://www.fcc.gov/media/radio/low-power-radio-general-info...>


Interesting! The rules for AM carrier current appear to be more similar to the FM rules, that is they are based on field strength readings that result in a roughly 200ft range.

There is probably a bunch of subtlety about where you measure from as your antenna could be quite large.


Personally I don't want to read the codebase AND book of someone 3 weeks into a mania focused on a subject it is unclear they have any prior experience with. Its disrespectful for someone to think they can produce something worthy of consuming another human's time under those constraints.

As someone genuinely interested in programming language design, type theory, and category theory this sort of thing really saddens me. There is so much passion and rigor that has gone into developing these fields. Chucking all their jargon into an ai slop blender, imo, is actually incredibly disrespectful to those who have worked so hard.

Imagine someone honestly interested in learning about category theory but not yet knowing where to start. Projects like this only serve to muddy the waters obscuring paths to actual learning and giving the impression that the subject is a joke.


How does `refl` work if its not even dependently typed?

Had some edits I made halfway through, so I was a bit hasty. It is dependently-typed in that the only valid codomain of a \Pi type is the identity type, Sigma, or another Pi. You can substitute variables, so Id can contain terms, but an arbitrary Pi type like:

\Pi (x : A) (y : B x), C x y

is not allowed. See the Ty definition here: https://github.com/yon-language/yon/blob/aa4617ced3abc92ac53.... Id is the only constructor of Ty that is indexed by a Term (there is another one, TyEl, but it is used nowhere in the type-checker).

This means I could not supply an arbitrary user-defined function (e.g., Fam : (x : A) -> Ty)) as the codomain, only the identity type, which is severely limiting.

I suspect this is why the only example I could find from the docs of dependent types was the Id example above.

I apologize for the poor wording. I didn't sleep well last night.

Do also take this critique with a grain of salt, since the codebase is very much obfuscated and the docs are quite vague.


I respect you for taking the time to review this codebase. Personally I don't want to do that. It sounds like a mess.

Yeah it really is a mess. One of the most egregious things I noticed was that variables under lambdas are STRINGS: https://github.com/yon-language/yon/blob/aa4617ced3abc92ac53...

This is extremely dangerous and error prone. The classic example is: (fun (x : number) (y : number) => x) y once y is substituted for x, x now refers to y, which is bound later.

This is usually avoided with Debruijn indices (https://en.wikipedia.org/wiki/De_Bruijn_index). That function becomes:

(fun (_ : number) => (_ : number) => 2) y

Lambda binders refer to variables via an offset relative to the position of the variable. However, Yon doesn't do this. It uses strings. The usual approach to make this sound is alpha renaming (which is by default very easy to mess up and introduce bugs). However, Yon's alpha renaming algorithm has a critical error:

https://github.com/yon-language/yon/blob/aa4617ced3abc92ac53...

Notice that substitution under lambdas checks that the "fresh" name for the bound variable does not appear in the free variables under the lambda body (https://github.com/yon-language/yon/blob/aa4617ced3abc92ac53...). However, scopes don't check this at all. https://github.com/yon-language/yon/blob/aa4617ced3abc92ac53...

This is a critical, foundational bug that is easily avoided with DeBruijn indices. DeBruijn indices are widely used across all proof assistants. This oversight is absolutely due to a lack of understanding of type theory.


I gave chatgpt 3.5 the type signature for a co-algebraic encoding of a mealy machine:

    newtype Mealy s i o = Mealy { runMealy :: (s, i) -> (s, o) }
And it gave a really impressive analysis.

Then I scrambled all the names and asked with a fresh context like:

    newtype Foo z e g = Bar { blob :: (z, e) -> (z, g) }
It got completely confused and generated a bunch of non-sense. It was at that moment I realized that LLMs don't really understand anything.

And yes I understand that a newer model would not get confused by this.


In high school math class our teacher swapped out all the symbols in the epsilon delta definition of limits, and asked us what this equation expresses, and many students struggled to interpret it.

I don't think this test shows that an LLM doesn't "understand". It shows more that it has similar failure modes as humans.


Well first of all I think there is more implicit data encoded in the symbols of the epsilon delta definition of limits. In the Mealy example they really just labels for arbitrary sets. The LLM actually failed a much simpler relabeling exercise. Setting that aside, I still think the analogy is flawed.

The student is mid learning process and its entirely reasonable for them one to be relying on pattern recognition until they have fully internalized the subject. The model is fully trained and should thus have internalized their understanding of the subject.

Additionally the student can update their understanding when pattern recognition fails. The model is fully cooked and will never do more then pattern recognition.


>The model is fully cooked and will never do more then pattern recognition.

The correct answer to this is "Thank fucking god".

Humanity as a whole is not ready for continuous learning models. They'd either learn very fast and actually place people at their jobs and cause mass hardships for humans, or they'd go off the alignment rails really fast and cause mass hardships for humans.

Hopefully we'll get a nice steady onramp to continuous learning where we can iron these issues out.


Its amazing that after years of advocating for a materialist view of the mind, the tech bros are flipping to mind-body dualism now that they need to believe a concious mind can exist no body at all.

It's worse than that; it's mind-body dualism when arguing that an AI can be conscious, but still materialist when arguing that humans are simply more complex neural nets. It's not a coherent viewpoint.

I haven't used CQL but this is how the advantages have been described to me as well.

I would be interested in hearing from framework users who have gone through upgrade cycles on their laptops. General experiences with the process but also the costs.

I had the first gen framework but had to return it to my old employer so I never went through an upgrade cycle.

Also, this may be specific to the first generation but I had terrible battery life and overheating issues. If that carried over through upgrade cycles I would be pretty bummed out.


I love learning about computers, programming, and math so much. I actually got into tech as a career pretty late. For many years I worked as a art fabricator/carpenter in the art world.

I only got good enough at programming to get a job in tech because I became obsessed with the Curry-Howard Correspondence as a backdoor into learning math.

I've always had a wide array of interests. I live on a half acre property with a giant garden and a shop that is bigger then my actual house. I've always split my free time between exploring and learning about computers, gardening, radios, and carpentry, fixing old machines, etc.

The shift in my lived work experience with AI has substantially demotivated me from programming and computers in my free time. A million times over I would rather pull weeds or clean my Bridgeport mill.

I've always wished I could go back to a 1990s experience where the computer lived in the den, the internet was only somewhat monetized, the future was utopian.

OP's plan to fallback to 1980s era technology is appealing but also somewhat depressing. Not only do I really like and enjoy learning about computers, but also making this kind of individualistic decision doesn't really get us to a better place as a society.

I wish we had heeded the warnings of researchers like Sherry Turkle who identified the impacts of technology on the individual as far back as the 1980s.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: