|  [블록체인아카데미] 2018. 12. 10-14, 제1차 경북김천블록체인테크센터 블록체인언어강의 롤랑, 알체인 조나단 코크머 등 강사. 무료강의 수강신청은 교육담당 제임스박에게 |
|write date : 2018-11-21 11:17:55 |
Rholang언어 강좌 경북김천블록체인AI테크센터 1차 블록체인교육실시 (경북블록체인테크센터는 12월에 ORBS 무료강의도 진행, 지속적인 블록체인 세계최고전문가 초청 강연)
날짜: 2018. 12. 10-14 (오전10-오후5시까지)
장소: 김천시 아포읍 아포대로 659-15 (블록체인AI테크센터)
교수: Jonathan Kochmer, 조슬린 리, 피터, 등
비용: 무료. 단 6-7평 원룸에 2-3명 숙박, 음식은 각자 부엌에서 요리가능. 학생들끼리 돈을 거둬 물, 음료, 라면 등 간단한 식품 구매가능. 요리제공시에는 식비를 부담하는 방식. 부근 식당 방문 등
학생인원: 10명 미만 (경북거주자 우선)
커리큘럼: 롤랑 언어교육및 voting system, fake news잡는 블록체인
Rholang이라는 언어는 알체인(Rchain)에서 사용하는 언어로, 다른 언어보다 아주 쉽고 효용성이 높다고 한다.
Rholang is a behaviorally typed, concurrent programming language, with a focus on message-passing and formally modeled by the ρ-calculus, a reflective, higher-order extension of the π-calculus. It is designed to be used to implement protocols and "smart contracts" on a general-purpose blockchain, but could be used in other settings as well.
The language is still in the early stages of development, but for those who are interested, more information can be found in the RChain Platform Architecture.
- Clone the repository
- Configure/fetch dependencies
- CUP - can be installed using apt
- JLex - install using apt
sbt bnfc:generate to generate the parser
sbt console to launch the sbt console
- In the sbt console import the compiler with
- And then compile any Rholang ".rho" file with
Note if you make any changes you may need to run
sbt clean or
RChain Platform Architecture
Notice: Updated Details Available
The RChain Platform Architecture description provides a high-level blueprint of the RChain decentralized, economically sustainable public compute infrastructure. While the RChain design is inspired by that of earlier blockchains, it also realizes decades of research across the fields of concurrent and distributed computation, mathematics, and programming language design. The platform includes a modular, end-to-end design that commits to correct-by-construction software and industrial extensibility.
Intended audience: This document is written for software developers and innovators who are interested in decentralized systems.
The decentralization movement is ambitious and will provide awesome opportunities for new social and economic interactions. Decentralization also provides a counterbalance to abuses and corruption that occasionally occur in large organizations where power is concentrated. Decentralization supports self-determination and the rights of individuals to self-organize. Of course, the realities of a more decentralized world will also have their challenges and issues, such as how the needs of international law, public good, and compassion will be honored.
We admire the awesome innovations of Bitcoin, Ethereum, and other platforms that have dramatically advanced the state of decentralized systems and ushered in this new age of cryptocurrency and smart contracts. However, we also see symptoms that those projects did not use the best engineering and formal models for scaling and correctness in order to support mission-critical solutions. The ongoing debates about scaling and reliability are symptomatic of foundational architectural issues. For example, is it a scalable design to insist on an explicit serialized processing order for all of a blockchain’s transactions conducted on planet earth?
To become a blockchain solution with industrial-scale utility, RChain must provide content delivery at the scale of Facebook and support transactions at the speed of Visa. After due diligence on the current state of many blockchain projects, after deep collaboration with other blockchain developers, and after understanding their respective roadmaps, we concluded that the current and near-term Blockchain architectures cannot meet these requirements. In mid-2016, we resolved to build a better blockchain architecture.
Together with the blockchain industry, we are still at the dawn of this decentralized movement. Now is the time to lay down a solid architectural foundation. The journey ahead for those who share this ambitious vision is as challenging as it is worthwhile, and this document summarizes that vision and how we seek to accomplish it.
We began by admitting the following minimal requirements:
- Dynamic, responsive, and provably correct smart contracts
- Concurrent execution of independent smart contracts
- Data separation to reduce unnecessary data replication of otherwise independent tokens and smart contracts
- Dynamic and responsive node-to-node communication
- Computationally non-intensive consensus/validation protocol
Building quality software is challenging. It is easier to build “clever” software; however, the resulting software is often of poor quality, riddled with bugs, difficult to maintain, and difficult to evolve. Inheriting and working on such software can be hellish for development teams, not to mention their customers. When building an open-source system to support a mission-critical economy, we reject a minimal-success mindset in favor of end-to-end correctness.
To accomplish the requirements above, our design approach is committed to:
- A computational model that assumes fine-grained concurrency and dynamic network topology;
- A composable and dynamic resource addressing scheme;
- The functional programming paradigm, as it more naturally accommodates distributed and parallel processing;
- Formally verified, correct-by-construction protocols which leverage model checking and theorem proving;
- The principles of intension and compositionality.