AI-Based Prose Programming for Subject Matter Experts: Will This Work?

Key Takeaways

  • Recent advances in prose-to-code generation via Large Language Models (LLMs) will make it practical for non-programmers to “program in prose” for practically useful program complexities, a long-standing dream of computer scientists and subject-matter experts alike.
  • Assuming that correctness of the code and explainability of the results remain important, testing the code will still have to be done using more traditional approaches. Hence, the non-programmers must understand the notion of testing and coverage.
  • Program understanding, visualization, exploration, and simulation will become even more relevant in the future to illustrate what the generated program does to subject matter experts.
  • There is a strong synergy with very high-level programming languages and domain-specific languages (DSLs) because the to-be-generated programs are shorter (and less error prone) and more directly aligned with the execution semantics (and therefore easier to understand).
  • I think it is still an open question how far the approach scales and how integrated tools will look that exploit both LLMs’ “prose magic” and more traditional ways of computing. I illustrate this with an open-source demonstrator implemented in JetBrains MPS.

 

Introduction

As a consequence of AI, machine learning, neural networks, and in particular Large Language Models (LLMs) like ChatGPT, there’s a discussion about the future of programming. There are mainly two areas. One focuses on how AI can help developers code more efficiently. We have probably all asked ChatGPT to generate small-ish fragments of code from prose descriptions and pasted them into whatever larger program we were developing. Or used Github Copilot directly in our IDEs.

This works quite well because, as programmers, we can verify that the code makes sense just by looking at it or trying it out in a “safe” environment. Eventually (or even in advance), we write tests to validate that the generated code works in all relevant scenarios. And the AI-generated code doesn’t even have to be completely correct because it is useful to developers if it reaches 80% correctness. Just like when we look up things on Stackoverflow, it can serve as an inspiration/outline/guidance/hint to allow the programmer to finish the job manually. I think it is indisputable that this use of AI provides value to developers.

The second discussion area is whether this will enable non-programmers to instruct computers. The idea is that they just write a prompt, and the AI generates code that makes the machine do whatever they intended. The key difference to the previous scenario is that the inherent safeguards against generated nonsense aren’t there, at least not obviously.

A non-programmer user can’t necessarily look at the code and check it for plausibility, they can’t necessarily bring a generated 80% solution to 100%, and they don’t necessarily write tests. So will this approach work, and how must languages and tools change to make it work? This is the focus of this article.

Why not use AI directly?

You might ask: why generate programs in the first place? Why don’t we just use a general-purpose AI

Read More

Experts Unveil Extremely Modest Battery For The Smallest Desktops in The Planet

There was a time, not so prolonged ago, when pcs have been so big, they occupied full rooms. Today, some processing units can come as tiny as a few specks of dust.

Even next to a grain of rice, these stacks of micrometer-sized chips look infinitesimal

 

Shrinking computer batteries to fit that sizing, however, has proved additional hard.

With minimal room for storage, the tiniest computer systems will have to count on ultrasound or photovoltaic cells to continuously prime up microbatteries with electrical power from vibrations or daylight. That has its downsides, as the computer system is not going to get the job done with out a frequent electrical power supply or in darkish areas like the human physique.

Some experts in Europe are therefore proposing an option composition: a microbattery primarily based on folding micro slender layers like origami.

The battery is just a prototype for now, but the preliminary final results are encouraging.

Battery prototype beside grain of salt. (TU Chemnitz/Leibniz IFW Dresden)

“There is a determined want to develop superior-overall performance batteries for the millimeter and sub-millimeter dimensions regime since these power storage units would aid the progress of truly autonomous microsystems,” the authors write.

Comprehensive-sized computer system batteries are normally based mostly on ‘wet chemistry’, which signifies metallic foils that carry out electrical energy are placed in speak to with liquid electrolytes to develop a stream of electrical power.

Chip-centered batteries of a specified scale, nonetheless, simply cannot assist liquid electrolytes.

 

As these, the inventors of this new microbattery have squeezed a reliable electrolyte among two microchips that are painted with a super slim film of electrodes, 1 good, 1 detrimental.

This solid electrolyte, even so, is not just about as economical as applying a liquid electrolyte, which is the place the folding arrives in.

By winding up a flat battery stack into a ‘Swiss-roll cylinder‘, researchers can squeeze a good deal extra surface area region into a restricted house. This is truly how the cylinder cells in Tesla’s electrical cars function.

At the scale of a cubic millimeter, it’s extremely complicated to roll thin and brittle resources into this sort of shape by means of exterior strain.

The good news is, you can find yet another way to get the materials to fold up on its own, and it is called ‘micro-origami’.

The strategy sort of functions like a rolling window blind. As the skinny substance is tugged down, you can permit that mechanical tension go and the entire issue will shoot up and roll into a cylinder.

ElectrodeCylinderIllustrations of layered skinny movies and a Swiss roll on a chip. (Zhu et al., Highly developed Strength Components, 2022).

On a chip, researchers have been capable to achieve this movement by pinning down a single aspect of the slim material to generate, in essence, the bar of a window blind.

Eventually, the crew was capable to roll up a prototype microbattery into an area just .04 millimeters squared, providing a potential eight

Read More