CodeCompletion.io

Episode 15: Mini mini M1ni

Welcome to Code Completion, Episode 15! We are a group of iOS developers and educators hoping to share what we love most about development, Apple technology, and completing your code!

Follow us @CodeCompletion on Twitter to hear about our upcoming livestreams, videos, and other content.

Be sure to also sign up to our monthly newsletter, where we will recap the topics we discussed, reveal the answers to #CompleteTheCode, and share even more things we learned in between episodes.

You are what makes this show possible, so please be sure to share this with your friends and family who are also interested in any part of the app development process.

⭐️ This Week's Topics

  • The iPhones, especially the desires around a perfect iPhone mini.
  • The M1 processor.

🚧 #CompleteTheCode

Last week's #CompleteTheCode:

What key API allows for Swift Arrays and Dictionaries to implement Copy-on-Write (CoW)?
1
2
3
let firstArray = [0, 1, 2]
var secondArray = firstArray // The underlying storage is still shared here
secondArray.append(3) // The underlying storage is copied first, then updated

Be sure to tweet us with hashtag #CompleteTheCode if you know the answer!

⚠️ Compiler Error

This week's theme: Languages inspired by Objective-C!

  1. Hoping to improve Javascript, Objective-J was invented as a way of bringing Objective-C’s class and message sending syntax and more over to web development, but without the *’s.
  1. Objective-C++ is a variant of Objective-C that adds the same extensions to C++ as it does to C, effectively duplicating the implementations of classes, exception handling, and closures.
  1. Objective-C# is another variant of Objective-C started in 2009 after the success of the iPhone hoping to bring dynamic dispatch to C#, but was not actively maintained.
  1. Inspired by an off-hand remark, Objective-Rust is a toy language recently developed that adds some Objective-C syntax to Rust, for better interoperability between the two languages.
Compilation Results

This time, Johnny went first, followed by Spencer. Let's see how they did!

2. Objective-C++ is a variant of Objective-C that adds the same extensions to C++ as it does to C, effectively duplicating the implementations of classes, exception handling, and closures.

Both of our completionists thought this was true, and it is indeed a code completion! Learn More →

4. Inspired by an off-hand remark, Objective-Rust is a toy language recently developed that adds some Objective-C syntax to Rust, for better interoperability between the two languages.

They both thought this was also factual, and it is also a code completion! Learn More →

1. Hoping to improve Javascript, Objective-J was invented as a way of bringing Objective-C’s class and message sending syntax and more over to web development, but without the *’s.

Spencer wasn't so sure about this one, but unlike last week, this was still a code completion! Learn More →

Which leaves…

3. Objective-C# is another variant of Objective-C started in 2009 after the success of the iPhone hoping to bring dynamic dispatch to C#, but was not actively maintained.

…which Johnny was right to choose because this was the compiler error! As far as we know, C# already has many of the features that would have been desirable from Objective-C, so no one has made a serious attempt at Objective-C#… yet… Learn More →

🎁 Sponsor

This week's episode of Code Completion is brought to you by Mystiko. Click here or search for Mystiko on the iMessage App Store today to give it a try.

📺 Watch the Stream