Skip to content

Conversation

@Yewzir
Copy link
Contributor

@Yewzir Yewzir commented Apr 2, 2025

Updates #1770

@lyphyser
Copy link
Contributor

lyphyser commented May 19, 2025

Probably need this to make all holes solvable.

I solved brainfuck in iogii, but while my solution completes correctly in about 1.5 seconds with -O and 2.2 seconds without -O with Haskell locally, with the Ruby interpreter it solves 10 cases in 45 seconds and then overflows the stack even with a huge setting.

The solution is a straightforward (in design...) functional approach representing the brainfuck machine state as a 2D tensor (pointer, disabled loop depth, tape, loop stack, output) and then using iterate with the brainfuck step execution function to compute a 4D tensor with the added dimensions of input number and time and then printing the output where the machine first executes past the end of the input code.

It may be possible to optimize it (I tried to , but it looks like Haskell is at least 30x faster on complex examples.

Compilation with GHC is also 1.5-2.5 seconds but the code golf machine should be at least 2x faster than the one I'm using, so it shouldn't be an issue.

@github-actions
Copy link

Your pull request has conflicts that need to be resolved before it can be reviewed and merged.

@github-actions github-actions bot added the conflicts Pull Request has conflicts. label Jun 27, 2025
@Yewzir Yewzir marked this pull request as draft July 19, 2025 11:46
@github-actions github-actions bot removed the conflicts Pull Request has conflicts. label Jul 22, 2025
@Yewzir Yewzir marked this pull request as ready for review August 1, 2025 10:15
@github-actions github-actions bot added the conflicts Pull Request has conflicts. label Aug 8, 2025
@github-actions github-actions bot removed the conflicts Pull Request has conflicts. label Sep 6, 2025
@github-actions github-actions bot added conflicts Pull Request has conflicts. and removed conflicts Pull Request has conflicts. labels Sep 16, 2025
@github-actions github-actions bot added the conflicts Pull Request has conflicts. label Oct 7, 2025
@github-actions github-actions bot removed the conflicts Pull Request has conflicts. label Nov 11, 2025
@github-actions github-actions bot added the conflicts Pull Request has conflicts. label Dec 3, 2025
@github-actions github-actions bot removed the conflicts Pull Request has conflicts. label Dec 13, 2025
@github-actions github-actions bot added conflicts Pull Request has conflicts. and removed conflicts Pull Request has conflicts. labels Dec 25, 2025
@github-actions github-actions bot added the conflicts Pull Request has conflicts. label Jan 15, 2026
@github-actions github-actions bot added conflicts Pull Request has conflicts. and removed conflicts Pull Request has conflicts. labels Jan 15, 2026
Additionally, you will notice a number of changes that improve the
formatting consistency of the many files in the `langs` folder.
@github-actions github-actions bot removed the conflicts Pull Request has conflicts. label Jan 18, 2026
@Yewzir Yewzir force-pushed the iogii branch 2 times, most recently from 7ef2c94 to 29b4182 Compare January 18, 2026 09:41
@github-actions github-actions bot added the conflicts Pull Request has conflicts. label Feb 5, 2026
@github-actions github-actions bot removed the conflicts Pull Request has conflicts. label Feb 8, 2026
@Yewzir Yewzir marked this pull request as draft February 8, 2026 19:52
The upgrade to 1.1.2 has significantly improved this whole concept, and
we've been working on it for a while. All credit goes to Mr. Darren
@darrenks Smith, copyright holder of the golfscript domain and all its
content. I'm finally trying to get it onto the website. Demand for it is
high and has never really gone away. Fortunately, after many changes and
all sorts of experiments, which were actually quite solid, a new tool
has emerged in the form of an engine for lightning-fast generation and
interpretation of Haskell code when starting the compilation of iogii
source files.

Co-authored-by: darrenks <darrenks@users.noreply.github.com>
@Yewzir
Copy link
Contributor Author

Yewzir commented Feb 8, 2026

The upgrade to 1.1.2 has significantly improved this whole concept, and we've been working on it for a while. All credit goes to Mr. Darren @darrenks Smith, copyright holder of the golfscript domain and all its content. I'm finally trying to get it onto the website. Demand for it is high and has never really gone away. Fortunately, after many changes and all sorts of experiments, which were actually quite solid, a new tool has emerged in the form of an engine for lightning-fast generation and interpretation of Haskell code when starting the compilation of iogii source files.

@Yewzir Yewzir marked this pull request as ready for review February 8, 2026 20:37
@github-actions github-actions bot added the conflicts Pull Request has conflicts. label Feb 8, 2026
@darrenks
Copy link

a new tool has emerged in the form of an engine for lightning-fast generation and interpretation of Haskell code when starting the compilation of iogii source files.

Thanks Yewzir for working to get this engine operation. Just to clarify, the engine is a regular haskell program, it interprets some intermediate code that ruby iogii generates, no compilation during running of iogii programs is needed anymore.

I created the engine specifically to for this site since it doesn't require GHC (except for build of engine), and is very fast (virtually no startup time and 25 times faster than the ruby interpreter). Perhaps most importantly it also avoids the stack overflow problem that plagues the ruby interpreter here.

Copy link

@darrenks darrenks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

conflicts Pull Request has conflicts.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants