carnot theorem does not put an absolute limit , a carnot cycle can have any efficiency as long as you have reservoirs hot and cold enough ,
besides that if you could be more efficient than carnots cycle at two temperature you can spontaneously extract heat from a cold object and out it in a hot object without any input energy , this would mean you can have perpetual motion . we are not just going to bump a kardashev scale , were going to truly max out and go beyond.
fun fact the U S patent office has been bogged down by so many perpetual motion applications they have made it policy to outright reject such applications without a working model satisfactorily demonstrating it
It is not a carnot cycle. It will NOT be able to pump heat, it's not a reversible cycle (it's not even a single cycle, it's a series of open-ended heat and pressure transformations). And using a heat-pump will also not make it a perpetual motion. Heat pump can be used as a kind of heat-transformer here, so if you have a lot of low temperature air (but higher than your ambient temp), you could use heat pump to gather energy from that air and present a higher-temperature air for my engine (losing some small amount of heat in the process, but heat pump will reuse heat wasted in it's own electric engine).
It should achieve such efficiency with air heated to 150C and ambient temp of 20C. If you heat air so that it expands more than 2x, it will start to lose efficiency.
BUT - this is all theoretical, I work on simulation that will confirm if it works. It might not, I might have made some big error in thinking how it works, but I searched for 15 years on some way this should not work. I contacted two physics professors specializing in thermodynamics and they couldn't find a way this won't work, both said "Yeah, but to tell more, we need prototype or simulation".
Zig structs are "modules" in themselves, apart from c like struct fields , they can have local variables, structs and functions declared and used inside of them .
The CPU can not remember an infinite number of branches. Also, many branches will increase code size. With exceptions the unwind tables and unwind code can be placed elsewhere and not take up valuable L1 cache.
> The CPU can not remember an infinite number of branches.
I suspect a modern CPU has a branch instruction saying "This branch will never be taken except in exceptions, so assume this branch is not taken". But I must admit I haven't seriously looked at assembly language for some time.
(EDIT: yes, modern CPUs including x86 and ARM allow the programmer/compiler to hint if a branch is expected to be taken).
> Also, many branches will increase code size.
I'd like to see some data on that. Of course branches take code size, but how much is that percentage-wise? I suspect not much.
You should take a look at the presentation I mentioned elsewhere in this thread. You also have to keep in mind that it's not only the branches that use space, but also the error handling code. Code which must be duplicated for every single call to a particular function.
Ok, thanks. But that code needs to be loaded into memory only if the branch takes place. Which, for exceptions, will be not often. The main assumption is: optimize for the common case, where exceptions are not the common case.
Julia's is high level yes, but Julia's semantics allow it to be compiled down to machine code without a "runtime interpretter" . This is a core differentiating feature from Python. Julia can be used to write gpu kernels.
The bond energy is also mass . Energy is mass , If you had a nuclear reactor surrounded by gas and this setup ran a turbine which compressed a humungous spring and this whole setup was completely sealed and sits on a gigantic weighing scale. You run the nuclear reactor, the spring compresses gaining potential energy, waste heat goes into the gas molecules as kinetic energy. As the reactor progresses converting "mass to energy" does the weighing scale become lighter ?
Well, weighing scale doesn't measure mass, it measures weight. It's just scales' UI converts it to kg/lb for usability, instead of showing N it actually measures (weight is a force, and force is measured in newtons).
I made an account on alphaxiv , seemed interesting to tune into discussions and comments on papers I'm interested in.
sadly the only active discussions are around LLM this and LLM that.
The alternative is not programming purely in the repl but to have an editor where you type out your code and from where you can send bits of text to the repl to run and get feedback. All major editors have plugins to do this.
I don't think it's fair to talk about "shortcomings" and "getting it right": it's a different approach and we must agree that personal preference will diverge.
Personally, I tend to use action-selection for small changes (1 to 3 objects), and selection-action for larger ones (as my brain, I've learned, becomes slower at counting above 3). So "delete 2 words" will be "2dw", but to delete the next 5 words I'll reach out for "v".
It's the same for selections, but motions are a little different. To use an example from above, d) is "up to" the next sentence (excludes the first character of the next sentence), while v)d moves the cursor onto that first character and so includes it when deleting.
As someone who started modal editing with Helix and then moved to NeoVim (LazyVim):
After a very short transitioning period (a week or so), I don't have this issue anymore (at all). Keeping coming back to visual mode is probably counterproductive for your transition. So maybe you should stop doing this for some time. Then you'll hopefully find yourself using the visual mode rarely.
besides that if you could be more efficient than carnots cycle at two temperature you can spontaneously extract heat from a cold object and out it in a hot object without any input energy , this would mean you can have perpetual motion . we are not just going to bump a kardashev scale , were going to truly max out and go beyond.
fun fact the U S patent office has been bogged down by so many perpetual motion applications they have made it policy to outright reject such applications without a working model satisfactorily demonstrating it