June, a systems programming language focused on teachability and efficiency, has been archived as of June 3, 2024. Despite its early promise and community engagement, unresolved critical issues and the cessation of active development have halted its progress.
The project has seen a flurry of activity leading up to its archival, with notable efforts in feature development and documentation updates. The team, primarily comprising Sophia June Turner and Jane Losare-Lusby, has been actively collaborating on enhancing language features such as generics, inheritance, and type safety. Recent issues highlight significant challenges in function handling and type safety, with critical problems like dereferencing none
values (#67) causing silent crashes. The presence of these unresolved issues suggests that while there was momentum in development, stability concerns remain unaddressed.
Sophia June Turner (sophiajt)
Jane Losare-Lusby (yaahc)
Developer | Avatar | Branches | PRs | Commits | Files | Changes |
---|---|---|---|---|---|---|
Michael Angerman (stormasm) | 0 | 0/0/1 | 0 | 0 | 0 |
PRs: created by that dev and opened/merged/closed-unmerged during the period
Timespan | Opened | Closed | Comments | Labeled | Milestones |
---|---|---|---|---|---|
7 Days | 0 | 0 | 0 | 0 | 0 |
30 Days | 0 | 0 | 0 | 0 | 0 |
90 Days | 0 | 0 | 0 | 0 | 0 |
All Time | 42 | 12 | - | - | - |
Like all software activity quantification, these numbers are imperfect but sometimes useful. Comments, Labels, and Milestones refer to those issues opened in the timespan in question.
The GitHub repository for the June project shows a total of 30 open issues, indicating ongoing engagement from the community despite the project's archived status. Notably, several issues have been created or updated within the last 102 days, suggesting that contributors are still actively discussing and reporting bugs or feature requests. A recurring theme among the issues is related to function handling and type safety, with multiple reports highlighting compilation errors and unexpected behaviors in the language's handling of functions and data structures.
Several issues stand out due to their implications for the language's usability and stability. For instance, #67 discusses a critical problem where dereferencing a none
value leads to silent crashes, which could severely affect user experience. Additionally, issues like #68 and #69 point to significant challenges in function compilation, particularly concerning curried functions and anonymous function definitions. The presence of these unresolved issues raises concerns about the reliability of the language as it stands.
Issue #69: Feature request: Anonymous functions
Issue #68: Curried functions don't compile
Issue #67: Dereferencing a none value silently crashes the program
Issue #66: Create consistent error reporter for cli and compiler errors
Issue #61: Check equality of method signatures in inheritance
Issue #54: 0b111 support (binary literals)
Issue #48: Mutability compatibility issue on call-site vs args
Issue #46: Feature Request: print
that doesn't add a newline
Issue #45: Raw buffer initialization of bool
has guaranteed UB because of va_args usage in generated code
Issue #44: Function call in array index generates uncompilable C code for the backend
These issues reflect critical areas where users are experiencing difficulties, particularly with function handling and type safety, which are essential for a systems programming language aimed at safety and usability.
The pull request data for the June project reveals a total of 35 pull requests, with 2 currently open and 33 closed. The contributions range from bug fixes and feature additions to documentation updates, reflecting an active development phase prior to the project's archival status.
PR #76: Fixed the previous bugs with print
PR #36: add test for modules in modules
PR #77: wikipedia reference to the term ECS
PR #75: Added support for print along with println
PR #73: docs: update philosophy.md
PR #72: Add ci
PR #65: june run cli command
Numerous other PRs focused on feature enhancements such as generic methods (#59), inheritance and dynamic dispatch (#58), and improvements to type checking and error reporting.
The pull requests submitted to the June project illustrate a vibrant and engaged community contributing to various aspects of the language's development. The majority of closed pull requests indicate a focus on enhancing language features, fixing bugs, and improving documentation. Notably, several PRs were merged successfully, demonstrating an effective review process despite some challenges noted in discussions.
One prominent theme is the introduction of new features aimed at making June more versatile as a systems programming language. For instance, PRs related to generic methods and inheritance suggest a commitment to modern programming paradigms that facilitate code reuse and abstraction. This aligns well with June's goal of being both teachable and efficient.
However, there are notable anomalies in the handling of certain PRs. For example, PR #75 was closed without merging due to unresolved bugs despite significant contributions from the author. This raises questions about communication within the team regarding expectations for contributions and how issues are tracked during development. Additionally, PR #77's rejection indicates potential discrepancies in documentation priorities or standards within the project.
The discussions surrounding PR #36 reveal deeper technical challenges related to code generation and module handling. The back-and-forth between contributors highlights a learning curve associated with complex features in systems programming languages. Such interactions could benefit from clearer guidelines or mentorship opportunities for new contributors.
Overall, while the project has shown promise through its active engagement and diverse contributions, it is important to recognize its archived status. This cessation of active development may lead to stagnation in addressing existing issues or incorporating new features that could enhance its usability further. Future users or contributors may need to seek alternatives or forks that continue where June left off, as its experimental nature may attract interest from those looking for innovative approaches in systems programming.
Sophia June Turner (sophiajt)
README.md
, philosophy.md
, and language.md
.Jane Losare-Lusby (yaahc)
Collaboration: There is a strong collaborative effort between Sophia June Turner and Jane Losare-Lusby, particularly in implementing new features and addressing bugs. Their joint work is evident in multiple pull requests where they contribute to similar areas of the codebase.
Documentation Focus: A significant amount of recent activity has been dedicated to updating documentation, indicating a commitment to clarity and usability for future users or contributors.
Feature Development: The team is actively working on enhancing the language's capabilities, focusing on core programming concepts such as generics, inheritance, and type safety.
Inactive Status: Despite the recent activity noted above, the repository has been archived as of June 3, 2024, indicating that no further development is expected. This suggests that while there was a flurry of activity leading up to archiving, the project is now stagnant.
The development team has shown a consistent pattern of collaboration focused on feature enhancement and documentation improvement. However, the archiving of the project signals an end to active development despite the promising features being worked on.