Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Only works for Xcode6 Beta2, not Xcode6 Beta3 #1

Open
haifenghuang opened this issue Jul 15, 2014 · 1 comment
Open

Only works for Xcode6 Beta2, not Xcode6 Beta3 #1

haifenghuang opened this issue Jul 15, 2014 · 1 comment
Milestone

Comments

@haifenghuang
Copy link

I've successfully tested it in Beta2, but in Beta3, I got some errors. for example:
In Struct Product, line 568 & line 575, Beta3 report below errors:

'@lvalues $T11' is not identical to 'T'

@abarnert
Copy link
Owner

Sorry, yeah, the compiler just isn't in a steady-enough state to continue development. My test code no longer compiles in beta 3 because of the array changes. I still get compiler crashes from some simple type errors, but not the same ones as in beta 2, and it's no longer fun trying to fight them. Also, the changes affect a lot more things that just don't cause compiler errors—for example, optionalize and friends no longer need the horrible hacks they used, and can be written more simply, but the current implementation does nothing useful. And that doesn't even include all the minor and automatable changes that are needed, like rewriting Index classes to use successor and predecessor instead of succ and pred, some of which aren't even documented.

Meanwhile, I want to change all of the itertools to be view collections with the best possible index type, falling back to non-collection sequences only when created from non-collections, just like map and friends—but until the stdlib header for map and friends actually matches the implementation, I'm just guessing here.

On the plus side, the language does keep getting better (I'm so glad they fixed the nil problem!); on the minus side, it isn't done yet.

I'll continue looking over the changes to learn enough to write another blog post, but I probably won't try to get the existing implementation working as well in beta 3 as it did in beta 2; I'll wait for beta 4 (or later, if it's still not ready). However, if everything is working for you except for Product blocking compilation, if you want to submit a pull request with Product commented out, I'll accept it.

@abarnert abarnert added this to the beta4 milestone Jul 15, 2014
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

No branches or pull requests

2 participants