그녀석들이
Runtime과 Std library를 분류해놨더라고요
그래서
와 이건 진짜 시스템자원 필요하지.
이건 C표준라이브러리에서 처리하는거 아닌가?
싶은것들은 Deno 객체 아래에 있고
이건 솔직히 표준라이브러리로 넣어준다면
편의성이고,
유저가 직접 만들수 있는거를 넣어준거지
싶은것들은 std 에 있었음.
그래서
딱
자바스크립트 런타임의 기능
이거랑, Deno 객체의 시스템콜
대충 이 두가지를 기반으로
내 행동을 전부 컨트롤 가능하다는 그 느낌이 되게 좋았음.
모든것을 C위에서 생각이 가능하다면 참 좋겠지만,
내가 그정도 고수도아니고, 그정도 편집증적인 고집은
탁상공론하다가 내 인생을 망쳐먹겠단 생각이었고,
그래서 한 세달간
모든걸 JS위에서 생각하고
OS, TCP레이어, 시스템콜 이런 자원들은, API를 받아들이면서
이 바퀴들은 블랙박스여도 그대로 사용하자! 했음.
(참고로, 나는 바퀴를 재창조하지 말되, 시간없어서 재창조를 못하는거지. 누가 백년동안 혼자서 바퀴를 다시만들라고하면 할수는 있다는 느낌으로, 대충 메카니즘만 훑어보자는 주의임)
그니까 사실 JS를 백엔드언어로 선택한건, 최소화된 기반을 통해서 건축을 편집증적으로 하려던건데,
그 댓가로 최저에 깔린 블록이 컴파일언어가 아니라 인터프리터라는 부작용이 생긴것
처음에는 백엔드가 단순히 deno std 라이브러리로 짠 http서버위에 애드온만 조금씩 다는 식이었지만
점점 아, 전부 js로 때우려는거, 지금부터는 넌센스다. 이대로 계속 가려는거, 이대로 안주하려는거 말이 안된다
라는 생각이 들었고,
js라이브러리중 토키오와 직접 바인드를 했다는 써드파티라이브러리들에 대한 의존성을 낮추고 (이런애들은 어쩔수없이 블랙박스가 강제되어와서 원리를 몰라도 넘기는 예외적인 녀석들이었음)
그리고 뭔진 몰라도 js런타임을 조금 더 밑바닥까지 내려가서 손볼수 있어보이고,
또 아예 js를 벗어나서 저수준 최적화까지 노려볼 수 있도록
그렇게 러스트를 시작했음.
Deno를 차용하면서 느낀, 편집증적인 이론적 완성도에 굉장히 감탄했었고 (난 노드는 C++같은 느낌의 난잡함을 느낌)
라이언달 그런애가 러스트로 갈아탄것, 러스트는 보면 js보다도 더 편집증의 대가같다는 소리가 나오는것.
이거보고
그냥 믿어 의심치 않았음.
러스트는 내 새로운 무기다.
C > Js > Rust 이게 내 진화방향이다.
나 Js버릴수도있겠다.
이야기가 너무 길어졌는데, 하고싶은 말은 이거였음.
러스트 표준라이브러리는
deno처럼 런타임api와 std libraries의 분리가 일어나있지는 않음. 그래서 내가 직접 둘을 구분해서 읽는중임.
아 지금껏 의식못했는데 내가 런타임api라고여긴거는 std에 안들어있는거같군.
대충 예시로
alloc 같은게 런타임 api고,
Box는 std library임.
(가르치려는게 아니라, 내가 무근본이라서 단어를 ㅈ같이 쓰니까 설명해주는거. 무근본새끼 헛소리라도 들어주시면 마냥 ㄱㅅ함)
아 이제야 미괄식인데,
std library를 runtime api로 만들어둔거 보면 엄청난 아름다움과 희열을 느낌.
난 실물 보석보다도 소프트웨어 보석을 더 고평가함.
하드웨어는 낡기 마련이라 전부 소모품임.
영원성을 보장하고싶다면 금같이 반응성낮은 깡통을 소중하다고 빨아야하는데... 그거 멍청하잖음?
난 그래서 가상세계구조물 여기에서 진짜 아름다움을 느끼고
소유했다는 감정을 느낌.
String 과 관련되어서만 이것저것 구조물을 더 뜯어보고싶은데
디스트럭터개념과함께 재귀적인 Drop.
즉, drop은 언제 어떻게 일어나는가.
그리고 Box<T, A> 의 메모리할당 (alloc수준의 api를 한번 wrap해두어서 고수준으로 사용가능하게함)
원시포인터로 분해, 고수준객체로 재조합.
해당 분해와 재조합 시, 힙 데이터는 통제가능한 영역에 있어야한다.
기타 등등 흠... 러스트 이새낀 진짜 존나맘에들음.
거의 무슨
C위에서 모든기반을 만든 느낌이고
나한테
JS가 논리의바닥인것과
C가 논리의 바닥인것은
프로세스를 이용하느냐 / 만드느냐
의 차이처럼
굉장히 넘사벽의 격차가 난다고 생각함.
흠... 너무 탁상공론만 한거같아서
String이 언제부터 재밌어졌는지만 알려드리겠음.
난 공부하자고 들여다보는일은안함. 그냥 어? 이건 왜이러지? 라는 자극에 반응할 뿐인데,
String저녀석 Drop트레잇이 없음.
Runtime과 Std library를 분류해놨더라고요
그래서
와 이건 진짜 시스템자원 필요하지.
이건 C표준라이브러리에서 처리하는거 아닌가?
싶은것들은 Deno 객체 아래에 있고
이건 솔직히 표준라이브러리로 넣어준다면
편의성이고,
유저가 직접 만들수 있는거를 넣어준거지
싶은것들은 std 에 있었음.
그래서
딱
자바스크립트 런타임의 기능
이거랑, Deno 객체의 시스템콜
대충 이 두가지를 기반으로
내 행동을 전부 컨트롤 가능하다는 그 느낌이 되게 좋았음.
모든것을 C위에서 생각이 가능하다면 참 좋겠지만,
내가 그정도 고수도아니고, 그정도 편집증적인 고집은
탁상공론하다가 내 인생을 망쳐먹겠단 생각이었고,
그래서 한 세달간
모든걸 JS위에서 생각하고
OS, TCP레이어, 시스템콜 이런 자원들은, API를 받아들이면서
이 바퀴들은 블랙박스여도 그대로 사용하자! 했음.
(참고로, 나는 바퀴를 재창조하지 말되, 시간없어서 재창조를 못하는거지. 누가 백년동안 혼자서 바퀴를 다시만들라고하면 할수는 있다는 느낌으로, 대충 메카니즘만 훑어보자는 주의임)
그니까 사실 JS를 백엔드언어로 선택한건, 최소화된 기반을 통해서 건축을 편집증적으로 하려던건데,
그 댓가로 최저에 깔린 블록이 컴파일언어가 아니라 인터프리터라는 부작용이 생긴것
처음에는 백엔드가 단순히 deno std 라이브러리로 짠 http서버위에 애드온만 조금씩 다는 식이었지만
점점 아, 전부 js로 때우려는거, 지금부터는 넌센스다. 이대로 계속 가려는거, 이대로 안주하려는거 말이 안된다
라는 생각이 들었고,
js라이브러리중 토키오와 직접 바인드를 했다는 써드파티라이브러리들에 대한 의존성을 낮추고 (이런애들은 어쩔수없이 블랙박스가 강제되어와서 원리를 몰라도 넘기는 예외적인 녀석들이었음)
그리고 뭔진 몰라도 js런타임을 조금 더 밑바닥까지 내려가서 손볼수 있어보이고,
또 아예 js를 벗어나서 저수준 최적화까지 노려볼 수 있도록
그렇게 러스트를 시작했음.
Deno를 차용하면서 느낀, 편집증적인 이론적 완성도에 굉장히 감탄했었고 (난 노드는 C++같은 느낌의 난잡함을 느낌)
라이언달 그런애가 러스트로 갈아탄것, 러스트는 보면 js보다도 더 편집증의 대가같다는 소리가 나오는것.
이거보고
그냥 믿어 의심치 않았음.
러스트는 내 새로운 무기다.
C > Js > Rust 이게 내 진화방향이다.
나 Js버릴수도있겠다.
이야기가 너무 길어졌는데, 하고싶은 말은 이거였음.
러스트 표준라이브러리는
deno처럼 런타임api와 std libraries의 분리가 일어나있지는 않음. 그래서 내가 직접 둘을 구분해서 읽는중임.
아 지금껏 의식못했는데 내가 런타임api라고여긴거는 std에 안들어있는거같군.
대충 예시로
alloc 같은게 런타임 api고,
Box는 std library임.
(가르치려는게 아니라, 내가 무근본이라서 단어를 ㅈ같이 쓰니까 설명해주는거. 무근본새끼 헛소리라도 들어주시면 마냥 ㄱㅅ함)
아 이제야 미괄식인데,
std library를 runtime api로 만들어둔거 보면 엄청난 아름다움과 희열을 느낌.
난 실물 보석보다도 소프트웨어 보석을 더 고평가함.
하드웨어는 낡기 마련이라 전부 소모품임.
영원성을 보장하고싶다면 금같이 반응성낮은 깡통을 소중하다고 빨아야하는데... 그거 멍청하잖음?
난 그래서 가상세계구조물 여기에서 진짜 아름다움을 느끼고
소유했다는 감정을 느낌.
String 과 관련되어서만 이것저것 구조물을 더 뜯어보고싶은데
디스트럭터개념과함께 재귀적인 Drop.
즉, drop은 언제 어떻게 일어나는가.
그리고 Box<T, A> 의 메모리할당 (alloc수준의 api를 한번 wrap해두어서 고수준으로 사용가능하게함)
원시포인터로 분해, 고수준객체로 재조합.
해당 분해와 재조합 시, 힙 데이터는 통제가능한 영역에 있어야한다.
기타 등등 흠... 러스트 이새낀 진짜 존나맘에들음.
거의 무슨
C위에서 모든기반을 만든 느낌이고
나한테
JS가 논리의바닥인것과
C가 논리의 바닥인것은
프로세스를 이용하느냐 / 만드느냐
의 차이처럼
굉장히 넘사벽의 격차가 난다고 생각함.
흠... 너무 탁상공론만 한거같아서
String이 언제부터 재밌어졌는지만 알려드리겠음.
난 공부하자고 들여다보는일은안함. 그냥 어? 이건 왜이러지? 라는 자극에 반응할 뿐인데,
String저녀석 Drop트레잇이 없음.
씹찐임? - dc App
한국어부터 좀 잘해보자
님 글 읽을때마다 해독을 해야함
ㅠㅠ 그부분이 제일 어렵죠
러스트도 std랑 core랑 분리돼있어염 #![no_std] 옵션붙이면 std 라이브러리 없이 컴파일함
ㅇㅇ 저도 이글쓰면서 코어api를 예시들려다보니, 뭐냐 얘들 std아닌데? 방금 자각함 ㅋㅋㅋ
런타임이 아닌것을 런타임api라고부르는게 자체모순이었는데, core라고부르면 깔끔하군요
deno 어디서 공부해요?