Fix Python 2/3 compatibility and modernize codebase#4
Open
chrishwiggins wants to merge 3 commits intodmitropolsky:masterfrom
Open
Fix Python 2/3 compatibility and modernize codebase#4chrishwiggins wants to merge 3 commits intodmitropolsky:masterfrom
chrishwiggins wants to merge 3 commits intodmitropolsky:masterfrom
Conversation
This commit modernizes the Assembly Calculus codebase to work with Python 3:
## Python 2 to 3 Migration:
- Replace `xrange` with `range` in: project.py, overlap_sim.py, tests.py, brain_util.py
- Fix print statement syntax: `print "..."` → `print("...")` in overlap_sim.py
- Replace deprecated `dict.iteritems()` with `dict.items()` in simulations.py
## Bug Fixes:
- Fix undefined variable error in brain.py:289 (`from_area` → `from_area_name`)
- Add missing `DET_SIZE = 2` constant to parser.py and recursive_parser.py
## Code Quality:
- Standardize indentation in brain.py (convert tabs to spaces for consistency)
- Fix mixed indentation issues that could cause Python syntax errors
## Current State:
The repository now contains a fully functional Python 3 implementation of the
Assembly Calculus model for computational neuroscience research. All modules
execute without errors:
- brain.py: Core neural assembly simulation framework
- parser.py & recursive_parser.py: Brain-based language parsing models
- simulations.py: Comprehensive simulation library for assembly operations
- Tests and utilities: All supporting modules for research experiments
The codebase implements the theoretical framework from Papadimitriou et al.'s
research on biologically plausible neural computation and language processing.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Provide overview of assembly model of brain computation - Document all Python files and their purposes - Include getting started guide with prerequisites - Add example experiments for students to run - Explain key concepts: brain areas, projections, assembly formation - Include usage examples for simulations, language learning, and analysis - Add contribution guidelines and references 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR modernizes the Assembly Calculus codebase to work with Python 3 and fixes several code quality issues that were preventing execution.
Changes Made
Python 2 to 3 Migration
xrangewithrangein: project.py, overlap_sim.py, tests.py, brain_util.pyprint "..."→print("...")in overlap_sim.pydict.iteritems()withdict.items()in simulations.pyBug Fixes
from_area→from_area_name)DET_SIZE = 2constant to parser.py and recursive_parser.pyCode Quality
Testing
All Python modules now execute without errors:
Current State
The repository now contains a fully functional Python 3 implementation of the Assembly Calculus model for computational neuroscience research. The codebase successfully implements the theoretical framework from Papadimitriou et al.'s research on biologically plausible neural computation and language processing.
Example working output from parser:
Compatibility
🤖 Generated with Claude Code