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

Hm, interesting. With how slow the testimonial carousel on the web page is though, I don't have much confidence that Carbon is performant either. How many pieces of that (frankly massive) techstack require dedicated network trips?


We try to hit the cache as much as possible, and all fetching is done in parallel with Remix. We try to make heavy use of their defer function to only block on the most important data, and await the other data. Remix has the option to merge all parallel requests into a single fetch, but it didn't work for us because we use a hybrid strategy for hosting (where the most common pages are served from v8 edge functions and the less common stuff is served by node functions). The reason we don't put everything (basically) into the edge runtime is because vercel only gives you 2MB of code in the edge runtime before you have to pay HUGE money. But I've definitely put a lot of thought into the performance, so I hope it's great.

I'm surprised the carousel is slow, it's just framer motion. https://github.com/crbnos/www/blob/24d2b59150fc21e6b9c9df3b4...


EDIT: i'm going to remove the framer motion -- you're right. it's not helping. i've also got to optimize these images, but that's for another day.


I use it basically as the beginning of a pipe, where I want to process, for example, a String, but I have to start the pipe with an IO String.

Simplest example, I have would be to read something from a file and apply some function `f :: String -> String` to the contents of the file, and return an IO String again. Let's say that overarching function is called readFileAndProcess, then it could be defined like

`readFileAndProcess :: (String-> String) -> String -> IO String`

`readFileAndProcess f fileName = putStrLn . f <=< (readFile fileName)`


The "neat" thing about a config like that is to use incredibly basic programming things, like simply having variables, lists/arrays, arithmetic, string manipulation, etc..

As a basic example, I could have a list of basic packages that I want on all of my machines, and then depending on which machine my config is being deployed to, I might extend or shrink that list using actual code, because that list is represented as a an array or a linked list and I can directly manipulate that (though, at least in Nix I think everything's immutable, so you would technically only use that initial list to create a new list from it).


This is one of the big things I love about Haskell. Its way of making effects explicit and easy to spot in the function signature always struck me as insanely useful for exactly those reasons (though, obviously, it goes a step further where every function always has to return something, even if it is an effect or an effected state). In retrospect, I wish Rust had adopted something like this since it took a lot of inspiration from Haskell anyways, but I am very glad that there are people like you out there that are trying to remind people of this insanely useful concept of making effects more explicit!

Wish you all the best with Bagel!


> In retrospect, I wish Rust had adopted something like this since it took a lot of inspiration from Haskell anyways

Aside from the traits (typeclasses), most of the inspiration actually comes from OCaml/ML rather than Haskell. The philosohpy is also way closer to the pragmatism of OCaml. I think Rust wouldn't be as popular as it is right now if IO needed a monad, like in Haskell. This would have been too much for a single language. I also don't think that monadic IO is the way. Maybe effects system will bring a more usable way of typing effects (Koka, OCaml soon), but I doubt that they'll come to Rust.


I agree, and I intend for Bagel to be a pragmatic language (striking a balance between idealism and pragmatism very similar to what Rust strikes), which is why I'm not going the monad route. I believe that the combination of the functional subset + reactivity to any state that does exist will get you 90% of the benefits without the learning curve


It's a bit more friendly than that (according to TJ DeVries from the Neovim team). It's more like both teams bouncing ideas off of one another and inspiring each other. And that can result in one release or another just looking like implementing features from the other project.


So, I haven't read the paper, and maybe they go into this there, but I wonder whether this approach runs into the same problem any potential graphene-based technology seems to run into, which is synthesising graphene sheets at a scale to make this actually market-viable seems nigh impossible. Maybe there's some other breakthrough I'm not aware off, but my general perception so far is that most applications for graphene always run into this problem where it works incredibly well on paper and in small-scale experiments, but we cannot scale things up because growing graphene at larger scales is a giant hurdle.

If anyone here has more up-to-date info to share, I would be very grateful, obviously.

If that can be overcome, this tech here sounds AWESOME though. Props to these fine individuals working on this project.


A direct hit with the sun? Maybe slightly higher temperatures if the "impact site" was facing us, but not for long because the sun is highly convective and each "longitudinal ring" on the sun rotates differentially, thus dissipating the effects of that impact very very quickly. A good chunk of it would also probably burn up before even reaching the Sun, but how much of it is hard to say.

But keep in mind, it says "within 11 AU of the Sun", which is still beyond Saturn; Saturn's 9.5 AU away from the Sun, and Uranus is about 19 AU away from the Sun. So it's still pretty far away.


>> Income taxes for corporations all disappear when the corporation reaches a given size

> Could you explain why this is the case?

Just to comment on this real quick, this has multiple reasons. Basically, the larger your company is, the more funds you have to spend on lawyers and experts, as well as offshoring. Also, depending on the country you're in and the specific tax laws, it might be easier to fulfill incentives for nullifying the corporate tax (IIRC reinvesting and creating jobs is how Amazon nullifies a good chunk of their taxes, right?). That is not to say, we should completely axe corporate tax imo, because some of those incentives are really good. You want corporations in your country to reinvest and create jobs, because that's overall a really good thing for the job market.

The thing about Bezos' wealth is that a huge chunk (maybe even the majority) of it is already in the form of assets. That's not as easily moved overseas (though to my limited understanding it isn't impossible) without hurting his own company, and at that point it might be profitable to just pay a wealth or asset tax or something like that. Obviously that would need to be designed REALLY well, but there's a good chance that that's how we can tax exactly what we want to tax, without hurting small businesses and without hurting the lower class.


There was this one time where in some city in the US, cannot remember which, there was a city wide power outage, and some people were freaking out because they've never seen a non-polluted sky before.


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

Search: