이더리움 가상 머신 구조와 기능 심층 분석


암호화폐 기초 지식
암호화폐란 무엇인가?
암호화폐는 디지털 자산의 일종으로, 암호화 기술을 통해 안전하게 거래되고 보존됩니다. 전통적인 통화와는 달리 중앙 기관이 없고, 블록체인 기술에 기반하여 운영됩니다. 블록체인은 거래의 투명성을 보장하고 분산형 네트워크 상에서 동작하기 때문에, 해킹이나 위조 위험이 줄어듭니다. 이러한 특성 덕분에 암호화폐는 글로벌 결제 시스템으로서 관심을 받기 시작했습니다.
블록체인 기술의 원리
블록체인은 정보를 블록이라는 단위로 저장하며, 각 블록은 이전 블록과 연결되어 체인을 형성합니다. 이러한 구조 덕분에 데이터의 변조가 매우 어렵습니다. 블록체인 기술은 높은 신뢰성을 제공하며, 각 거래는 네트워크의 모든 참여자의 검증을 받아야 합니다. 이는 중앙 집중식 시스템의 단점을 극복하는 혁신적인 해결책으로 평가받고 있습니다.
이더리움 가상 머신(EVM) 소개
이더리움 가상 머신(EVM)은 이더리움 블록체인에서 스마트 계약을 실행하기 위한 핵심 도구입니다. EVM은 개발자에게 다양한 언어로 프로그래밍할 수 있는 환경을 제공하며, Code는 블록체인 상에서 누구나 검토할 수 있습니다. 이는 보안성과 투명성을 높이는 데 큰 역할을 합니다. EVM은 운영체제와도 비슷하여, 각각의 스마트 계약이 스스로 독립적으로 실행되는 구조를 가지고 있습니다.
EVM은 스마트 계약의 실행을 통해 모두에게 공정한 계약 조건을 제공하며, 이는 이더리움이 가 진 가장 큰 강점 중 하나입니다.
투자 전략 및 팁
암호화폐 투자 방법
암호화폐에 투자할 때는 다음과 같은 전략이 필요합니다.
- 시장 조사: 새로운 프로젝트의 기술적 토대와 팀을 파악해야 합니다.
- 다각화: 투자 포트폴리오는 여러 자산으로 분산되어야 위험을 줄일 수 있습니다.
- 장기 투자: 단기 시장 변동에 흔드는 것이 아닌, 장기적으로 보유하는 것이 바람직합니다.
리스크 관리 및 포트폴리오 구성
투자 리스크를 관리하기 위해서는 지속적인 모니터링을 해야 합니다. 이를 통해 시장의 변화에 적절히 대처하고 손실을 최소화할 수 있습니다. 또한, 포트폴리오를 적절하게 구성하여 위험과 수익을 균형 있게 유지하는 것이 중요합니다.
EVM을 통한 스마트 계약은 투자자들에게 더욱 안전하고 신뢰할 수 있는 거래 기회를 제공하며, 이는 투자 결정에 긍정적인 영향을 미칩니다.
결론
이더리움 가상 머신은 블록체인 기술의 혁신적인 진화를 나타내며, 이는 앞으로의 디지털 자산 시장에도 큰 변화를 가져올 것입니다. 투자자와 개발자 모두가 이 기술을 이해하고 활용함으로써, 더 나은 결과를 얻을 수 있습니다.
이더리움에 대한 더 많은 정보는 이곳을 참고하세요: Wikipedia
더 깊이 있는 이해를 위해 를 방문해 보세요.
이더리움 가상 머신의 개요
이더리움 가상 머신(EVM)은 이더리움 블록체인 내부에서 스마트 계약을 실행하는 중요한 역할을 담당한다. EVM은 단순한 계산 장치 이상의 기능을 지니고 있으며, 이것이 왜 중요한지를 살펴보면, 현재의 디지털 경제와 미래의 발전에 대한 통찰력을 제공한다.
EVM은 다수의 분산 애플리케이션(dApps)을 지원하며, 사용자가 복잡한 거래를 안전하게 처리할 수 있도록 돕는다. 금융, 예술, 소유권 이전 등 다양한 분야에서 혁신을 가져오고 있으며, 이를 통해 사용자는 자산의 이동이나 계약의 이행을 더욱 원활하게 할 수 있게 된다.
이더리움의 분산형 환경은 중앙 집중형 시스템과 달리 신뢰를 구축하는 데 필수적이다. 따라서, EVM은 프로그래밍 가능한 블록체인에서 사용자들이 코드로 작성한 계약들이 정확히 실행되고 결과를 도출하게 하는 핵심적 매개체가 된다.
이더리움의 정의
이더리움은 2015년에 비탈릭 부테린에 의해 만들어진 블록체인 플랫폼으로, 분산형 애플리케이션을 개발하고 운영할 수 있는 환경을 제공한다. 이더리움 플랫폼은 데이터 저장, 실행 및 계약 형성이 가능한 기능들을 갖추고 있으며, 그 중심에는 EVM이 자리 잡고 있다.
이더리움은 암호화폐인 이더(ETH)를 통하여 네트워크 사용자들을 보상하며, 사용자는 이를 통해 다양한 스마트 계약과 dApps에 참여할 수 있다. EVM 없이 이더리움은 단순한 블록체인이 될 것이며, 그본질적인 장점들이 사라질 것이다.
가상 머신이란 무엇인가
일반적으로 가상 머신(Virtual Machine)은 물리적 컴퓨터의 환경을 소프트웨어적으로 재현하는 기술이다. 이는 여러 운영 체제를 동시에 실행하거나, 특정한 프로그램을 별도의 환경에서 실행하기 위해 필요하다. EVM 또한 이러한 개념을 기반으로 하여, 서로 다른 스마트 계약을 독립적으로 실행할 수 있는 환경을 제공한다.
EVM은 규격화된 아키텍처를 갖추고 있어서, 모든 스마트 계약 코드가 동일한 방식으로 처리되도록 보장한다. 이를 통해 개발자들은 자신이 작성한 코드를 다른 사용자와 안전하게 공유하고, 실행할 수 있는 유연성을 지닌다.
"EVM은 단순한 실행 환경 그 이상이다. 이는 블록체인의 신뢰성을 구축하도록 도와주는 핵심 기구이다."
EVM의 구조와 기능에 대한 이해는 스마트 계약의 효율성과 안전성을 제고하는 데 필수적이며, 이는 덕분에 이더리움 생태계가 어떻게 작동하는지를 더욱 명확히 알 수 있게 해준다.
EVM의 기능
이더리움 가상 머신(EVM)의 기능은 이더리움 블록체인의 심장부와도 같은 역할을 한다. EVM의 기능은 단순히 스마트 계약을 실행하는 것을 넘어, 블록체인이 탈중앙화된 신뢰를 구축할 수 있는 핵심 요소로 작용한다. 본 섹션에서는 이러한 기능을 자세히 살펴보고, 그 의미와 중요성을 분석하겠다.
스마트 계약 실행


스마트 계약은 EVM의 가장 중요한 기능之一이다. 이 계약들은 프로그래밍 코드로 작성되며, 계약 조건이 충족될 경우 자동으로 이행된다. 예를 들어, 두 사람이 특정 비율로 돈을 나누는 계약을 체결했다면, 조건이 충족되는 순간 자동으로 그 비율에 따라 자금이 이동하는 방식이다. 이로 인해 중개자의 개입 없이도 안전하고 원활한 거래가 가능하다.
스마트 계약의 효율성에는 여러 가지 이유가 있다. 첫째, 자동화된 이행은 시간이 단축되며 경제적 이점이 있다. 둘째, 프로그래밍 언어를 통해 복잡한 논리를 구현할 수 있어, 맞춤형 계약을 설계하는 것이 쉬워진다. 이 계약은 불변성이 있어, 한번 배포된 후에는 수정이 불가능하다. 이는 계약의 신뢰성을 더욱 높이며, 사기나 변조로부터 보호할 수 있다.
스마트 계약의 실제 사례로는 Decentralized Finance(DeFi)에서의 다양한 플랫폼 사용이 있다. 이처럼 EVM에서의 스마트 계약 실행은 혁신적이고 투명한 거래 환경을 제공, 투자자와 개발자 모두에게 유익하다.
상태 저장 및 변경
EVM이 처리하는 또 다른 중요한 기능은 상태 저장 및 변경이다. 블록체인에서는 모든 거래와 계약의 결과가 특정 상태로 저장된다. EVM은 이러한 상태를 관리하며, 변경하는 과정을 책임진다. 예를 들어, A가 B에게 1 이더를 송금하면, EVM은 A의 잔고에서 1 이더를 차감하고, B의 잔고에 1 이더를 추가하는 방식으로 상태를 업데이트한다.
이 기능은 EVM의 상태 전이 시스템에 의해 관리된다. 상태 전이는 블록체인 네트워크의 모든 노드에 의해 동기화되며, 이러한 과정 덕분에 모든 사용자는 동의된 상태를 공유하게 된다. 이는 탈중앙화된 네트워크에서의 신뢰성을 더욱 강화해준다.
상태의 변경은 또한 스마트 계약에서 중요한 역할을 한다. 계약의 실행은 EVM에 의해 관리된 특정 조건이 충족될 때만 이루어진다. 예를 들어, 특정 조건이 만족되지 않으면 상태는 변경되지 않고, 계약은 이행되지 않는다. 이런 방식으로 EVM은 상태의 정합성을 보장하고, 모든 거래가 정확하게 이루어질 수 있도록 한다.
EVM의 기능은 블록체인 거래의 핵심이며, 탈중앙화된 신뢰를 구축하게 해준다.
EVM의 기능은 블록체인 생태계의 필수 요소로 작용하며, 이러한 기능들은 단순한 기술을 넘어 실제 시장에서 혁신의 기회를 제공한다. 이를 통해 투자자와 개발자들은 보다 더 신뢰할 수 있는 환경에서 거래와 계약을 수행할 수 있다.
이러한 EVM의 특성들은 향후 블록체인 생태계의 확장과 새로운 기능 개발에 기여할 것이다. 이처럼 EVM은 기술적 진화뿐 아니라 실제 사용 사례에 있어서도 중요한 역할을 할 것이다.
EVM의 구조
이더리움 가상 머신(EVM)의 구조는 이더리움 플랫폼이 정상적으로 작동하도록 하는 기초를 이룹니다. EVM은 스마트 계약을 실행하고 블록체인 상태를 관리하는데 필수적인 요소로, 개발자와 투자자 모두에게 큰 중요성을 가지고 있습니다.
EVM이 어떻게 작동하는지를 이해하는 것은 이더리움 생태계 전반을 이해하는 데 중요한 기초가 됩니다. 이 부분에서는 EVM의 아키텍처, 구성 요소, 그리고 다른 가상 머신과의 비교를 통해 이더리움의 복잡한 구조를 자세히 살펴보겠습니다.
EVM의 아키텍처
EVM의 아키텍처는 모듈식 구조로 되어 있으며, 이는 각 부품이 독립적으로 작동하도록 돕습니다. 이 아키텍처의 핵심은 다음과 같은 세 가지 요소로 구성됩니다:
- 스택: EVM은 1024개의 데이터 항목을 보관할 수 있는 스택을 사용하여 연산을 수행합니다. 데이터를 빠르게 읽고 쓸 수 있는 방식으로 구현되어 있습니다.
- 메모리: 임시 데이터를 저장하는 데 사용됩니다. 메모리는 스택보다 더 많은 데이터를 저장할 수 있으며, 유동적으로 크기를 조정할 수 있습니다.
- 영구 저장소 (스토리지): 블록체인에 저장된 상태 변수는 여기에서 관리됩니다. 스토리지의 데이터는 스마트 계약 상태에 영향을 미치고, 이더리움 블록체인에 계속 저장됩니다.
이러한 아키텍처 덕분에 EVM은 효율적으로 작업을 처리하고, 개발자들은 더 효과적으로 스마트 계약을 구축할 수 있습니다.
가상 머신의 구성 요소
EVM의 구성 요소는 상호 작용해 스마트 계약을 실행하는 중요한 역할을 맡고 있습니다. 각 구성 요소를 살펴보면 다음과 같습니다:
- 코드와 데이터: 이더리움 스마트 계약의 핵심이 되는 사용자 정의 코드와 데이터는 EVM에 의해 실행됩니다.
- 가스: 여기에선 가스가 연산 비용을 메 기는데 사용됩니다. 각 연산은 가스 가격이 있으며, 이를 통해 처리 비용을 관리합니다.
- 입력 및 출력: EVM은 함수 호출 및 이벤트 발행과 같은 입력 및 출력을 처리합니다. 이러한 프로세스는 EVM 작동에 필수적입니다.
이 구성 요소들은 EVM이 각 계약을 독립적으로 처리할 수 있게 하는 열쇠입니다. 모든 과정이 체계적으로 연결되어, 스마트 계약이 작동할 수 있는 기본 구조를 형성하고 있습니다.
EVM과 다른 가상 머신의 비교
EVM을 다른 가상 머신과 비교하면 몇 가지 주목할 만한 차이점이 나타납니다. 주목할 점은 다음입니다:
- 목적: EVM은 주로 스마트 계약을 실행하기 위해 설계되었습니다. 반면에, Java Virtual Machine (JVM)은 다양한 프로그래밍 언어로 작성된 응용 프로그램을 실행할 수 있습니다.
- 개발 언어: EVM은 Solidity와 같은 특화된 언어를 사용하여 스마트 계약을 작성합니다. 반면, JVM은 Java 언어를 사용합니다.
- 상태 관리: EVM은 블록체인 상태를 관리하는 방식이 그냥 과거 데이터를 유지함과 동시에 현재 상태를 업데이트하는 방식으로, 다른 가상 머신과는 그 처리 방식이 다릅니다.
이와 같이 EVM의 구조는 독특한 특성을 가지고 있으며, 이를 이해하는 것은 블록체인 기술의 발전과 활용에 있어 매우 중요합니다.
EVM의 아키텍처와 구성 요소는 이더리움의 효율성 및 유연성을 높이는 데 기여하는 기본 원칙입니다.
개발 환경
이더리움 가상 머신(EVM)의 개발 환경은 스마트 계약과 분산 애플리케이션(dApp)을 설계하고 구축하는 데 있어 매우 중요한 요소이다. 개발 환경은 프로그래머들이 복잡한 블록체인 기술을 원활하게 사용할 수 있게 해 주며, 결국에는 투자자와 사용자에게 더 나은 서비스를 제공할 수 있도록 한다. 또한, 적절한 개발 환경은 시간과 비용을 절약하고, 프로토타입 개발을 빠르게 할 수 있도록 도와준다. 아래에서 개발 환경의 세 가지 주요 측면에 대해 살펴보겠다.
스마트 계약 개발 언어
스마트 계약을 작성하는 데 있어 가장 널리 사용되는 언어는 **솔리디티(Solidity)**이다. 솔리디티는 자바스크립트와 비슷한 문법을 가지고 있어, 개발자들이 쉽게 접근할 수 있다. 이 언어를 사용하여 작성된 스마트 계약은 EVM에서 실행된다.
- 직관적인 문법: 솔리디티는 자바스크립트와 비슷한 문법 구조를 갖고 있어, 많은 개발자들이 쉽게 이해할 수 있다.
- 객체지향 프로그래밍: 스마트 계약은 여러 데이터 구조와 기능을 하나의 객체로 묶을 수 있는 구조를 제공한다.
솔리디티 외에도 Vyper와 같은 다른 개발 언어도 있으며, 이들은 안전성 및 직관성을 강조하고 있다. Vyper는 더 제한적인 기능 세트를 제공하여 코드의 간결성을 높이며 보안을 강화한다.
개발 촉진 도구
이더리움 개발을 돕는 여러 도구가 있다. 이러한 도구들은 스마트 계약을 작성하고 테스트하는 데 있어 효과적이다. 가장 널리 사용되는 도구는 Truffle이다. Truffle은 스마트 계약을 쉽게 배포할 수 있는 프레 임워크로, 테스트 관리 및 자산 관리를 간소화한다.
- Ganache: Truffle의 구성 요소 중 하나로, 로컬 블록체인 네트워크를 구축하여 개발자가 쉽게 테스트하고 디버깅할 수 있도록 한다.
- Remix: 웹 기반의 IDE로, 사용자가 브라우저에서 직접 스마트 계약을 작성하고 테스트할 수 있도록 지원한다.


이 외에도 MetaMask, Hardhat 같은 도구들도 개발자들 사이에서 인기가 있다. 이들은 편리한 배포 및 관리 기능을 제공한다.
테스트 및 배포
스마트 계약의 최종 단계는 테스트 및 배포이다. 테스트는 스마트 계약이 정확하게 작동하는지 확인하는 필수 과정이다. 오류가 있을 경우, 이는 재정적 손실이나 기능적 문제가 발생할 수 있으므로 주의가 필요하다.
- 단위 테스트: 각 기능이 예정대로 작동하는지 확인하기 위해 개별 테스트를 작성한다. Truffle이나 Hardhat과 같은 도구를 사용해 이러한 단위 테스트를 진행할 수 있다.
- 모의 배포: Ganache와 같은 로컬 네트워크에서 계약을 배포하여 실세계 환경에서 어떻게 작동하는지를 시뮬레이션 한다.
스마트 계약을 실제 운영 환경에 배포할 때는 Ether 등의 암호화폐가 필요하다. 이더리움 네트워크에 실제로 배포 후 생기는 문제는 신중히 다루어야 하며, 이를 통해 개발자는 향후 문제를 예방할 수 있다.
이러한 개발 환경을 이해하고 활용함으로써 개발자들은 이더리움 생태계 내에서 성공적으로 애플리케이션을 구축하고, 사용자들에게 신뢰할 수 있는 서비스를 제공할 수 있다.
EVM의 보안
이더리움 가상 머신(EVM)의 보안은 이더리움 생태계의 안전성과 신뢰성을 보장하는 데 매우 중요한 요소다. 스마트 계약의 실행은 기본적으로 EVM 내에서 이루어지며, 이 과정에서 발생할 수 있는 보안 이슈는 투자자와 개발자 모두에게 큰 영향을 미칠 수 있다. 이 섹션에서는 EVM의 보안 위협 및 취약점, 그리고 법적 및 규제 측면을 깊이 있게 탐구하겠다.
보안 위협과 취약점
EVM의 가장 큰 맹점 중 하나는 스마트 계약의 불완전한 코드로 인해 발생할 수 있는 여러 보안 위협이다. 개발자가 의도하지 않은 방식으로 코드가 작동할 수 있으며, 이는 자산의 손실로 이어질 수 있다. 예를 들어, Reentrancy Attack는 공격자가 스마트 계약의 함수 호출 중에 재진입하여 여러 번 자금을 빼낼 수 있는 공격 방식으로, 그로 인해 상당한 금전적 손실이 발생할 수 있다.
주요 보안 위협으로는 다음과 같은 것들이 있다:
- 오류와 취약점: 코드에 버그가 있거나 검증되지 않은 로직이 포함되어 있을 경우,
- 타사 라이브러리 의존: 외부 라이브러리를 사용할 경우, 라이브러리 자체의 취약점으로 인해 보안 리스크가 발생할 수 있음.
- 게이밍 공격: 노드 보안이 강화되어도 소프트웨어가 취약하면 해커들이 이를 악용할 가능성이 있음.
"스마트 계약은 인간의 실수를 제거한다고 생각되지만, 그 역설적인 결과로 우리의 잘못된 코딩이 평생을 좌우할 수 있는 위험이 존재합니다."
이렇듯 EVM의 보안에는 여러 측면이 있으며, 이를 간과할 경우 프로젝트 전체가 위험에 처할 수 있다. 따라서 개발자는 스마트 계약 발표 전에 다양한 테스트와 보안 감사 과정을 거치는 것이 필수적이다.
법적 및 규제 측면
이더리움과 관련된 법률 및 규제 환경은 아직 계속 변화 중이다. 이에 따라 EVM으로 만들어진 스마트 계약의 법적 지위와 책임에 대한 명확한 해석이 필요한 상황이다. 각국 정부는 블록체인 기술에 대한 규제를 강화하고 있으며, 이로 인해 EVM의 사용에 통제가 가해질 수 있다.
- 스마트 계약의 법적 인식: 많은 국가에서는 스마트 계약을 법률 문서로 인정하며, 이에 따라서 발생하는 법적인 책임도 주장될 수 있다.
- 규제 준수 요구사항: 현재 EVM을 사용하는 일부 플랫폼들은 자금 세탁 방지(AML)와 고객확인제도(KYC) 관련 법규를 준수해야 하며, 이는 개발자와 투자자에게 추가적인 부담으로 작용할 수 있다.
- 충돌과 갈등: 각국의 법령이 다르기 때문에, 특정 국가의 사용자들이 다른 나라의 법률에 의해 묶일 경우, 법적 갈등이 발생할 여지가 다분하다.
EVM의 보안과 관련된 법적 및 규제 측면은 신중히 고려되어야 할 사안이며, 이는 사용자들이 EVM을 보다 신뢰성 있게 사용할 수 있도록 돕는다.
EVM의 효율성
이더리움 가상 머신(EVM)의 효율성은 이더리움 블록체인의 전반적인 성능과 직결되며, 이는 개발자와 투자자에게 모두 매우 중요한 요소이다. 효율성이란 어떤 시스템이 자원을 얼마나 잘 활용하느냐를 의미한다. EVM의 연산 비용과 처리 속도는 이 블록체인 생태계의 지속 가능성에 영향을 미치며, 따라서 이를 제대로 이해하는 것이 필수적이다.
연산 비용 및 처리 속도
EVM의 연산 비용은 스마트 계약을 실행할 때 소요되는 가스(gas) 비용을 기준으로 평가된다. 가스는 이더리움 네트워크 내에서 거래 및 계약 실행을 할 때 필요한 계산량을 나타내는 단위이다. 이 단위는 네트워크의 사용량에 따라 변동하기 때문에 효율적인 코드 작성이 매우 중요하다.
예를 들어, 불필요한 루프가 포함된 스마트 계약은 연산 비용을 크게 증가시켜 불필요한 비용을 초래할 수 있다. 물리적으로, EVM은 모든 계산이 완료된 후 상태 변화를 반영하는 구조로 설계되어 효율성을 중시한다. 이로 인해 빠른 처리 속도를 자랑하며, 초당 수백 건의 거래를 처리할 수 있도록 설계되어 있다.
EVM의 효율성을 극대화하는 방법은 가스 소모를 줄이는 것입니다. 효율적인 코드 구조가 이더리움 생태계의 건강을 지켜줍니다.
비교: 다른 블록체인 플랫폼
EVM의 효율성을 논할 때, 다른 블록체인 플랫폼과의 비교는 중요한 시각을 제공한다. 비트코인(BTC), 리플(XRP) 같은 다른 블록체인 시스템은 각기 다른 목적과 구조를 가지고 있다.
예를 들어, 비트코인은 주로 결제 수단으로 기능하며, 거래의 처리 속도는 상대적으로 느릴 수 있다. 반면, 이더리움은 스마트 계약을 통해 다양한 기능을 수행할 수 있는 플랫폼으로 자리 잡고 있다.
이더리움과 같은 스마트 계약 플랫폼들은 일반적으로 높은 처리 속도를 유지하기 위해 다양한 최적화 방법을 채택하고 있다. 예를 들면, EOS와 같은 플랫폼은 이더리움보다 더 높이 병렬 처리가 가능하여 더 많은 거래를 처리할 수 있다. 그러나 이와 같은 시스템은 보안과 탈중앙화 측면에서 약점을 노출할 수 있다.
결론적으로, 이더리움의 효율성은 단순한 속도와 비용뿐만 아니라 최종 사용자의 경험과 직결된다. 개발자들이 효율적으로 스마트 계약을 작성하는 방법을 찾는다면, 이는 궁극적으로 더 나은 생태계를 만드는데 기여할 것이다.
- 개발자들에게는:
- 투자자들에게는:
- 코드를 최적화하여 가스 비용을 줄일 것을 권장합니다.
- 테스트 환경에서 다양한 조건을 실험하며 시스템의 한계를 이해하는 것이 중요합니다.
- EVM의 효율성을 이해함으로써 더 합리적인 투자 결정을 내릴 수 있습니다.
- 이더리움의 발전 방향을 주의 깊게 살펴보아야 합니다.
EVM의 진화
이더리움 가상 머신(EVM)의 진화는 이더리움 생태계와 블록체인 기술 자체의 발전에 있어 필수적인 요소로 자리잡고 있다. EVM은 단순한 기술이 아니라 스마트 계약과 탈중앙화 애플리케이션을 위한 토대를 제공하기 때문에, 시간이 지남에 따라 그 기능과 효율성이 지속적으로 향상되어야 한다. 이 섹션에서는 EVM의 과거와 현재의 변화, 그리고 미래 전망에 대해 살펴보겠다.
과거 및 현재의 변화
EVM은 처음 출범 당시에는 기본적인 스마트 계약 실행을 지원하는 수준이었다. 그 기능은 제한적이었고 복잡한 로직을 처리하기엔 불충분했다. 하지만 다음과 같은 특징들이 시간이 지남에 따라 발전하였다:

