https://remix.ethereum.org/ adresine gidiyoruz. default_workspace yazısının altında sol baştaki dosya ikonuna tıkmıyoruz ve dosyamıza isim veriyoruz sonu yani uzantısı “.sol” olmalı. Daha sonra dosyanın içerisine aşağıdaki kodu yapıştırıyoruz. Ardından sol panelde arama ikonunun altında bulunan geri dönüşüm ikonuna yani solidity “complier butonuna” basıyoruz.

Resimli rehber için buraya bakabilirsiniz; https://teletype.in/@anton_profit/scroll-deploy#SATh

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;
contract FunctionTypes{
    uint256 public number = 5;
    
    constructor() payable {}

    // function type
    // function (<parameter types>) {internal|external} [pure|view|payable] [returns (<return types>)]
    // defaultfunction
    function add() external{
        number = number + 1;
    }

    // pure: pure cow
    function addPure(uint256 _number) external pure returns(uint256 new_number){
        new_number = _number+1;
    }
    
    // view: spectators
    function addView() external view returns(uint256 new_number) {
        new_number = number + 1;
    }

    // internal: internal
    function minus() internal {
        number = number - 1;
    }

    // Functions within a contract can call internal functions
    function minusCall() external {
        minus();
    }

    // payable: Pass money, a function that can pay eth to the contract
    function minusPayable() external payable returns(uint256 balance) {
        minus();    
        balance = address(this).balance;
    }
}