The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Релиз компилятора Free Pascal 3.2, opennews (ok), 20-Июн-20, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


11. "Релиз компилятора Free Pascal 3.2"  +5 +/
Сообщение от stuq1 (ok), 20-Июн-20, 21:30 
Вот только похоже в новости ошибка и это не блоки на языке Си (и вообще с Си никак не связаны), а просто разновидность замыканий
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

65. "Релиз компилятора Free Pascal 3.2"  +/
Сообщение от Аноним84701 (ok), 21-Июн-20, 01:21 
> Вот только похоже в новости ошибка и это не блоки на языке Си (и вообще с Си никак не связаны), а просто разновидность замыканий

Ну, вроде бы не совсем:

> Support for interfacing with C blocks functionality
> Overview: Support has been added for interfacing with Apple's blocks C-extension.
> Notes:
> As C blocks are very similar to anonymous methods in Delphi, we use a similar syntax to declare block types (with an
> added cblock and either the calling convention cdecl or mwpascal to indicate the C nature). Note that the syntax to define the code executed in a block

Ответить | Правка | Наверх | Cообщить модератору

83. "Релиз компилятора Free Pascal 3.2"  +1 +/
Сообщение от Аноним (110), 21-Июн-20, 01:59 
Ну вот ты сам сказал: similar to anonymous methods in Delphi
Ответить | Правка | Наверх | Cообщить модератору

98. "Релиз компилятора Free Pascal 3.2"  +1 +/
Сообщение от n00by (ok), 21-Июн-20, 06:42 
>> Вот только похоже в новости ошибка и это не блоки на языке Си (и вообще с Си никак не связаны), а просто разновидность замыканий
> Ну, вроде бы не совсем:
>> Support for interfacing with C blocks functionality
>> Overview: Support has been added for interfacing with Apple's blocks C-extension.
>> Notes:
>> As C blocks are very similar to anonymous methods in Delphi, we use a similar syntax to declare block types (with an
>> added cblock and either the calling convention cdecl or mwpascal to indicate the C nature). Note that the syntax to define the code executed in a block

Вот же про состояние:

They are similar to standard C functions, but in addition to executable code they may also contain variable bindings to automatic (stack) or managed (heap) memory. A block can therefore maintain a set of state (data) that it can use to impact behavior when executed. https://developer.apple.com/library/archive/documentation/Co...

Ответить | Правка | К родителю #65 | Наверх | Cообщить модератору

133. "Релиз компилятора Free Pascal 3.2"  +1 +/
Сообщение от Аноним84701 (ok), 21-Июн-20, 12:25 
> Вот же про состояние:
> They are similar to standard C functions, but in addition to executable

Я немного порылся в коде -- похоже, это разновидность замыканий, использующих для реализации яблочные рантайм-расширения/интерфейс "С-blocks", который яблочники, в свою очередь, придумали как С/C++/ObjC-расширение для своей платформы.

В общем, хорошо (для опеннета), что  Apple не назвало свое расширение "rust-block" :)


Ответить | Правка | Наверх | Cообщить модератору

190. "Релиз компилятора Free Pascal 3.2"  +/
Сообщение от Аноним (110), 21-Июн-20, 23:44 
С-blocks - это Closing (замыкание) blocks, а не си/раст/...
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру