It's so awesome to learn a new term like "macaronic language".<p><a href="https://en.wikipedia.org/wiki/Macaronic_language" rel="nofollow noreferrer">https://en.wikipedia.org/wiki/Macaronic_language</a><p>I finally have the right term to describe the warning signs from 1960's-era mainframes that coined "blinkenlichten".<p><a href="https://en.wikipedia.org/wiki/Blinkenlights" rel="nofollow noreferrer">https://en.wikipedia.org/wiki/Blinkenlights</a><p>There should be a German term for this, but "gefälschter deutscher" doesn't quite capture it.
> What prevents my program from behaving differently after each preprocessing run?<p>>The strength of your faith in GPT-4.<p>I got a chuckle out of that
Very cool project. How reliable are you finding your prompts? They look like good choices based on my experience prompting GPT-3.5 and 4 for code editing.<p>FYI, I think my open source tool aider would work out of the box to serve this use case. You would just run:<p><pre><code> aider file.py —msg “implement the comments”
</code></pre>
Of course aider works with any popular language, not just python. And it can do a lot of other coding tasks. It's like pair programming with an AI.<p><a href="https://github.com/paul-gauthier/aider">https://github.com/paul-gauthier/aider</a>
Copilot currently keeps in context the file you are editing. Cross file support is coming but not here.(<a href="https://githubnext.com/projects/copilot-view/" rel="nofollow noreferrer">https://githubnext.com/projects/copilot-view/</a>). But it would be very very useful.<p>One logical concept that's also been noodling in my brain was to construct a DFA(Deterministic finite automata) from the code seen in all the files and then offer the n-1 tokens to the language model and constrain the nth token's selection from the valid ones. I recall someone did this for things that produce DFAs that are fairly small in size(like JSON) and that essentially produced 100% valid JSON without hallucinations(It could be garbage JSON).<p>So for example if I had a `class ABC` then typing `abc.` could produce:
1. all the methods on it that were valid and
2. had arguments from the surrounding code informed by the LLM.
I love it.<p>I'd like to make something more constrained. Instead of a fully-general programming language, let the LLM configure data-flows between pre-defined modules, field mappings, or presentations.<p>Then, hopefully, we could let the end-user more directly edit the prompt.
Nice, it's like cog (<a href="https://pypi.org/project/cog/" rel="nofollow noreferrer">https://pypi.org/project/cog/</a>), but automatic.<p>It could replace template rendering in the long run.
Assuming you're using source control properly and read the diff before running it, I guess this is one way to make sure that a comment matches the code? If the bot changes it, maybe your comment wasn't clear enough?
How hard would it be to use code llama instead? <a href="https://ai.meta.com/blog/code-llama-large-language-model-coding/" rel="nofollow noreferrer">https://ai.meta.com/blog/code-llama-large-language-model-cod...</a>
I tried implementing something like this over the summer but couldn't make progress with the 20-30 minimum response time for each OpenAI-generated block. From the demo video it looks like this runs pretty fast -- or does it?
Looks amazing. Would you ever consider using Claude as well?<p>I prefer to use Claude for code generation if using a newer framework or language (the 2021 cutoff with gpt-4 is unfortunate)
I'm usually just copy pasting my entire file into chatgpt and ask it for help - it re-writes the whole damn thing, no need to have managed sections.
Seems likely that dev work moves towards this sort of thing - boilerplate being AI managed.<p>It'll be hell to debug an ever shifting codebase though
similar to this? <a href="https://www.askmarvin.ai/welcome/quickstart/#ai-functions" rel="nofollow noreferrer">https://www.askmarvin.ai/welcome/quickstart/#ai-functions</a>
This answer in the FAQ is wonderful:<p><pre><code> What prevents my program from behaving differently after each preprocessing run?
- The strength of your faith in GPT-4.</code></pre>
There are so many languages with awesome type systems which can help guide AI to generate better code — and yet, these experiments always choose Python.