Rust: ν•« μ½”λ“œ ꡐ체

에 λ§Œλ“  2013λ…„ 05μ›” 10일  Β·  6μ½”λ©˜νŠΈ  Β·  좜처: rust-lang/rust

μ•ˆλ…•ν•˜μ„Έμš” μ €λŠ” http://www.youtube.com/watch?v=apZYqHPqzYoλ₯Ό 보고 Rustμ—μ„œλ„ ν•« μ½”λ“œ ꡐ체가 있으면 μ’‹κ² λ‹€κ³  μƒκ°ν–ˆμŠ΅λ‹ˆλ‹€.

Javaμ—λŠ” OSGi ν”„λ‘œμ νŠΈ( http://www.osgi.org/Main/HomePage ) 및 ν•«μŠ€μ™‘( http://code.google.com/p/hotswap/ )이 있으며, μ΄λŠ” λͺ¨λ“ˆμ˜ μ—…κ·Έλ ˆμ΄λ“œ 및 변경을 μš©μ΄ν•˜κ²Œ ν•©λ‹ˆλ‹€. λ‹€λ₯Έ λͺ¨λ“ˆμ„ κ±΄λ“œλ¦¬μ§€ μ•Šκ³  μ‘μš© ν”„λ‘œκ·Έλž¨.

E-hard

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ‚˜λŠ” 이것을 μ°Έμ‘° http://runtimecompiledcplusplus.blogspot.co.uk/ 및 μ½”λ“œ https://github.com/RuntimeCompiledCPlusPlus/RuntimeCompiledCPlusPlus 용으둜만 μΆ”κ°€ν•  κ²ƒμž…λ‹ˆλ‹€.

및 https://bentheelder.github.io/blog/rust-hotswap.html

λͺ¨λ“  6 λŒ“κΈ€

특히 크둜슀 ν”Œλž«νΌ λ°©μ‹μ—μ„œ λ„€μ΄ν‹°λΈŒ μ½”λ“œλ‘œ 이 μž‘μ—…μ„ μˆ˜ν–‰ν•˜λŠ” 것은 정말 맀우 μ–΄λ ΅μŠ΅λ‹ˆλ‹€. VM은 λ°”μ΄νŠΈμ½”λ“œ λ‘œλ”©, μ½”λ“œ 생성, μ½”λ“œ 배치 등을 μ™„μ „νžˆ μ œμ–΄ν•  수 있기 λ•Œλ¬Έμ— μ‹œκ°„μ΄ 더 μ‰½μŠ΅λ‹ˆλ‹€.

이 μ£Όμ œμ— λŒ€ν•œ μ΅œμ‹  μ—°κ΅¬λŠ” μ•„λ‹ˆμ§€λ§Œ Kitsune: Cλ₯Ό μœ„ν•œ 효율적인 λ²”μš© 동적 μ†Œν”„νŠΈμ›¨μ–΄ μ—…λ°μ΄νŠΈ (OOPSLA 2012)κ°€ ν₯λ―Έλ‘­λ‹€λŠ” 것을 μ•Œμ•˜μŠ΅λ‹ˆλ‹€.

λΆ„λ₯˜λ₯Ό μœ„ν•΄ λ°©λ¬Έ, 2013λ…„ 7μ›” 17일. ν•« μŠ€μ™€ν•‘μ„ μ§€μ›ν•˜λŠ” 데 ν•„μš”ν•œ 일뢀 ν•­λͺ©(예: νŽ˜μ΄μ§€λ₯Ό μ‹€ν–‰ κ°€λŠ₯ν•œ κ²ƒμœΌλ‘œ ν‘œμ‹œ, I-μΊμ‹œ ν”ŒλŸ¬μ‹± λ“±)도 JIT 컴파일러λ₯Ό μ§€μ›ν•˜λŠ” 데 ν•„μš”ν•˜μ§€λ§Œ μ‹€μ œλ‘œλŠ” κΉŒλ‹€λ‘­μŠ΅λ‹ˆλ‹€.

μœ„μΉ˜ 독립 μ½”λ“œ(PIC)도 ν•„μš”ν•˜λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. Kitsune λ¬Έμ„œλŠ” μ‹€μ œλ‘œ 버전 κ°„ 데이터 λ ˆμ΄μ•„μ›ƒ λ§ˆμ΄κ·Έλ ˆμ΄μ…˜κ³Ό 같은 훨씬 더 곡격적인 λ³€ν™˜μ„ λ‹€λ£Ήλ‹ˆλ‹€. (이 μ‹œμ μ—μ„œ λ‚˜λŠ” κ·Έ μ’…μ΄λ§Œ ν›‘μ–΄λ³΄μ•˜λ‹€.)

이것은 멋진 μΌμ΄μ§€λ§Œ μ•„λ§ˆλ„ μΌμ–΄λ‚˜μ§€ μ•Šμ„ 것이라고 λ§ν•˜λŠ” 것이 νŽΈμ•ˆν•©λ‹ˆλ‹€. 이보닀 더 섀득λ ₯ μžˆλŠ” λ‹€λ₯Έ μ–΄λ €μš΄ λ¬Έμ œλ“€μ΄ λ§Žλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

LLVM 및 ν•΄λ‹Ή JITλ₯Ό 톡해 컴파일된 μ½”λ“œλ‘œ λͺ‡ 번 μˆ˜ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€. VM에 λ˜μ Έμ„œ Erlang이 VM λ‚΄μ—μ„œ ν•  수 μžˆλŠ” 것과 λ™μΌν•œ μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
영감: http://vimeo.com/36579366
C++의 예:

λˆ„κ΅°κ°€ μ €μˆ˜μ€€ VM을 μ‚¬μš©ν•˜κ³  μ‹Άλ‹€λ©΄ Rustμ—μ„œλ„ κ·Έλ ‡κ²Œ ν•  수 μžˆμ„ 것 κ°™μŠ΅λ‹ˆλ‹€... 그런 μ‹μœΌλ‘œ μž‘λ™ν•˜λ €λ©΄ μ–΄μ¨Œλ“  VM λ™μž‘μ„ μΆ”κ°€ν•΄μ•Ό ν•©λ‹ˆλ‹€...

λ‚˜λŠ” 이것을 μ°Έμ‘° http://runtimecompiledcplusplus.blogspot.co.uk/ 및 μ½”λ“œ https://github.com/RuntimeCompiledCPlusPlus/RuntimeCompiledCPlusPlus 용으둜만 μΆ”κ°€ν•  κ²ƒμž…λ‹ˆλ‹€.

및 https://bentheelder.github.io/blog/rust-hotswap.html

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰