# Implementing ExpressibleByTupleLiteral: how hard?

**URL:** <https://forums.swift.org/t/implementing-expressiblebytupleliteral-how-hard/21169>\
**Category:** Compiler\
**Created:** [March 3, 2019, 8:54pm UTC](https://forums.swift.org/t/implementing-expressiblebytupleliteral-how-hard/21169 "2019-03-03T20:54:55Z")\
**Posts on this page:** 1\
**Showing post:** 17

<div class="post-metadata">

**Author:** ![Joe\_Groff](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/joe_groff/32/1929_2.png) [@Joe\_Groff](https://forums.swift.org/u/Joe_Groff)\
**Post date:** [March 4, 2019, 8:26pm UTC](https://forums.swift.org/t/implementing-expressiblebytupleliteral-how-hard/21169/17 "2019-03-04T20:26:04Z")

</div>

While we have to keep the `ExpressibleBy*` protocols for source and ABI stability, it might be worth considering augmenting them with attribute-driven forms too. We could also introduce attributes to allow initializers to be used with the existing literal forms, which would mean we could make Int8 unicode-scalar-expressible without ABI impact:

```swift
extension Int8 {
  @unicodeScalarLiteral // instead of : ExpressibleBy...
  init(unicodeScalarLiteral: Int8) {...}
}

```

---

_[View the full topic](https://forums.swift.org/t/implementing-expressiblebytupleliteral-how-hard/21169)._
