create account

A better approach to Turing Complete Smart Contracts by dantheman

View this thread on: hive.blogpeakd.comecency.com
· @dantheman · (edited)
$135.24
A better approach to Turing Complete Smart Contracts
<div class="pull-right">

http://bitcoinist.net/wp-content/uploads/2014/08/smart-contract-e1408693092466.jpg
</div>
Ethereum is the current standard for general purpose smart contracts, but anyone who has spent time developing for Ethereum knows there are some very real challenges with its design. I have spent some time this past week working on a proof of concept for a new Turing complete smart contract system and in the process have identified some major differences in philosophical approaches.  

## Ethereum’s Technical Challenges
Before getting into the details of what I have learned, lets review the technical challenges faced by smart contract developers on Ethereum.

### 1. Performance

A [performance analysis in Feb 2016](https://blog.ethcore.io/performance-analysis/) showed that it took the Parity Ethereum client over an hour to process 6 months worth of transactions (1 million blocks).  All 1M blocks were prior to the recent denial of service attack on the Ethereum network.  

To put this in perspective, processing 6 million Steem blocks with an average transaction rate that is significantly higher Ethereum can be processed in just a few minutes.  This represents over a 20x difference in processing speed. 

The speed at which a single CPU thread can process the virtual machine directly impacts that potential transaction throughput of the network.  The current Ethereum network is able to sustain little more than 20 transactions per second.   Steem, on the other hand, can sustain 1000 transactions per second. 

A recent attack on Ethereum was able to completely saturate the network and deny service to others.  Steem, on the other hand, easily survived the flood attacks thrown at it without disrupting service and all without any transaction fees!

There are several reasons why the EVM (Ethereum Virtual Machine) is slow.

1. Accessing Storage based on Level DB and 32 byte key/value pairs 
2. 256 bit operations are much slower for normal calculations
3. Calculating GAS consumption is part of consensus 
4. Internal Memory Layout of Script is also part of consensus. (see 1.)
5. Few opportunities to optimize EVM scripts

####  Regarding claims of Unlimited Scalability 
<center>http://s2.quickmeme.com/img/ed/ed1d530c3894f49cfcf43b01a30c08c74f4131a579862139f689edaa671d4bd2.jpg</center>
Vitalik Buterin [claims that Ethereum will offer “unlimited” scalability within 2 years](https://www.cryptocoinsnews.com/ethereum-announces-unlimited-scalability-roadmap/).  This claim is based upon the idea that not all nodes need to process all transactions.   This is a bold claim that I believe will fail for some very practical reasons which I will address below.

Their approach is to “shard” the blockchain, which can be viewed as a way of making the blockchain “multi-threaded”.  Each node will run “one thread” and each “thread” will be capable of 20 transactions per second. In theory they can add an unlimited number of nodes and the transaction volume can scale to an limitless amount.

Lets assume there exists two completely independent smart contracts.  These two contracts could each run in their own shard at 20 transactions per second.  But what happens if these two contracts need to communicate with each other?   The solution is to pass messages from one contract to another contract.  Anyone who has implemented multi-threaded programs with message passing knows that it isn’t worth the effort unless the computation to message passing overhead is low enough.  

The overhead of message passing among nodes over the internet is very high.  Adding cryptographic validation also introduces significant overhead. The “cost” to “read” a single value from another shard will be significant.  

Lastly developers of multi-threaded programs are familiar of the concept of each thread “owning” the data it manages. Everything that wants to touch that data goes through its owner. What happens when a single shard owns a piece of data that gets requests greater than 20 per second?  At some point the single thread becomes the bottle neck.  

Implementing Steem with “sharding” would end up bottlenecking on the “global state” that every vote impacts.  The same thing would happen for any market processing limit orders.  Sharding simply doesn’t scale linearly and certainly not in an unlimited manner.   

### 2. Pricing 
<div class="pull-left">

http://www.strategies.com/blog/wp-content/uploads/2013/07/Rising_Prices_000019541083XSmall.jpg
</div>
In order to run code on Ethereum, contracts must pay with GAS.  The EVM counts every instruction executed and looks up how much gas that instruction costs and bills it. If the contract runs out of GAS then all changes made by the contract are reverted, but block producer still keeps the fee for GAS.

Implementing something like Steem on Ethereum has the major challenge that users would have to pay $0.01 per vote and more per post.  As the number of users grows the network would get saturated pushing the price of GAS higher. 

Now imagine that Steem wasn’t the only application running on Ethereum, imagine that Golos and Augur both became popular with a million user’s each. The price of GAS would go up until it stunted the growth of all three applications.  

The only way to bring prices down is to increase transaction throughput by improving efficiency. 

Improving efficiency isn’t a uniform process.  Installing a faster disk will not improve the efficiency of computation.  Making computations faster will not help with disk access.  All attempts at improving efficiency will necessarily impact the relative GAS cost of each operation.

Ethereum was recently forced to execute a [Hard Fork to change gas costs](https://blog.ethereum.org/2016/10/13/announcement-imminent-hard-fork-eip150-gas-cost-changes/).  Last time Ethereum had a hard fork it resulted in the creation of Ethereum Classic! 

It is safe to say that all attempts to optimize the EVM will change the relative cost of the operations. The GAS price can only be reduced by an amount proportional to the instruction that sees the least optimization.  

While optimizing some instructions may increase the profit margin of the block validators, Smart Contract developers are still stuck paying higher prices.

Because GAS is part of consensus, all nodes need to continue processing old blocks using the old GAS calculations up until a hard fork occurs.  This means that future optimizations are constrained by the need to maintain the original accounting.  

### 3. Optimizing Code

One of the biggest sources of optimization is not through improving the hardware of your computer, but through improving the software.  In particular, compilers can work wonders at improving the performance of code running on the same machine. Compilers have the ability to optimize because they have access to more information about the programmers intent. Once the code is converted to assembly many opportunities for optimization are lost.

Imagine someone wanted to optimize an entire contract by providing a native implementation. The native implementation would cause all the same outputs given the same inputs, except it wouldn’t know *how* to calculate the GAS costs because it wasn’t run on the EVM.  

### 4. Programer Intent 

<div class="pull-right">

http://s.quickmeme.com/img/e9/e9b2a1298e34a460d467f6e92f30aafaa831d57dcb991d93036f20c2e13a0442.jpg
</div>

Ethereum smart contracts are published as compiled bytecode which the interpreter processes. In order for people to process and comprehend the smart contract they need to read code, but the blockchain doesn’t store source code, it stores assembly.  People are forced to validate the “compiled code” matches the expected output of the source code.  

There are several problems with this approach.  It requires that all compiler developers generate the same code and make the same optimizations *or* it requires that all contracts be validated based upon the chosen compiler. 

In either case, the compiled code is one step removed from the expressed intent of the contract writers. Bugs in the compiler now become violations of programer intent and these bugs cannot be fixed by fixing the consensus interpretation because consensus does not know the source code.

## A Different Approach

<div class="pull-left">

http://www.hartmannsoftware.com/images/cpp-logo.png
</div>

The creators of the C++ language have a philosophy of defining the expected behavior of a block of code without defining *how* that behavior should be implemented.  This means that different compilers generate different code with different memory layouts on different platforms.  

It also means that developers can focus on *what* they want to express and they can get the results they *expect* without unneeded restrictions on the compiler developers or the underlying hardware.  This maximizes the ability to optimize performance while still conforming to a spec.

Imagine a smart contract platform where developers publish the *code* they want to run, the blockchain consensus is bound to a proper interpretation of the code, but not bound to *how* the code should be executed.  

In this example, a script could be replaced with a precompiled binary using a different algorithm and everything would be *ok* so long as the inputs and outputs of the **black box** remain the same. This is not possible with Etheruem because the **black box** would need to calculate exactly how much GAS was consumed.

### A better approach to GAS
<div class="pull-right">

http://www.cattlenetwork.com/sites/protein/files/styles/archive_desktop/public/field/image/gas%20pump%20with%20gas%20dollar%20sign_28.jpg
</div>

GAS is a crude approach to calculate a deterministic execution time. In an ideal world we would simply use wall clock time, but different computers with different specifications and loads will all get different results. While it may not be possible to reach a deterministic consensus on exactly how much time something takes, it should be possible to reach consensus on whether or not to include the transaction.

Imagine a bunch of people in a room attempting to reach consensus on whether or not to include a transaction.  Each of them measures the wall clock time it takes them to process the transaction and using preemptive scheduling breaks execution if it takes too long.  

After taking their measurements they all vote and if the majority say it was “ok”, then everyone includes the transaction.  The network does not know “how long it took”, it only knows that the transaction took an approved amount of time.  An individual computer will then execute the transactions regardless of how long they take once they know consensus has been reached.

From a consensus perspective, this means all scripts pay the same fee regardless of the actual computation performed.  Scripts are paying for “fixed length time slices” rather than paying for “computations”. In terms operating system developers may be familiar with, scripts must execute within the allotted quantum or they will be preempted and their work lost.

The above approach is very abstract and wouldn’t be practical in a direct voting implementation, but there is a way to implement this that scales without much more overhead than is currently used by Steem.  For starters, all block producers are on a *tight* schedule to produce their block.  If they miss their time slot then the next witness will go.  This means that block producers must be able to apply their block *and* get it propagated across the network to the majority of nodes (including the next witness) *before* the next block time.  

This means that the mere presence of a transaction in a block is a sign that the network was able to process the block and all of its transactions in a timely manner.  Each node in the network also gets a “vote” on how long a block and its transactions took to process.  In effect, a node does not need to relay a block if it thinks the transactions exceeded their allocated time. 

A node that objects to a block based upon its perceived execution time will still accept new blocks building on top of the perceived “bad” block.  At some point either the node will come across a longer fork and switch *or* the “bad” block will be buried under enough confirmations (votes) that it becomes irreversible.  Once it is irreversible the node will begin relaying that block and everything after it.

A block producer, who desires to get paid, will want to make sure that his blocks propagate and will therefore be “conservative” in his estimates of wall clock time that other nodes will have. The network will need to adjust block rewards to be proportional to the number of transactions included.

Due to the natural “rate limiting” enforced by bandwidth / quantum per vesting stake it would require a large stake for any individual miner to fill their own block just to collect the bonus.

### Preventing Denial of Service
<center>http://img.wonderhowto.com/img/40/09/63510176014478/0/hack-wi-fi-performing-denial-service-dos-attack-wireless-access-point.1280x600.jpg</center>

One of the challenges with scripts is that it costs an attacker nothing to generate an infinite loop. Validating nodes end up consuming resources even if the final conclusion is to reject the script. In this case the validator doesn’t get paid for the resources they consumed.

There are two ways that validators can deal with this kind of abuse:
1. Local Blacklist / White list scripts, accounts, and/or peers
2. Require a proof-of-work on each script 

Using proof of work it is possible for a validator to know that the producer of the script consumed a minimum amount of effort.  The more work done, the greater the “wall clock” time the validator will allow the script to execute up to a maximum limit.  Someone wishing to propagate a transaction that is computationally expensive will need to generate a more difficult proof of work than someone generating a transaction that is less expensive.  

This proof-of-work combined with TaPoS  (Transactions as Proof of Stake) means we now have Transactions as Proof of Work which collectively secure the entire network.  This approach has the side effect of preventing witnesses from “stuffing their own block” just to get paid, because each transaction they generate will require a proof of work.  The blockchain can therefore reward witnesses for transactions based upon the difficulty of the proof of work as an objective proxy for the difficulty of executing the script.


 ### Proof of Concept 

I recently developed some code using the Wren scripting language integrated with experimental blockchain operations.  Here is how you would implement a basic “crypto currency” in a single smart contract:

``` c++
test_script = R"(
    class SimpleCoin {
        static transfer( from, to, amount ) {
          var from_balance = 0
          var to_balance = 0

          if( from != Db.current_account_authority().toString ) 
              Fiber.abort( "invalid authority" )

          var a = Num.fromString( amount )
          if( a < 0  ) Fiber.abort( "cannot transfer negative balance" )

          if( Db.has( from ) ) 
               from_balance = Num.fromString(Db.fetch( from ))
          if( Db.has( to ) )   
               to_balance   = Num.fromString(Db.fetch( to ))
            
          if( from_balance <= 0 && Db.script_account().toString != from) 
               Fiber.abort( "insufficient balance" )

          from_balance = from_balance - a
          to_balance   = to_balance + a

          Db.store( from, from_balance.toString )
          Db.store( to, to_balance.toString )
        }
    }
)";

 trx.operations.emplace_back( set_script{ 0, test_script } );
 trx.operations.emplace_back( 
     call_script{ 
             account_authority_level{1,1}, 0, 
             "SimpleCoin", 
              "transfer(_,_,_)", {"1","0","33"}
      }
 );
```

I introduced two blockchain level operations:  set_script, and call_script.  The first operation assigns the script to an account (account 0), and the second operation invokes a method defined by the script.

The scripting environment has access to the blockchain state via the `Db` api.  From this API it can load and store script-specific data as well as query information about the current authority level of an operation.   The `call_script` operation will assert that “account 1” authority level “1”, aka active authority, has approved the call.  It will then invoke the script on “account 0”, and call `SimpleCoin.transfer( “1”, “0”, “33” )`.

The transfer method is able to verify that the `current_account_authority` matches the `from` field of the transfer call.  

### Benchmark of Proof of Concept

I ran a simulation processing 1000’s of transactions each containing a single call to ‘SimpleCoin.transfer’ and measured the time it took to execute.  All told, my machine was able to process over 1100 transactions per second through the interpreter.   This level of performance is prior to any optimization and/or caching of the script.  In other words, the measured 1100 transactions per second included compiling the script 1100 times.  A smarter implementation would cache the compiled code for significant improvements.

To put this in perspective, assuming Ethereum “Unlimited” scaled perfectly it would take 55 nodes to process the same transactions that my single node just processed.  By the time Wren is optimized with proper caching and Ethereum is discounted for necessary synchronization overhead a smart contract platform based upon Steem and Wren technology could be hundreds of times more efficient than Ethereum.  

### Why Turing Complete Smart Contracts

Decentralized governance depends impart upon decentralized enforcement of contracts. A blockchain cannot know in advance every contract that might be beneficial and the politically centralizing requirement of hard forks to support new smart contracts limits the ability to organically discover what works.

With a proper smart contract engine, developers can experiment with “low performance scripts” and then replace their “slow scripts” with high performance implementations that conform to the same black-box interface. Eliminating the need to deterministically calculate GAS and memory layout is absolutely critical to realizing the desired performance enhancements.

## Conclusion

The technology behind Steem combined with the described smart contract design will be hundreds of times more scalable than Ethereum while entirely eliminating transaction fees for executing smart contracts.  This can open up thousands of new applications that are not economically viable on Ethereum.
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 633 others
properties (23)
authordantheman
permlinka-better-approach-to-turing-complete-smart-contracts
categoryblockchain
json_metadata{"tags":["blockchain","ethereum","smartcontract","wren"],"image":["http://bitcoinist.net/wp-content/uploads/2014/08/smart-contract-e1408693092466.jpg","http://s2.quickmeme.com/img/ed/ed1d530c3894f49cfcf43b01a30c08c74f4131a579862139f689edaa671d4bd2.jpg","http://www.strategies.com/blog/wp-content/uploads/2013/07/Rising_Prices_000019541083XSmall.jpg","http://s.quickmeme.com/img/e9/e9b2a1298e34a460d467f6e92f30aafaa831d57dcb991d93036f20c2e13a0442.jpg","http://www.hartmannsoftware.com/images/cpp-logo.png","http://www.cattlenetwork.com/sites/protein/files/styles/archive_desktop/public/field/image/gas%20pump%20with%20gas%20dollar%20sign_28.jpg","http://img.wonderhowto.com/img/40/09/63510176014478/0/hack-wi-fi-performing-denial-service-dos-attack-wireless-access-point.1280x600.jpg"],"links":["https://blog.ethcore.io/performance-analysis/","https://www.cryptocoinsnews.com/ethereum-announces-unlimited-scalability-roadmap/","https://blog.ethereum.org/2016/10/13/announcement-imminent-hard-fork-eip150-gas-cost-changes/"]}
created2016-10-28 18:28:00
last_update2016-10-28 18:36:33
depth0
children63
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value132.892 HBD
curator_payout_value2.345 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length18,739
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,110
net_rshares112,696,412,469,625
author_curate_reward""
vote details (697)
@abit ·
```
          if( from_balance <= 0 && Db.script_account().toString != from) 
               Fiber.abort( "insufficient balance" )
```
This code looks strange.
By the way, do we need to check whether `from_balance >= a`?
properties (22)
authorabit
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t215050597z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 21:51:09
last_update2016-10-28 21:51:09
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length220
author_reputation141,171,499,037,785
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,642,351
net_rshares0
@acidyo ·
Nice to see you back @dantheman! 

Great read!
properties (22)
authoracidyo
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t203323525z
categoryblockchain
json_metadata{"tags":["blockchain"],"users":["dantheman"]}
created2016-10-28 20:33:24
last_update2016-10-28 20:33:24
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length46
author_reputation3,338,937,224,947,022
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,840
net_rshares0
@anonymint · (edited)
I think perhaps you don't understand why cross-sharding breaks Nash Equilibrium.
👍  
properties (23)
authoranonymint
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t164744797z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-29 16:47:33
last_update2016-10-29 17:58:54
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length80
author_reputation28,085,935,540,836
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,647,197
net_rshares528,711,441,406
author_curate_reward""
vote details (1)
@anonymint ·
> Steem, on the other hand, easily survived the flood attacks thrown at it without disrupting service and all without any transaction fees!

Were those bandwidth DDoS attacks filtered by perimeter nodes, or validation attacks absorbed by validating nodes?

> The price of GAS would go up until it stunted the growth of all three applications.

Incorrect. If the price of GAS would increase due to higher demand but the lesser amount of GAS needed would still reflect the unchanged cost of validating a script at that higher price.

> The native implementation would cause all the same outputs given the same inputs, except it wouldn’t know how to calculate the GAS costs because it wasn’t run on the EVM.

It could simply compute its own cost based on some counters. If it knows its optimized implementation is less costly than the EVM, then it doesn't harm (i.e. remains compliant) by keeping the GAS if it is depleted before the script completes. Others verifying the depletion case would run the EVM, as this wouldn't cost them more than running native version. For non-depleted scripts, validators run their most efficient native version.

> Require a proof-of-work on each script

Unless this is more expensive in resources than the cost of validating the script, then the attacker has an asymmetric DoS advantage. So all you've done is shifted the cost of paying the fee to generating the equivalent proof-of-work.

And unless each script consumer has access to a premium ASIC, then the attacker still has an asymmetric advantage. And if you say the script consumer can farm out this ASIC, then you've shifted the DoS attack to the said farm.

> Local Blacklist / White list scripts, accounts, and/or peers

That is effective for bandwidth DDoS, but Nash Equilibirium can be gamed by an open system w.r.t. to submitting data for validation.
👍  ,
properties (23)
authoranonymint
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t183257782z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-29 18:32:45
last_update2016-10-29 18:32:45
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,846
author_reputation28,085,935,540,836
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,647,687
net_rshares528,861,747,185
author_curate_reward""
vote details (2)
@arhag ·
$1.86
Have you thought yet about how Wren would create and modify objects to be persisted across transactions/operations (with proper chain reorganization behavior, i.e. somehow implementing those dynamic objects specified in Wren within ChainBase)? What about billing consumption of this persistent memory held (for who knows how long) as part of the database state? The PoW + SP-based rate limiting only "bills" computation time for running the operations. 

Also, if you no longer need to bill at the instruction level, why use an interpreted language like Wren? Use something that can be compiled (either JIT or AOT). It is fine if it is a managed language for safety reasons, but you could probably handle unmanaged ones as well with proper process sandboxing and IPC. This would give a lot more flexibility to the developers in their choice of a language/VM to use to develop their smart contract or DApp.
👍  , , , , , , ,
properties (23)
authorarhag
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t204551145z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:45:51
last_update2016-10-28 20:45:51
depth1
children2
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value1.396 HBD
curator_payout_value0.464 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length905
author_reputation52,490,827,205,383
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,937
net_rshares11,816,938,463,805
author_curate_reward""
vote details (8)
@jamesc ·
How about Java or Scala?  Scala is Java but more compact, elegant, with all the benefits of type checking and annotations.
properties (22)
authorjamesc
permlinkre-arhag-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161102t134635542z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-11-02 13:46:36
last_update2016-11-02 13:46:36
depth2
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length122
author_reputation11,900,157,451,513
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,672,409
net_rshares0
@arhag · (edited)
Well, we could use the JVM and Java bytecode. Then, third-party developers could compile their code written in Java, Scala, or other JVM-compatible languages to Java bytecode and post that bytecode to the blockchain. Another possibility is CLR with Mono (could support the C# language). The good thing about both choices is that we don't need to use process isolation to protect against invalid memory access (which if allowed could let the third-party code corrupt the ChainBase database) assuming that any submitted bytecode that uses unsafe operations and unauthorized native APIs are disallowed by the system. By doing it this way with these managed languages (i.e. not allowing languages like C or C++), we can avoid doing costly IPC (inter-process communication). Nevertheless, how to handle a generalized object mapping solution between the safe VM and the raw data available in the ChainBase memory region is still not very clear to me.

Keep in mind that there may be some licensing issues with the JVM. I think the licensing issues are actually better with Mono now that Microsoft acquired Xamarin ([they relicensed Mono under MIT](http://www.mono-project.com/news/2016/03/31/mono-relicensed-mit/)).
properties (22)
authorarhag
permlinkre-jamesc-re-arhag-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161103t014813642z
categoryblockchain
json_metadata{"tags":["blockchain"],"links":["http://www.mono-project.com/news/2016/03/31/mono-relicensed-mit/"]}
created2016-11-03 01:48:12
last_update2016-11-03 02:22:45
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,209
author_reputation52,490,827,205,383
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,676,234
net_rshares0
@ariefseregar ·
whether his or her sbd hargar can go up once a week or every month boss
👍  
properties (23)
authorariefseregar
permlinkre-dantheman-201835t215140429z
categoryblockchain
json_metadata{"tags":["blockchain","ethereum","smartcontract","wren"],"app":"esteem/1.5.1","format":"markdown+html","community":"esteem"}
created2018-03-05 14:51:42
last_update2018-03-05 14:51:42
depth1
children0
last_payout2018-03-12 14:51:42
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length71
author_reputation4,271,542,561
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries
0.
accountesteemapp
weight1,000
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id42,396,952
net_rshares530,292,462
author_curate_reward""
vote details (1)
@ats-david ·
While this is being tested and developed, can we also get some basic user features for Steemit? The value of Steem is supposed to be based on the social media platform built on top of it. But there doesn't appear to be much that is attracting potential users to the site - other than the possibility of making money. With the price continuing to plummet and SBD payouts being halted for now, that incentive is losing its luster. Can we expect some of the desired and needed features any time in the near future?

Your concept for smart contracts looks pretty solid, though. It would be great if it can be implemented. That would definitely give Steem a leg up on the competition.
properties (22)
authorats-david
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t184228402z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 18:42:27
last_update2016-10-28 18:42:27
depth1
children15
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length679
author_reputation324,017,334,201,433
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,176
net_rshares0
@craig-grant ·
I think this blog post has the potential to convert ether investors into steem investors, and that's good for the price of steem :)
👍  
properties (23)
authorcraig-grant
permlinkre-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t193051166z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:30:15
last_update2016-10-28 19:30:15
depth2
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length131
author_reputation437,808,999,210,623
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,461
net_rshares28,861,955,816
author_curate_reward""
vote details (1)
@dantheman ·
$0.04
User facing features are being actively worked on by 4 full time engineers.  Among these include a next generation editor that is fantastic!    Image uploading and notifications are also almost done.  We should be deploying these features to a public test later today.
👍  , , , , , , , ,
properties (23)
authordantheman
permlinkre-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t184745200z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 18:47:30
last_update2016-10-28 18:47:30
depth2
children9
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.028 HBD
curator_payout_value0.008 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length268
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,199
net_rshares756,792,520,613
author_curate_reward""
vote details (9)
@ats-david · (edited)
Well that's great news! Thank you for sharing that. 

You should also look at @dan-atstarlite's blog post today about a virtual marketplace. I know it has been mentioned in the past, but those ideas can be a gateway for non-crypto and non-bloggers to come to Steemit and to familiarize themselves with the site and with cryptocurrencies.
properties (22)
authorats-david
permlinkre-dantheman-re-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t185040677z
categoryblockchain
json_metadata{"tags":["blockchain"],"users":["dan-atstarlite"]}
created2016-10-28 18:50:39
last_update2016-10-28 18:57:00
depth3
children2
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length337
author_reputation324,017,334,201,433
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,218
net_rshares0
@jrcornel ·
That is great news! I think the drop in Steem prices with no bottom in sight, and SBDs no longer being paid out in rewards for posting really has the morale of the Steemit community pretty low. Are you guys going to comment on that in the near future, or announce any plans that might rectify the current downward spiral which appears to be gaining momentum as it falls?
properties (22)
authorjrcornel
permlinkre-dantheman-re-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t185954360z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 18:59:57
last_update2016-10-28 18:59:57
depth3
children4
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length370
author_reputation2,133,450,396,741,846
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,271
net_rshares0
@juvyjabian ·
This is exciting! A new user interface for steemit.
properties (22)
authorjuvyjabian
permlinkre-dantheman-re-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t205141058z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:51:42
last_update2016-10-28 20:51:42
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length51
author_reputation185,700,092,637,158
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,974
net_rshares0
@freedomengineer ·
I was not aware that SBD payments were halted... link?
properties (22)
authorfreedomengineer
permlinkre-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t200233676z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:02:33
last_update2016-10-28 20:02:33
depth2
children3
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length54
author_reputation5,979,020,815,385
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,613
net_rshares0
@ats-david ·
There's no link to an announcement. It's just the current state of payouts due to Steem/SBD supplies and market cap.
properties (22)
authorats-david
permlinkre-freedomengineer-re-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t200531617z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:05:30
last_update2016-10-28 20:05:30
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length116
author_reputation324,017,334,201,433
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,633
net_rshares0
@ats-david ·
It doesn't exactly tell us what's happening now, but this is from August 20th, by @dantheman -

https://steemit.com/steem/@dantheman/steem-dollar-stability-enhancements
properties (22)
authorats-david
permlinkre-freedomengineer-re-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t202028836z
categoryblockchain
json_metadata{"tags":["blockchain"],"users":["dantheman"],"links":["https://steemit.com/steem/@dantheman/steem-dollar-stability-enhancements"]}
created2016-10-28 20:20:27
last_update2016-10-28 20:20:27
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length168
author_reputation324,017,334,201,433
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,742
net_rshares0
@timcliff ·
Also, just to clarify in case there was confusion - payments have not 'stopped'; they are just being payed in STEEM instead of SBD.
👍  
properties (23)
authortimcliff
permlinkre-freedomengineer-re-ats-david-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t000340174z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-29 00:03:39
last_update2016-10-29 00:03:39
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length131
author_reputation272,954,445,077,789
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,642,957
net_rshares86,602,428,174
author_curate_reward""
vote details (1)
@chitty · (edited)
Good to hear from you again, I have linked this post on Ethereum's subreddit as I would like to have some feedback from their community on the matter.
properties (22)
authorchitty
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t193505578z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:35:06
last_update2016-10-28 19:36:18
depth1
children2
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length150
author_reputation86,901,300,608,582
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,476
net_rshares0
@dantheman ·
Post link here please.
👍  
properties (23)
authordantheman
permlinkre-chitty-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t194359520z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:44:00
last_update2016-10-28 19:44:00
depth2
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length22
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,517
net_rshares9,551,272,642
author_curate_reward""
vote details (1)
@chitty ·
sure: https://www.reddit.com/r/ethereum/comments/59wehy/steemit_founder_a_better_approach_to_turing/
properties (22)
authorchitty
permlinkre-dantheman-re-chitty-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t194542150z
categoryblockchain
json_metadata{"tags":["blockchain"],"links":["https://www.reddit.com/r/ethereum/comments/59wehy/steemit_founder_a_better_approach_to_turing/"]}
created2016-10-28 19:45:48
last_update2016-10-28 19:45:48
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length100
author_reputation86,901,300,608,582
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,525
net_rshares0
@clayop ·
$0.24
I have some questions.

1. If it uses Solidity instead of Wren, how much will be the difference in performances? Is it too low to run apps in Steem as well?
2. Can Solidity easily ported to Wren?

My point is with regards of marketing. If Steem can adopt Solidity with much faster and cheaper than Ethereum, we can absorb Ethereum's DApps and their developers very easily. "Same DApps on the faster and cheaper platform" will sound really attractive slogan for developers.
If Solidity vs. Wren is like Android vs iOS, my suggestion is like iPhone 4 (Ethereum) vs. iPhone 7 Plus.
👍  , ,
properties (23)
authorclayop
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t095800356z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-29 09:58:03
last_update2016-10-29 09:58:03
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.235 HBD
curator_payout_value0.006 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length578
author_reputation270,845,899,918,618
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,645,128
net_rshares3,223,869,700,678
author_curate_reward""
vote details (3)
@cluna12 ·
Great article, your participation is very valuable to be updated on the subject. Congratulations
properties (22)
authorcluna12
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20170807t203725957z
categoryblockchain
json_metadata{"tags":["blockchain"],"app":"steemit/0.1"}
created2017-08-07 20:38:57
last_update2017-08-07 20:38:57
depth1
children0
last_payout2017-08-14 20:38:57
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length96
author_reputation5,637,597,265
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id11,099,322
net_rshares0
@dragosroua ·
Is there a tentative roadmap for this approach? I have a use case involving something relatively similar to Steemit, but with slightly more flexibility (just blocks of text saved on the bockchain but with a few more modifiers, not simply upvoting / downvoting, something a bit more complex. Still user generated content, not just transactions. I wonder if in the scenario presented by you - a new breed of smart contracts - this would be feasible. Thank you for the update, really appreciate it.
properties (22)
authordragosroua
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t194654609z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:46:54
last_update2016-10-28 19:46:54
depth1
children2
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length495
author_reputation372,798,229,806,288
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,533
net_rshares0
@dantheman ·
Scripting will not be ready for months.  There is a very large amount of work required to test Scripting.  At least now we have a working proof of concept to start refining.
properties (22)
authordantheman
permlinkre-dragosroua-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t200644968z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:06:30
last_update2016-10-28 20:06:30
depth2
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length173
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,639
net_rshares0
@dragosroua ·
Thank you. If there's anything I can do to support when you start testing, I'd be happy to help.
properties (22)
authordragosroua
permlinkre-dantheman-re-dragosroua-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t200644968z-20161028t232237234z
categoryblockchain
json_metadata{"tags":"blockchain"}
created2016-10-28 20:22:39
last_update2016-10-28 20:22:39
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length96
author_reputation372,798,229,806,288
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,760
net_rshares0
@dwinblood · (edited)
Reading... great article.  Informative.   You need to post more often it is always interesting.

*4. Programer Intent should read 4. Programmer Intent.*   Also an instance in that section that also lacks an extra M.   Not being nit picky.  I know what your "Intent" was but you are one of the faces of Steemit/Steem, so trying to be helpful.
properties (22)
authordwinblood
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t194657316z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:46:54
last_update2016-10-28 19:48:42
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length341
author_reputation383,232,067,634,988
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,534
net_rshares0
@ervin-lemark · (edited)
$0.06
Great article and a food for some mind twisting since I don't understand (yet) all the principles behind the technology.

Great news also about the improvements to the UI. They will we warmly welcomed, I am certain.

A question - is is feasible to apply the sharding concept to the graphene based blockchain and avoid bottlenecks that you mention?  OK, you might answer that it isn't necessary nor possible but ... Just asking :)

TNX!
👍  , ,
properties (23)
authorervin-lemark
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t195503084z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:54:27
last_update2016-10-28 19:56:03
depth1
children2
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.049 HBD
curator_payout_value0.006 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length435
author_reputation470,735,453,557,792
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,568
net_rshares1,055,981,860,133
author_curate_reward""
vote details (3)
@dantheman ·
$0.14
Short answer is, yes we can apply sharding to Steem, BitShares, and any other blockchain.
👍  , , , ,
properties (23)
authordantheman
permlinkre-ervin-lemark-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t200148529z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:01:33
last_update2016-10-28 20:01:33
depth2
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.111 HBD
curator_payout_value0.029 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length89
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,605
net_rshares2,195,521,566,388
author_curate_reward""
vote details (5)
@ervin-lemark ·
TNX!
properties (22)
authorervin-lemark
permlinkre-dantheman-re-ervin-lemark-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t053218283z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-29 05:31:42
last_update2016-10-29 05:31:42
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length4
author_reputation470,735,453,557,792
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,644,150
net_rshares0
@good-karma ·
That's great to see some light on practical details of smart contract on Steem. Looking forward to get my hands on Chainbase upgrade and Wren scripting...
👍  
properties (23)
authorgood-karma
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t190436046z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:04:36
last_update2016-10-28 19:04:36
depth1
children3
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length154
author_reputation656,210,854,708,425
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,294
net_rshares9,749,421,710
author_curate_reward""
vote details (1)
@dantheman ·
Releasing a pre-release of steem using memory mapped files today.  Start up and shutdown times are now almost instant and with the rare exception of crashing in the middle of applying a block the chain database is almost never corrupted.
👍  
properties (23)
authordantheman
permlinkre-good-karma-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t200537068z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:05:21
last_update2016-10-28 20:05:21
depth2
children2
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length237
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,632
net_rshares108,492,564,462
author_curate_reward""
vote details (1)
@arhag ·
Is steemd able to identify that the database is corrupted on resume and do an automatic reindex, or do you just get undefined behavior? And same question but for the scenario of the computer suddenly shutting off in the middle of writing to the database?
👍  
properties (23)
authorarhag
permlinkre-dantheman-re-good-karma-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t205218866z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:52:18
last_update2016-10-28 20:52:18
depth3
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length254
author_reputation52,490,827,205,383
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,977
net_rshares108,492,564,462
author_curate_reward""
vote details (1)
@gregario ·
Thank you for this post. It´s too technical for me, but I keep reading and learning.

I am interested in the use of blockchain technology in science. I was astonished to see Turing machines mentioned here. I have been toying with the idea of using blockchain as a novel approach to the most essential subject of NP-complete problems.

There is a wonderful book written for laymen, most certainly you know about it already. It´s about the Traveling Salesman Problem (TSP), a very simple case of the problem that became sort of the flagship on the class of NP problems:

http://press.princeton.edu/titles/9531.html

Maybe you can recommend some reading regarding the potential use of blockchain in science, particularly in the area of NP- complete problems and it´s flagship instance, the TSP problem.

PS Besides beying an old age student of physics, I´m an accountant. I arrived to this post thanks to @belerophon and his gentle indication of readings regarding triple entry accounting.
properties (22)
authorgregario
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20170629t112027336z
categoryblockchain
json_metadata{"tags":["blockchain"],"users":["belerophon"],"links":["http://press.princeton.edu/titles/9531.html"],"app":"steemit/0.1"}
created2017-06-29 11:19:39
last_update2017-06-29 11:19:39
depth1
children0
last_payout2017-07-06 11:19:39
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length986
author_reputation2,753,780,591,955
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id6,609,220
net_rshares0
@hello.totoro ·
Hello, I'm new to Steemit. May I please use the image of the handshaking for a video presentation? Thank you.
properties (22)
authorhello.totoro
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20180611t213425779z
categoryblockchain
json_metadata{"tags":["blockchain"],"app":"steemit/0.1"}
created2018-06-11 21:34:24
last_update2018-06-11 21:34:24
depth1
children0
last_payout2018-06-18 21:34:24
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length109
author_reputation4,148,763,481,589
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id60,355,179
net_rshares0
@jamesc ·
Preventing Denial of Service
1. Local black list white list scripts

If POW does not work out so well, I like this one the best.  I think we could build a trusted relay connection table..  A relay is a full node that will run the contract and ensure it meets the threshold.  It will only relay the contract / transaction if it is good.  A recipient will trust that connection based on the accuracy of this calculation (it will of course do the work too).  Nodes should seek to get a healthy amount of trusted connections.  So a network that is attacked should naturally form a larger mesh of trusted connections and therefore make more hops the attacker must get through to get to the witnesses.

Proof of work is fundamentally wasteful.  There are a lot of old ASICS out there that can't be used as they are not profitable.  Those could be used to pass on a large cost to our network by solving POW.  I doubt this would be a sustained attack but if it were we might need to run contracts on ASICS to keep up and incur the hardware and electricity costs being used against us.  That would really suck for the life of the platform if that got into the blockchain.
properties (22)
authorjamesc
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161102t113624222z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-11-02 11:36:24
last_update2016-11-02 11:36:24
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,162
author_reputation11,900,157,451,513
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,671,841
net_rshares0
@juvyjabian ·
Could this mean a hard fork is required to implement the system to steem?
properties (22)
authorjuvyjabian
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t204818298z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:48:18
last_update2016-10-28 20:48:18
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length73
author_reputation185,700,092,637,158
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,951
net_rshares0
@leprechaun ·
@dantheman is busy enough but I want to get into the Larieum token early!

I wonder why would you not use c++ rather than an obscure language like Wern.
properties (22)
authorleprechaun
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t225732966z
categoryblockchain
json_metadata{"tags":["blockchain"],"users":["dantheman"]}
created2016-10-29 22:57:42
last_update2016-10-29 22:57:42
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length152
author_reputation43,003,961,497,973
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,649,109
net_rshares0
@linkback-bot-v0 ·
$0.46
This post has been linked to from another place on Steem.


  - [Advanced Steem Metrics Report for 28th October 2016](https://steemit.com/steemit/@ontofractal/advanced-steem-metrics-report-for-28th-october-2016) by @ontofractal

  - [good-karma witness update - 29th October, 2016](https://steemit.com/witness-category/@good-karma/good-karma-witness-update-29th-october-2016) by @good-karma

  - [@Dan is alive, long live the Dan!](https://steemit.com/steemit/@chitty/dan-is-alive-long-live-the-dan) by @chitty

  - [Steemit next generation editor that is fantastic! Image uploading and notifications are also almost done](https://steemit.com/steempower/@craig-grant/steemit-next-generation-editor-that-is-fantastic-image-uploading-and-notifications-are-also-almost-done) by @craig-grant




Learn more about and upvote to support [**linkback bot v0.5**](https://steemit.com/steemit/@ontofractal/steem-linkback-bot-v0-5-the-reddit-awareness-release). Flag this comment if you don't want the bot to continue posting linkbacks for your posts.

Built by @ontofractal
👍  
properties (23)
authorlinkback-bot-v0
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-linkbacks
categoryblockchain
json_metadata{}
created2016-10-29 15:37:45
last_update2016-10-29 15:37:45
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.460 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,064
author_reputation1,915,954,976,722
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,646,810
net_rshares6,918,310,431,925
author_curate_reward""
vote details (1)
@rebelnutrtion ·
Im excited to hear that Steem will be a leader in the Smart Contract field as it will be an important tool for commerce in the world of Steem.
properties (22)
authorrebelnutrtion
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20170531t194524734z
categoryblockchain
json_metadata{"tags":["blockchain"],"app":"steemit/0.1"}
created2017-05-31 19:45:27
last_update2017-05-31 19:45:27
depth1
children0
last_payout2017-06-07 19:45:27
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length142
author_reputation26,995,627,214
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id4,005,480
net_rshares0
@richman ·
The name of Vitalik distracted me from investing any money into Ethereum.
So, I'm sincerely wishing you that Steem would worth at least 100x ether worth :D
properties (22)
authorrichman
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t192808808z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:28:15
last_update2016-10-28 19:28:15
depth1
children5
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length155
author_reputation114,532,543,817,740
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,452
net_rshares0
@craig-grant ·
but Russians are so trustworthy, how can you say that :).... how about saying Vitalic is the attacker for all the attacks on etherum, and the DAO, that would make a great story someday
👍  ,
properties (23)
authorcraig-grant
permlinkre-richman-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t193358844z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:33:24
last_update2016-10-28 19:33:24
depth2
children4
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length184
author_reputation437,808,999,210,623
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,471
net_rshares54,271,533,379
author_curate_reward""
vote details (2)
@richman ·
Haha we both know that a great story can be made out of anything :D
Actually I hate the name Vitalik since my childhood... But, nevermind lol
properties (22)
authorrichman
permlinkre-craig-grant-re-richman-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t194423526z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:44:18
last_update2016-10-28 19:44:18
depth3
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length141
author_reputation114,532,543,817,740
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,519
net_rshares0
@richman ·
On a different note it's pretty much strange that this post earns more than the post about my hamster...
How come? What's wrong with the world today? Your thoughts?
properties (22)
authorrichman
permlinkre-craig-grant-re-richman-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t195659330z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 19:56:54
last_update2016-10-28 19:56:54
depth3
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length164
author_reputation114,532,543,817,740
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,578
net_rshares0
@stan ·
$1.07
Nice article.  Being a BitShares maximalist myself, I'm wondering what part of this article would have been different if you had substituted "the technology behind Steemit, BitShares, and other Graphene based blockchains."  Is there something about Steemit that makes it the only one you can mention in this post?
👍  , , , , , , , , , , , ,
properties (23)
authorstan
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t183851583z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 18:38:51
last_update2016-10-28 18:38:51
depth1
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.946 HBD
curator_payout_value0.120 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length313
author_reputation164,039,696,618,029
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,159
net_rshares12,813,012,468,258
author_curate_reward""
vote details (13)
@dantheman ·
$0.90
In theory any graphene-based chain could easily adapt the code.
👍  , , , , , , , , , , ,
properties (23)
authordantheman
permlinkre-stan-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t184105558z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 18:40:51
last_update2016-10-28 18:40:51
depth2
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.788 HBD
curator_payout_value0.108 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length63
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,170
net_rshares11,704,370,241,643
author_curate_reward""
vote details (12)
@stellabelle · (edited)
$0.17
Glad to see you posting an update. The coming changes are indeed good, however, they don't address the main reason users are fleeing: centralization of power and the feeling that their voices don't in fact matter. Is there any roadmap as far as fixing the problems with centralization of power?
Also, more updates, even in a smaller, "nuggetized" fashion would be highly recommended. Even if it was just to give users a generic update like "I'm swamped!" People go nuts when they don't hear from you, me included.
👍  , ,
properties (23)
authorstellabelle
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t203035656z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:30:36
last_update2016-10-28 20:32:30
depth1
children3
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.163 HBD
curator_payout_value0.003 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length513
author_reputation516,061,669,130,124
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,815
net_rshares2,474,423,225,245
author_curate_reward""
vote details (3)
@dantheman ·
I just posted an update via @steemitblog that addresses some of those issues.  I spend a lot of time thinking about robust long-term solutions to decentralize power while maintaining order.
👍  , , , ,
properties (23)
authordantheman
permlinkre-stellabelle-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t203732304z
categoryblockchain
json_metadata{"tags":["blockchain"],"users":["steemitblog"]}
created2016-10-28 20:37:18
last_update2016-10-28 20:37:18
depth2
children2
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length189
author_reputation240,292,002,602,347
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,871
net_rshares48,618,255,689
author_curate_reward""
vote details (5)
@knircky ·
I disagree with stellabelle and many others that whale power is a problem. It is also what makes steem work and work differently from kyher platforms. The dilution is a solution to this.
properties (22)
authorknircky
permlinkre-dantheman-re-stellabelle-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t080516476z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-29 08:05:18
last_update2016-10-29 08:05:18
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length186
author_reputation212,905,587,244,262
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,644,684
net_rshares0
@stellabelle ·
ok, thanks. I'll check that out now.
properties (22)
authorstellabelle
permlinkre-dantheman-re-stellabelle-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t204633876z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 20:46:33
last_update2016-10-28 20:46:33
depth3
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length36
author_reputation516,061,669,130,124
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,942
net_rshares0
@tarekadam ·
Thank you for this great and very comprehensive article! I am invested in Ether and still believe it will take off but I am more convinced that Steemit will be huge!  Reading your article that there are possibilities to have smart contracts running on Steem technology as well is a added bonus! I just powered up 40 ETH to steem power. Great work and please keep us updated on this project.
properties (22)
authortarekadam
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t164433466z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-29 16:44:33
last_update2016-10-29 16:44:33
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length390
author_reputation50,131,776,387,207
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,647,186
net_rshares0
@thecryptofiend · (edited)
$0.06
This would be awesome if it could be integrated with Steem.  I'm sure I"m not the only one who has lost faith in Ethereum and having used it a lot I find the blockchain to be incredibly slow compared to Steem.  I would just love it if we could beat the Ethereum guys to create a scalable smart contract solution.  It would be one more added use for the Steem blockchain.
👍  , , , , , ,
properties (23)
authorthecryptofiend
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t183429922z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 18:34:30
last_update2016-10-28 18:58:48
depth1
children1
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.059 HBD
curator_payout_value0.003 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length370
author_reputation323,603,913,866,384
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,134
net_rshares1,168,664,505,330
author_curate_reward""
vote details (7)
@funnyman ·
I would love to have that :)
👍  
properties (23)
authorfunnyman
permlinkre-thecryptofiend-re-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161028t185702098z
categoryblockchain
json_metadata{"tags":["blockchain"]}
created2016-10-28 18:57:03
last_update2016-10-28 18:57:03
depth2
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length28
author_reputation131,083,784,663,281
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,641,254
net_rshares34,898,536,027
author_curate_reward""
vote details (1)
@williambanks ·
I ask only one thing if you want my support for this.  Name the compiler stimpy.  Please!!!
https://s-media-cache-ak0.pinimg.com/originals/bc/7e/26/bc7e269beed947e91f0c4dc7265c74fa.jpg
properties (22)
authorwilliambanks
permlinkre-dantheman-a-better-approach-to-turing-complete-smart-contracts-20161029t003707094z
categoryblockchain
json_metadata{"tags":["blockchain"],"image":["https://s-media-cache-ak0.pinimg.com/originals/bc/7e/26/bc7e269beed947e91f0c4dc7265c74fa.jpg"]}
created2016-10-29 00:37:18
last_update2016-10-29 00:37:18
depth1
children0
last_payout2016-11-28 22:34:33
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length184
author_reputation90,708,691,850,244
root_title"A better approach to Turing Complete Smart Contracts"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id1,643,056
net_rshares0