Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion async-programming.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ such as loops, exception handling, etc. usually are no longer valid in this mode
it really didn't reach mainstream adoption until Netflix ported it over to Java, naming it RxJava. From then on, numerous ports have been provided for a variety of platforms including JavaScript (RxJS). -->
Реактивные расширения (ориг.: *Reactive Extensions, Rx*) были введены в C#
[Эриком Мейером](https://en.wikipedia.org/wiki/Erik_Meijer_(computer_scientist)). Хотя Rx определенно использовались на
платформе .NET, в реальности они не получил широкого распространения, пока Netflix не перенес их на Java, назвав RxJava.
платформе .NET, в реальности они не получили широкого распространения, пока Netflix не перенес их на Java, назвав RxJava.
С тех пор было предоставлено множество портов для различных платформ, включая JavaScript (RxJS).

<!-- The idea behind Rx is to move towards what's called `observable streams` whereby we now think of data as streams (infinite amounts of data) and these streams can be observed. In practical terms, Rx is simply
Expand Down
6 changes: 3 additions & 3 deletions inline-classes.md
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ fun main() {

<!-- Because inline classes may be represented both as the underlying value and as a wrapper, [referential equality](equality.md#referential-equality)
is pointless for them and is therefore prohibited. -->
Потому что встроенные функции могут быть представлены и как базовые типы, и как обертки, [равенство по ссылке](equality.html#referential-equality)
Поскольку встроенные классы могут быть представлены и как базовые типы, и как обертки, [равенство по ссылке](equality.html#referential-equality)
для них бессмысленно и поэтому запрещено.

<a name="mangling"></a>
Expand Down Expand Up @@ -236,7 +236,7 @@ a new type and both will be represented as the underlying type at runtime. -->

<!-- However, the crucial difference is that type aliases are *assignment-compatible* with their underlying type (and with
other type aliases with the same underlying type), while inline classes are not. -->
Однако решающее различие заключается в том, что псевдонимы типов *совместимы с назначением* с их базовым типом (и с
Однако решающее различие заключается в том, что псевдонимы типов *совместимы с присвоением* с их базовым типом (и с
другими псевдонимами типов с тем же базовым типом), в то время как встроенные классы - нет.

<!-- In other words, inline classes introduce a truly _new_ type, contrary to type aliases which only introduce an alternative name
Expand All @@ -262,7 +262,7 @@ fun main() {
acceptString(nameAlias) // Всё хорошо: передача псевдонима вместо базового типа
acceptString(nameInlineClass) // Всё плохо: не удается передать встроенный класс вместо базового типа

// And vice versa:
// И наоборот:
acceptNameTypeAlias(string) // Всё хорошо: передача базового типа вместо псевдонима
acceptNameInlineClass(string) // Всё плохо: не удается передать базовый тип вместо встроенного класса
}
Expand Down