HN user

gdotdesign

282 karma
Posts9
Comments89
View on HN

Initially I didn't see the value in React. I thought that the whole virtual DOM compiling on every change was a waste of resources instead of just doing the change itself directly.

But as it turns out it's a great abstraction worth using for the right things (not every part of the web) and one of those are Single Page Applications.

A lot of comments here are about people linking JSX instead of React and that's a good abstraction too. In Mint (https://mint-lang.com/) I'm trying to create a language for SPAs and having HTML syntax helps.

The pessimistic one is that most of what needed building gets built, and the remaining work fits in fewer hands.

I don't think that's true, mainly because if it were true it would have happened a long time ago. We will never settle on one version of a thing (let it be messaging, recipes, notes, image galleries, etc...). New variants emerge over time, the only thing AI does is accelerate this.

Thanks :)

I didn't make those threads, so the title choices were mine. I'll do a proper Show HN with 1.0 sometime, maybe with can switch it with that then.

It's very similar to Mint (https://mint-lang.com/) which I'm building for some time now.

Looking at the samples, it seems Ripple is going the same direction as Mint:

- explicit component definitions

- inlined control flow in HTML tags

- component based styling

- explicit white space handling for element content

- syntax for setting references

I'm not sure why they based it on TypeScript instead of creating a new language completely, since there are a lot of new syntax added (and they have their own extension as well).

If you are looking for something similar, give Mint a try, it has a lot more features, and I'm looking to release 1.0 in the near future.

I'm still waiting to evaluate Zed because I work with/on my programming language which has LSP Semantic Highlighting, but Zed doesn't https://github.com/zed-industries/zed/pull/39539 once it's merged I'll give it a go because it looks like a modern Sublime Text (which I still use). I just wish they would focus on basic editor features instead of adding AI and other non-related features.

- There is a single root dependency somewhere which gets overtaken

- A new version of this dependency is published

- A CI somewhere of another NPM package uses this new version dependency in a build, which trigger propagation by creating a new modified version of this dependency?

- And so on...

Am I getting this right?

1. Inside style blocks it's pretty much regular CSS except for interpolation and if/case expressions, so you can create a style for the root element and then use ids and classes if you desire, but it won't be optimized.

2. CSS definitions without interpolation compile down to static CSS while the ones with interpolation compile down to CSS variables which are set on the element where the style is assigned. This also allows for passig arguments to styles [0].

CSS nesting is supported and the interpolation doesn't conflict with the id selectors because interpolation is not supported in selectors.

[0] https://mint-lang.com/reference/styling/arguments

I think I managed to combine three languages in one with Mint (https://mint-lang.com/):

1. There is HTML (tags) with, but without interpolation {...} you can put string literals, variables and everything that type checks as HTML children.

2. There is CSS but only in style blocks where you can interpolate any expression you need and put in if and case expressions too.

3. There is the normal Mint code you write the logic in (this would be the JavaScript in other languages).

Here is an example which have all three: https://mint-lang.com/examples/7guis/flight-booker

The challenge was to make it seamless enough that so it doesn't look like that we tried to mash languages up, but to make them form a different language that is consistent and simple at the same time.

Lovin' this! Though I'm not a fan of the design but like the spirit of it.

I can't fathom why we can't have a modern car with analog displays and switches in the cockpit.

I own a 25 years old car which only has a digital radio (removeable!) and that's it, perfectly enough.