-
Notifications
You must be signed in to change notification settings - Fork 6
feature - unsafe low-level operation surface v0 #687
Copy link
Copy link
Open
Labels
featureNew feature or requestNew feature or requestincan compilerSuggestions, features, or bugs related to the Compiler (frontend/backend/codegen)Suggestions, features, or bugs related to the Compiler (frontend/backend/codegen)incan language semanticsSuggestions, features, or bugs related to the Incan Language itself (syntax and semantics)Suggestions, features, or bugs related to the Incan Language itself (syntax and semantics)runtime / core cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratestoolingSuggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)Suggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)
Milestone
Metadata
Metadata
Assignees
Labels
featureNew feature or requestNew feature or requestincan compilerSuggestions, features, or bugs related to the Compiler (frontend/backend/codegen)Suggestions, features, or bugs related to the Compiler (frontend/backend/codegen)incan language semanticsSuggestions, features, or bugs related to the Incan Language itself (syntax and semantics)Suggestions, features, or bugs related to the Incan Language itself (syntax and semantics)runtime / core cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratesSuggestions, features, or bugs related to the `incan-core`, `incan-stdlib`, 'incan-derive` cratestoolingSuggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)Suggestions, features, or bugs related to the Tooling (CLI/formatter/test runner)
Type
Fields
Give feedbackNo fields configured for Feature.
Area
Problem statement
Freestanding and kernel-facing work will need operations that safe Incan should not expose implicitly: raw pointers, volatile reads/writes, memory-mapped I/O, unchecked operations, and eventually target-specific intrinsics. Without an explicit unsafe surface, those operations would either be impossible or would leak through backend-specific code paths that tools cannot inspect.
The design work belongs to #682, but the 0.8 milestone also needs an implementation tracker for the first narrow unsafe operation slice after the RFC direction is accepted.
Proposed solution
Implement an experimental unsafe low-level operation surface v0 once the unsafe RFC direction is clear.
The first implementation should keep the surface deliberately small:
Alternatives considered
Scope / acceptance criteria