Skip to content

Conversation

@chrishwiggins
Copy link

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

  • ✅ 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_areafrom_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

Testing

All Python modules now 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 ✅
  • All supporting test and utility modules ✅

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:

python3 parser.py
# Successfully parses "cats chase mice" showing:
# Got dependencies: [['chase', 'mice', 'OBJ'], ['chase', 'cats', 'SUBJ']]

Compatibility

  • ✅ Python 3.7+ compatible
  • ✅ All existing functionality preserved
  • ✅ No breaking API changes
  • ✅ Maintains research reproducibility

🤖 Generated with Claude Code

wiggins and others added 3 commits September 27, 2025 00:14
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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant