LINUX.ORG.RU

Проект TrapC развивает Си-подобный язык, безопасно работающий с памятью

 , ,


1

5

Проект развивает Робин Роу (Robin Rowe), бывший профессор компьютерных наук, принимавший участие в комитетах по развитию стандартов С и С++, в своё время создавший графический редактор Cinepaint, использовавшийся при создании некоторых голливудских фильмов, и POSIX-библиотеку libunistd для Windows. Соучредителем компании Trasec выступает Габриэль Пантера (Gabrielle Pantera), занимавшая руководящий пост в компании Disney.

Из особенностей:

  • Проверки выхода за границы массива. В TrapC применяется фундаментально иной способ работы с указателями и специальный механизм перехвата ошибок на основе обработчиков исключений (trap).

  • Проверки use after free.

  • Наличие GC.

  • Выделение памяти через new. *alloc и free нет.

  • Явная инициализация нулями.

  • Строгая типизация.

Исходный код компилятора для TrapC планируют открыть в 2025 году.

>>> Подробности

★★★★★

Проверено: maxcom ()
Ответ на: комментарий от zx_gamer

Не надо тут. С самого первого поста речь шла о структуре данных, а не об АТД.

Зачем вы тогда переключили разговор на тип list из Python? Когда по контексту было ясно, что беседа идет о алгоритмических задачах на связные списки.

lbvf50txt
()
Ответ на: комментарий от lbvf50txt

С самого первого поста алгоритмы и структуры данных обсуждались отдельно.

Вы начали говорить, что все пишут на Python/Go/JS. Я сказал, что они писать структуры данных не умеют. Вот и поворот, действительно не умеют, потому что мне на полном серьезе пытались рассказать, что «список» в питоне это список (как структура данных).

zx_gamer ★★★
()
Ответ на: комментарий от zx_gamer

Я сказал, что они писать структуры данных не умеют.

Вы сходили на Leetcode, посмотрели как там неумеют писать на Python?

что мне на полном серьезе пытались рассказать, что «список» в питоне это список (как структура данных).

Процитируйте где я это пишу.

lbvf50txt
()
Ответ на: комментарий от zx_gamer

ваши чайники рассела заведомо пишут на питоне хужее чем вы на чём угодно

зачем вы эту истину тут пастулируете?

qulinxao3 ★★
()
Ответ на: комментарий от lbvf50txt

Процитируйте где я это пишу.

Размазано по сообщениям. Вы утверждаете, что работать с памятью не надо. Как без работы с памятью написать банально список (как структуру данных)? Или вы говорите, что списки не нужны, и тогда вы точно не программист, или вы признаете, что работать с памятью необходимо (но тогда TrapC не нужен).

zx_gamer ★★★
()
Ответ на: комментарий от zx_gamer
class Solution:
    def canSortArray(self, a: List[int],c=0,p=0) -> bool: 
        q=((c:=c+((z:=bin(x).count('1'))!=p),x,p:=z)for x in a)
        return all(x==y for x,(_,y,_) in zip(sorted(a),sorted(q)))

кому не обходимо?

qulinxao3 ★★
()
Ответ на: комментарий от zx_gamer

А структуры данных такой (с именем «список») нет.

Списками являются вектора, односвязные списки, двусвязные списки, стеки, двоичное дерево…

monk ★★★★★
()
Ответ на: комментарий от monk

В данном контексте подразумевался односвязный и двусвязные списки, но да, это не было оговорено.

zx_gamer ★★★
()
Ответ на: комментарий от zx_gamer

Не надо путать список и связный список это не одно и тоже.

sabacs
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.