Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@lukaszcz
Copy link
Collaborator

@lukaszcz lukaszcz commented Sep 8, 2025

  • Adds let bindings in surface Applib syntax.
  • Adds the possibility to reinterpret arbitrary Lean terms as programs with the ! term syntax.

@lukaszcz lukaszcz self-assigned this Sep 8, 2025
@lukaszcz lukaszcz requested a review from Copilot September 8, 2025 16:13
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds two new syntax features to the Applib surface program language: let bindings for local variable declaration and bang (!) syntax for reinterpreting arbitrary Lean terms as programs.

  • Adds let binding syntax with optional type annotations for local variable declarations within programs
  • Introduces ! (bang) syntax to allow embedding arbitrary Lean terms directly into program contexts
  • Updates syntax rules and macro expansions to support these new constructs

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
Applib/Surface/Program/Syntax.lean Implements core syntax definitions and macro rules for let bindings and bang syntax
Tests/Applib/Surface/Program/Syntax.lean Adds comprehensive test cases demonstrating the new let and bang syntax features

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@lukaszcz lukaszcz merged commit bdc96f6 into main Sep 8, 2025
2 checks passed
@lukaszcz lukaszcz deleted the more-syntax branch September 8, 2025 16:41
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.

3 participants