디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

cyclone 언어앱에서 작성

발명도둑잡기(118.216) 2025.07.11 11:16:50
조회 68 추천 0 댓글 0

Cyclone은 C 언어의 위험한 부분을 제거하면서도 C처럼 빠르고 제어 가능한 언어를 목표로 만들어진 시스템 프로그래밍 언어입니다.

Cyclone 언어 개요

항목설명⏳ 개발 시기2001년경 ~ 2006년 (개발 종료됨) 개발 주체AT&T Labs + Cornell University 목표C의 성능과 유연성 유지 + 메모리 안전성 확보 주요 특징- C와 유사한 문법
- 정적 타입
- 안전한 포인터
- 지역 기반 메모리 관리 (region)
- null dereference, buffer overflow 방지 라이선스BSD

Cyclone의 주요 기능

✅ 1. Region-based memory management

지역(region) 단위로 메모리를 할당하고 해제

개별 객체를 free() 하지 않아도 되고, GC도 없음

메모리 누수 없이 성능도 유지

region r { int* x = rmalloc(r, sizeof(int)); ... } // r 영역이 끝날 때 자동 해제

✅ 2. Nullable / Non-nullable 포인터 구분

int*? maybe_null; // nullable int* never_null; // non-nullable, dereferencing always safe

null 접근으로 인한 오류 방지

✅ 3. Fat pointer와 Bounds checking

int arr[10]; int* ptr = &arr[0]; // 실제로는 (ptr, length) 형태로 관리

배열을 조작할 때 배열의 길이 정보 포함 → 런타임 bounds check 가능

✅ 4. Tag check로 안전한 union 대체

tagged union을 사용해 타입 오류 방지

switch 문에서 모든 경우를 강제로 다루게 함

union myunion { int i; float f; } u;

→ Cyclone에서는 이를 안전하게 tagged 형태로 변경

✅ 5. Pointer arithmetic 제한

포인터 연산을 일부 제한하거나 체크함

버퍼 오버플로우 같은 C의 위험한 버그 방지

메모리 안전을 위한 조치들 요약

위험(C 언어)Cyclone 대응Buffer overflowFat pointer + bounds checkUse-after-free지역 기반 메모리 + 정적 분석Null dereferenceNullable 포인터 명시Dangling pointerRegion 수명 분석포인터 산술 오용제약을 두거나 금지

Cyclone 개발 중단 이유

문법이 C보다 더 복잡해졌음.

Rust, D, Go 같은 다른 언어들이 비슷한 목적을 더 나은 방식으로 실현함.

커뮤니티와 생태계가 성장하지 못함.

실용성, 도입 용이성에서 부족.

현재는 연구적 가치로 언급되며, Rust의 개발자들도 Cyclone에서 많은 아이디어를 참고함.

더 알아보고 싶다면:

공식 사이트 (아카이브): http://cyclone.thelanguage.org/

논문: "Cyclone: A Safe Dialect of C", 2002, by Jim Morrisett et al.

GitHub mirror도 있음 (최근은 비활성화)

필요하면 Cyclone 코드 예시나, Rust와 기능 비교도 가능해요.


"도둑은 집을 떠나며 주인을 욕한다" - 러시아 속담
송대관-해뜰날
https://youtu.be/DUsVXmywSCk

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이번주 설문은 탈모 걱정 없어 보이는 머리숱 금수저 스타는? 운영자 25/07/14 - -
AD 디지털 액세서리 기간한정 세일! 운영자 25/07/11 - -
2871054 오늘은 제로 카피 공부하다 자야긋다 ㅆㅇㅆ찡갤로그로 이동합니다. 07.12 40 0
2871053 한녀에게 오염된 모모링이 천연 귀여움을 잃어버리는 과정.. ㅠㅅ ㅠ.. [3] ♥천상천하유아독존경화수월냥덩♥갤로그로 이동합니다. 07.12 45 0
2871052 한국의 미래 <엑소더스 재팬> [1] 발명도둑잡기(118.216) 07.11 42 0
2871051 러스트는 개발의 즐거움을 포기하게 만드는 언어다 [2] 루비갤로그로 이동합니다. 07.11 84 0
2871049 림월드 같은 시뮬겜 만들기 어렵나 [1] 뉴진파갤로그로 이동합니다. 07.11 50 0
2871048 허니패밀리-남자 이야기 [1] 발명도둑잡기(118.216) 07.11 36 0
2871047 그리스 고대 원형극장 소리 발명도둑잡기(118.216) 07.11 26 0
2871046 59.14 임마 빡고수네 [10] ㅆㅇㅆ(124.216) 07.11 113 0
2871045 현존하는 모든 운영체제 뚫는 밀리터리 그레이드 백도어 취약점 [1] 발명도둑잡기(118.216) 07.11 58 0
2871044 러스트 빠돌아 내가 2022년, 2023년 뭐라 했냐. 인생 낭비라 했지 [20] 루비갤로그로 이동합니다. 07.11 72 0
2871043 무자막 케이온 정주행 수련 on [4] 아스카영원히사랑해갤로그로 이동합니다. 07.11 43 0
2871042 나님 누엇어양⭐+ [1] ♥천상천하유아독존경화수월냥덩♥갤로그로 이동합니다. 07.11 46 0
2871041 dbus 소스코드 봤어? 내부적으로 SO_PEERCRED 사용하잖아. 루비갤로그로 이동합니다. 07.11 46 0
2871040 농부가 된 임베디드 프로그래머 발명도둑잡기(118.216) 07.11 52 0
2871039 제미니 교육시키는 중 ㅎㅎ ㅁㅌ겟다 루비갤로그로 이동합니다. 07.11 46 0
2871037 나님 소통합니당 질문질 받웅⭐+ [1] ♥천상천하유아독존경화수월냥덩♥갤로그로 이동합니다. 07.11 43 0
2871036 나님 왤케 특별하실깡? ♥천상천하유아독존경화수월냥덩♥갤로그로 이동합니다. 07.11 38 0
2871035 한가인이 남편에게 절대 하지 않는다는 것 발명도둑잡기(118.216) 07.11 63 0
2871034 네, 오늘 다국어 입력기 설계를 주제로 나눈 대화를 요약해 드리겠습니다. [1] 루비갤로그로 이동합니다. 07.11 67 0
2871033 돌대가리 제미니.. 궤변을 늘어놓네 [1] 루비갤로그로 이동합니다. 07.11 56 0
2871032 보통 TCP 4계층에서 바이트 기반이라고 표현하지 않나 [2] ㅆㅇㅆ(124.216) 07.11 73 0
2871031 ❤✨☀⭐⚡☘♥+나님 시작합니당♥+☘⚡⭐☀✨❤ ♥냥덩이♥갤로그로 이동합니다. 07.11 33 0
2871030 골때리는 제미니 ㅎㅎ 루비갤로그로 이동합니다. 07.11 32 0
2871028 윈도우, 아이폰, 안드로이드폰에 주기적으로 스크린샷 찍어서 본사로 전송능 발명도둑잡기(118.216) 07.11 54 0
2871026 제로카피의 개념을 잘못 이해하고 있는듯 [8] 프갤러(59.14) 07.11 91 1
2871025 앱 출시하는거 너무 고통스럽다 [2] 프갤러(121.162) 07.11 61 0
2871024 노트북에 리눅스 세팅해서 사용한지 몇주 되었는데 [3] 프갤러(221.167) 07.11 57 0
2871023 "재벌도 요구르트 뚜껑 핥아먹냐"는 글 내가 일기에 최초로 쓴 사람이다 [1] 발명도둑잡기(118.216) 07.11 39 0
2871022 함수스택 제대로 쓸 줄 모르면 c나 cpp 만지면 안되는구나 [1] ㅇㅇ(118.235) 07.11 72 0
2871021 내가 컴딸배였구나 [2] 개멍청한유라갤로그로 이동합니다. 07.11 48 0
2871019 회사에서 모든 AI 서비스 다 결제해준단다 [1] 프갤러(211.234) 07.11 93 0
2871018 프로그래머의 도구 같이 나눔해봐용 [1] 익명의따당이갤로그로 이동합니다. 07.11 75 0
2871017 챗티씨 모바일웹 이미지 업로드 막아놨더라 헬마스터갤로그로 이동합니다. 07.11 42 0
2871014 개발자 <<< 비전공자, 전공자 차이 심함? [3] 프갤러(210.205) 07.11 106 0
2871013 형님들 api키는 어떻게 쓰는건가요 [1] ㅇㅇ(124.51) 07.11 81 0
2871012 소딸배와 중딸배가 싸워요 [10] 개멍청한유라갤로그로 이동합니다. 07.11 91 0
2871011 그래 나 오타쿠다 ㅇㅅㅇ... [3] 초코냥갤로그로 이동합니다. 07.11 61 0
2871009 "윤석열 외환죄 입증 불가? 1983년 '간첩죄처벌' 대법원판례 발명도둑잡기(118.235) 07.11 36 0
2871007 다시 VBA의 세계로 돌아가니 [3] 슈퍼막코더(126.179) 07.11 62 0
2871006 윤석열 ㅋㅋㅋㅋㅋ [2] 발명도둑잡기(118.235) 07.11 54 0
2871005 개발자는 정신병을 조심해야하나봐 [3] ㅇㅇ(121.162) 07.11 80 2
2871004 ca229랑 앤드류응 코세라 기계학습 강의중에 뭐들어야할까요 [1] 프갤러(210.104) 07.11 64 0
2871001 TCP 자체가 바이트 기반이라 결국 버퍼 복사 파싱이 맞지 않나 [7] ㅆㅇㅆ(124.216) 07.11 102 0
2871000 러스트 ada 할 생각 때려치고 하던거나 잘해. 프갤러(59.16) 07.11 37 1
2870999 AI 써서 완전 AI로만 코딩할 수 있냐? 절대 안됨 [3] ㅆㅇㅆ(124.216) 07.11 66 0
2870998 뉴프로 구글링시 상위권 선점 안내 [6] 헬마스터갤로그로 이동합니다. 07.11 64 0
2870996 국가 공인 기사단장의 이름으로 명한다 [6] 개멍청한유라갤로그로 이동합니다. 07.11 68 0
2870995 아아 조센징들이 또 마차를 함부로 타는구나 [6] 개멍청한유라갤로그로 이동합니다. 07.11 48 0
2870994 8월의 크리스마스 개멍청한유라갤로그로 이동합니다. 07.11 47 0
2870993 Ada 역주행을 하다니 ㅎㅎ 루비갤로그로 이동합니다. 07.11 45 0
뉴스 강호동 사주풀이, 어떻게 보시나요? 디시트렌드 07.14
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2