profile
Rust 삽질러 / 동시성 프로그래밍을 주로 공부합니다.

Rust의 더 개선된 ADT: sealed trait

Rust에도 Scala의 sealed trait을 도입할 수 있을까?

2023년 10월 7일
·
0개의 댓글
·

더 안전한 프로그램을 위한 제안: no panic(runtime exception)

프로그램에서 panic(runtime exception)이 일어나지 않음을 보장할 수 있을까? 보장하는 방법을 알아보도록 하자.

2023년 9월 17일
·
0개의 댓글
·

더 안전한 프로그램을 위한 제안: checked operation

null 참조를 막는 것은 이제 일반적이다. 그렇다면, 사칙연산 같은 연산 또한 에러를 잘 처리하거나, 원초적으로 막는 건 어떤가? overflow, divided by zero를 막아보자.

2023년 9월 9일
·
0개의 댓글
·

sleep 함수는 어떻게 동작하는 것일까?

프로그래밍을 하다보면, 이따금 sleep을 쓸 일이 꽤 있다. 가령, 일정 주기로 반복하여 실행되는 cronjob 성격의 코드의 loop 안에서 쓰게 된다. Python으로 작성하여 보면, 다음과 같은 구조를 가지게 된다.consume_one_second는 구현하기 나

2023년 8월 26일
·
0개의 댓글
·

kafka 포트포워딩으로 client 접속 안 될 때 해결법

로컬에 떠 있지 않은 kafka(AWS의 kafka나 회사의 kubernetes 위에 떠 있는 kafka 등)에 접속해야 할 일이 가끔 있다. 여느 ssh 서버 접속하듯이 단순히 그 경로를 포트포워딩하여 로컬 주소와 매핑하여 연결하려고 하면 안 되는 경우가 있다. 가령

2023년 1월 24일
·
0개의 댓글
·
post-thumbnail

프로그래밍 시작한 지 10주년이 된 회고

꼬꼬마 시절부터 시작한 프로그래밍, 지금은 어디까지 하게 되었나 돌아보면 무엇이 달라져있을까요?

2023년 1월 8일
·
1개의 댓글
·
post-thumbnail

라이브러리 뜯어 고치기: 문제 인식부터 오픈소스 기여까지

블랙박스처럼 쓰기만 했던 라이브러리를 실제로 뜯어서 고쳐보고 기여를 해보자

2022년 12월 31일
·
1개의 댓글
·

C++11 Memory Model: Atomic부터 Lock-Free 자료구조까지

어떻게 멀티코어를 활용하는 프로그램을 만들어 볼 수 있을까? C++에서 최초로 멀티 쓰레딩을 언어 표준에서 고려한 C++11 Memory Model, 실제 Lock과 Lock-Free 자료구조를 살펴보도록 하자.

2021년 10월 6일
·
2개의 댓글
·