ChildsplayOSU / bogl

Haskell implementation of the BoGL language
https://bogl.engr.oregonstate.edu
BSD 3-Clause "New" or "Revised" License
7 stars 1 forks source link

Fail tc for binops between tuples of diff sizes #179

Closed montymxb closed 3 years ago

montymxb commented 3 years ago

Small fix to address #178 that martin brought up recently. This extends unification in the typechecker to handle & fail on the case of working with two tuple types that are not the same length. There are a couple test cases added as well to reinforce what is expected to be type-correct & incorrect when using BinOps w/ tuple operands.

MartinErwig commented 3 years ago

Thanks a lot, Ben!

Do I have your post-OSU email under which I could reach you? In particular, I'd like to know where I can find the steps that need to be performed to make the change show up in the web-based BoGL system.

-- Martin

On Jul 19, 2021, at 5:25 AM, Benjamin Wilson Friedman @.***> wrote:

Small fix to address #178 that martin brought up recently. This extends unification in the typechecker to handle & fail on the case of working with two tuple types that are not the same length. There are a couple test cases added as well to reinforce what is expected to be type-correct & incorrect when using BinOps w/ tuple operands.

You can view, comment on, or merge this pull request online at:

https://github.com/The-Code-In-Sheep-s-Clothing/bogl/pull/179

Commit Summary

• fail tc for binops between tuples of diff sizes File Changes

• M src/Typechecker/Monad.hs (5) • M src/Typechecker/Typechecker.hs (1) • M test/TypeCheckerTests.hs (36) Patch Links:

https://github.com/The-Code-In-Sheep-s-Clothing/bogl/pull/179.patchhttps://github.com/The-Code-In-Sheep-s-Clothing/bogl/pull/179.diff — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

montymxb commented 3 years ago

@MartinErwig no problem!

You can reach me at friedman.benjamin@gmail.com from here on out to stay in touch. All changes made to the master branch in this repo will automatically be applied to the server every 24 hours or so (about 3 AM PST if I recall correctly). I'm finishing up writing technical documentation for working with BoGL and the web-based components of it, so I'll have something in there explaining how to apply updates manually as well.

Also making changes to the web interface follows a similar protocol, where any updates made to master branch of the bogl-editor repository will automatically update within 24 hours as well.