<commit_before>\documentclass[%
 aip,
 jmp,%
 amsmath,amssymb,
%preprint,%
 reprint,%
%author-year,%
%author-numerical,%
]{revtex4-1}

\usepackage{graphicx}% Include figure files
\usepackage{dcolumn}% Align table columns on decimal point
\usepackage{bm}% bold math
\usepackage{listings}
\usepackage{color}
%\usepackage[mathlines]{lineno}% Enable numbering of text and display math
%\linenumbers\relax % Commence numbering lines

\lstset{
  frame=tb,
  language=HyperTalk,
  aboveskip=3mm,
  belowskip=3mm,
  showstringspaces=false,
  columns=flexible,
  basicstyle={\small\ttfamily},
  numbers=none,
  breaklines=true,
  breakatwhitespace=true,
  tabsize=3
}

\begin{document}

%\preprint{AIP/123-QED}

\title[Ethereum Classic Marketplace ICO]{Ethereum Classic Marketplace ICO}% Force line breaks with \\


\author{<NAME>}%
 \email{<EMAIL>.}

\date{\today}% It is always \today, today,
             %  but any date may be explicitly specified

\begin{abstract}

Currently it is unintuitive for non-technical end users to interact with published cryptocontracts. For this reason cryptocontracts will not easily reach mainstream. End users expect a convenient one-click platform that delivers user friendly yet secure third party applications which are designed to use cryptocontracts.
\end{abstract}

\keywords{Ethereum Classic, flow-based programming, dataflow, fractalide, HyperCard}%Use showkeys class option if keyword
                              %display desired
\maketitle

\begin{quotation}
The \textit{Ethereum Classic Marketplace ICO} aims to provide a rich set of development and runtime tools (Hyperflow), a marketplace for third party vendors to sell applications to end users (Fractalmarket) and a set of components which grant applications seamless integration with the Ethereum Classic blockchain (Etherflow).

\end{quotation}

\section{\label{sec:level1}Fractalide}
Fractalide is a programming language which implements a flow-based programming language whereby every component is deterministically reproducible and entirely reusable. Although the ICO is meant to focus on the higher level items such as Hyperflow, Etherflow and Fractalmarket there is some important infrastructure level work that needs to go into Fractalide to enable smooth front end visuals. This allows for the clean implementation of the Card Paradigm as elaborated on in the Master Thesis.

The major concepts introduced by Fractalide are Reusable and Reproducible components. The entire platform hinges on these first principle concepts.

\subsection{\label{sec:level2}Reusability}

Each Fractalide component is reusable because it has one unifying composable interface. The data that transmits into the component is the invariant of the system.

\subsection{\label{sec:level2}Reproducibility}

Each Fractalide component and all their dependencies are capable of being reproduced. Indeed an entire hierarchy of components can be reproduced on another machine. Each component has a universally unique name yet when presented to the programmer the component's name is human readable. Components with the same name but different versions can exist on the same file system side-by-side without conflicting with each other.

\section{\label{sec:level1}Hyperflow}

Hyperflow is a Fractalide module or library that implements a variant of HyperCard. HyperCard was the inspiration for the Delphi and Microsoft Visual Basic Rapid Application Development platforms which allowed non-technical users to quickly put together programs to solve their problems. It significantly lowered the bar allowing people with little to no programming experience to get up and running quickly.

HyperCard allowed one to drag-and-drop Graphical User Interface components onto a canvas called a Card. Each ``screen'' or canvas was a Card and a number of Cards formed a Stack. A good analogy would be; a Card is a webpage and a Stack is a website. A built-in programming language called HyperTalk allowed one to write logic to move from Card to Card.

Though a few concepts need retaining, removing and replacing to upgrade HyperCard to a modern day HyperCard suitable for interacting with the blockchain and implementing advanced applications.

\subsection{\label{sec:level2}Concepts to remove from HyperCard}
\subsubsection{\label{sec:level3}HyperTalk}
HyperTalk was HyperCard's programming language. It was an English like programming language, with the below snippet being an example.
\begin{lstlisting}
  on mouseUp
    put "100,100" into pos
    repeat with x = 1 to the number of card buttons
      set the location of card button x to pos
      add 15 to item 1 of pos
    end repeat
  end mouseUp
\end{lstlisting}

HyperTalk was not a particularly powerful language, although it did have an avid following, it is not sufficiently expressive to write high end applications suitable for solving problems of today.



Most importantly HyperTalk isn't modularized and cannot easily compose together. As we have a hard requirement of using reusable and reproducible infrastructure in the small and in the large. We'll be replacing HyperTalk with the previously mentioned component oriented programming language called Fractalide.

\subsubsection{\label{sec:level3}HyperCard lacked network access}

This was the last nail in HyperCard's coffin, it's the fundamental reason why HyperCard died. Attempts to rescue HyperCard were underway at the time by adding networking capabilities, but the task proved too difficult and <NAME> eventually called the executioner's axe to HyperCard's head. Had the system been designed from the ground up with full network support, HyperCard would have expanded beyond the boundaries of Apple, just as the HTTP browser became prevalent. Indeed it could well have been the browser we use today.

As every component in Hyperflow is built from first principles of reproducibility and reusability it becomes trivially easy for a programmer to type the name of a component and the package manager and build system will immediately make that component available for use on their system. Packaging their component (or component hierarchy) and distributing it is equally easy.

\subsection{\label{sec:level2}Concepts from HyperCard to keep}
\subsubsection{\label{sec:level3}Fast switching between run mode and develop mode}

HyperCard had a zero compilation step between run mode and develop mode. So when in develop mode the experimental code could be triggered to run immediately by clicking the run mode button. When in run mode GUI widgets could be manipulated and moved about again by clicking on the develop mode button.

This was probably one of the most important features which is quite hard for Hyperflow to replicate for a number of reasons. For third party component hierarchies already available on the file system, we'll be able to achieve this ``zero compilation'' switch, but in the case the programmer calls in a component or entire hierarchy of components not presently available on the file system the transition will not be smooth. The package manager must download either the source code of all those components and build them or download the pre-compiled binaries and wire them into Hyperflow during the switch between run mode and develop mode. Given we hope the Fractalmarket will host many component hierarchies we must accept these limits.



\section{\label{sec:level1}Fractalmarket}

Fractalmarket intends to provide fair compensation for contribution. Meaning that if you develop and maintain a particular set of components you may optionally charge a fee for those components and wherever they are used, be it in other applications, you, the developer will be paid for your work once an end user purchases that component.

Hence if the hierarchy/application developer reuses as many components as possible, the probability of the end user already having purchased many of those components is higher and thus the total price tag of your particular hierarchy will be reduced. This way you'll be able to reduce the footprint of what's needed to be downloaded, compiled, installed and paid for, making you more competitive than a programmer that copies code and republishes.

We aim to have nice metrics which demonstrate the reusability factor of each application hierarchy.

The Fractalmarket supports a currency called FRACTAL which enables trade between component buyers and sellers. FRACTAL will be the only accepted currency on the Fractalmarket for the foreseeable future.

\section{\label{sec:level1}Etherflow}

Etherflow is a set of reusable and reproducible components that allow for seamless interactions between Hyperflow applications and the blockchain. The code will heavily leverage ETCDEV team's work.

These components will allow users who wish to create domain specific applications such as a blockchain insurance application to present a nice user facing application with all the GUI components that can easily interact with the blockchain via reusable blockchain components.

As users will be downloading and paying for components created by ETCDEV, helping ETCDEV become more sustainable and assisting them to continue contributing to the Ethereum Classic community.


\section{\label{sec:level1}Conclusion}

We hope the contributions ``Ethereum Classic Marketplace ICO'' offers the Ethereum Classic community are seen as valuable and worthwhile contributing towards.
Creating a platform that enables a whole new layer of blockchain enterprises and services that cut out the middle man along with the high degree of component reusability hopes to reduce costs greatly.





\end{document}<commit_msg>Problem: warnings prevented a pdf compilation<commit_after>\documentclass[%
 aip,
 jmp,%
 amsmath,amssymb,
 preprint,
 reprint,
 author-year,
 author-numerical,
]{revtex4-1}

\usepackage{graphicx}% Include figure files
\usepackage{dcolumn}% Align table columns on decimal point
\usepackage{bm}% bold math
\usepackage{listings}
\usepackage{color}
%\usepackage[mathlines]{lineno}% Enable numbering of text and display math
%\linenumbers\relax % Commence numbering lines

\lstset{
  frame=tb,
  aboveskip=3mm,
  belowskip=3mm,
  showstringspaces=false,
  columns=flexible,
  basicstyle={\small\ttfamily},
  numbers=none,
  breaklines=true,
  breakatwhitespace=true,
  tabsize=3
}

\begin{document}

%\preprint{AIP/123-QED}

\title[Ethereum Classic Marketplace ICO]{Ethereum Classic Marketplace ICO}% Force line breaks with \\


\author{<NAME>}%
 \email{<EMAIL>.}

\date{\today}% It is always \today, today,
             %  but any date may be explicitly specified

\begin{abstract}

Currently it is unintuitive for non-technical end users to interact with published cryptocontracts. For this reason cryptocontracts will not easily reach mainstream. End users expect a convenient one-click platform that delivers user friendly yet secure third party applications which are designed to use cryptocontracts.
\end{abstract}

\keywords{Ethereum Classic, flow-based programming, dataflow, fractalide, HyperCard}%Use showkeys class option if keyword
                              %display desired
\maketitle

\begin{quotation}
The \textit{Ethereum Classic Marketplace ICO} aims to provide a rich set of development and runtime tools (Hyperflow), a marketplace for third party vendors to sell applications to end users (Fractalmarket) and a set of components which grant applications seamless integration with the Ethereum Classic blockchain (Etherflow).

\end{quotation}

\section{\label{sec:fractalide}Fractalide}
Fractalide is a programming language which implements a flow-based programming language whereby every component is deterministically reproducible and entirely reusable. Although the ICO is meant to focus on the higher level items such as Hyperflow, Etherflow and Fractalmarket there is some important infrastructure level work that needs to go into Fractalide to enable smooth front end visuals. This allows for the clean implementation of the Card Paradigm as elaborated on in the Master Thesis.

The major concepts introduced by Fractalide are Reusable and Reproducible components. The entire platform hinges on these first principle concepts.

\subsection{\label{sec:reusability}Reusability}

Each Fractalide component is reusable because it has one unifying composable interface. The data that transmits into the component is the invariant of the system.

\subsection{\label{sec:reproducibility}Reproducibility}

Each Fractalide component and all their dependencies are capable of being reproduced. Indeed an entire hierarchy of components can be reproduced on another machine. Each component has a universally unique name yet when presented to the programmer the component's name is human readable. Components with the same name but different versions can exist on the same file system side-by-side without conflicting with each other.

\section{\label{sec:hyperflow}Hyperflow}

Hyperflow is a Fractalide module or library that implements a variant of HyperCard. HyperCard was the inspiration for the Delphi and Microsoft Visual Basic Rapid Application Development platforms which allowed non-technical users to quickly put together programs to solve their problems. It significantly lowered the bar allowing people with little to no programming experience to get up and running quickly.

HyperCard allowed one to drag-and-drop Graphical User Interface components onto a canvas called a Card. Each ``screen'' or canvas was a Card and a number of Cards formed a Stack. A good analogy would be; a Card is a webpage and a Stack is a website. A built-in programming language called HyperTalk allowed one to write logic to move from Card to Card.

Though a few concepts need retaining, removing and replacing to upgrade HyperCard to a modern day HyperCard suitable for interacting with the blockchain and implementing advanced applications.

\subsection{\label{sec:concepts to remove from HyperCard}Concepts to remove from HyperCard}
\subsubsection{\label{sec:HyperTalk}HyperTalk}
HyperTalk was HyperCard's programming language. It was an English like programming language, with the below snippet being an example.
\begin{lstlisting}
  on mouseUp
    put "100,100" into pos
    repeat with x = 1 to the number of card buttons
      set the location of card button x to pos
      add 15 to item 1 of pos
    end repeat
  end mouseUp
\end{lstlisting}

HyperTalk was not a particularly powerful language, although it did have an avid following, it is not sufficiently expressive to write high end applications suitable for solving problems of today.



Most importantly HyperTalk isn't modularized and cannot easily compose together. As we have a hard requirement of using reusable and reproducible infrastructure in the small and in the large. We'll be replacing HyperTalk with the previously mentioned component oriented programming language called Fractalide.

\subsubsection{\label{sec:HyperCard lacked network access}HyperCard lacked network access}

This was the last nail in HyperCard's coffin, it's the fundamental reason why HyperCard died. Attempts to rescue HyperCard were underway at the time by adding networking capabilities, but the task proved too difficult and <NAME> eventually called the executioner's axe to HyperCard's head. Had the system been designed from the ground up with full network support, HyperCard would have expanded beyond the boundaries of Apple, just as the HTTP browser became prevalent. Indeed it could well have been the browser we use today.

As every component in Hyperflow is built from first principles of reproducibility and reusability it becomes trivially easy for a programmer to type the name of a component and the package manager and build system will immediately make that component available for use on their system. Packaging their component (or component hierarchy) and distributing it is equally easy.

\subsection{\label{sec:Concepts from HyperCard to keep}Concepts from HyperCard to keep}
\subsubsection{\label{sec:Fast switching between run mode and design mode}Fast switching between run mode and design mode}

HyperCard had a zero compilation step between run mode and design mode. So when in design mode the experimental code could be triggered to run immediately by clicking the run mode button. When in run mode GUI widgets could be manipulated and moved about again by clicking on the design mode button.

This was probably one of the most important features which is quite hard for Hyperflow to replicate for a number of reasons. For third party component hierarchies already available on the file system, we'll be able to achieve this ``zero compilation'' switch, but in the case the programmer calls in a component or entire hierarchy of components not presently available on the file system the transition will not be smooth. The package manager must download either the source code of all those components and build them or download the pre-compiled binaries and wire them into Hyperflow during the switch between run mode and design mode. Given we hope the Fractalmarket will host many component hierarchies we must accept these limits.



\section{\label{sec:Fractalmarket}Fractalmarket}

Fractalmarket intends to provide fair compensation for contribution. Meaning that if you develop and maintain a particular set of components you may optionally charge a fee for those components and wherever they are used, be it in other applications, you, the developer will be paid for your work once an end user purchases that component.

Hence if the hierarchy/application developer reuses as many components as possible, the probability of the end user already having purchased many of those components is higher and thus the total price tag of your particular hierarchy will be reduced. This way you'll be able to reduce the footprint of what's needed to be downloaded, compiled, installed and paid for, making you more competitive than a programmer that copies code and republishes.

We aim to have nice metrics which demonstrate the reusability factor of each application hierarchy.

The Fractalmarket supports a currency called FRACTAL which enables trade between component buyers and sellers. FRACTAL will be the only accepted currency on the Fractalmarket for the foreseeable future.

\section{\label{sec:Etherflow}Etherflow}

Etherflow is a set of reusable and reproducible components that allow for seamless interactions between Hyperflow applications and the blockchain. The code will heavily leverage ETCDEV team's work.

These components will allow users who wish to create domain specific applications such as a blockchain insurance application to present a nice user facing application with all the GUI components that can easily interact with the blockchain via reusable blockchain components.

As users will be downloading and paying for components created by ETCDEV, helping ETCDEV become more sustainable and assisting them to continue contributing to the Ethereum Classic community.


\section{\label{sec:Conclusion}Conclusion}

We hope the contributions ``Ethereum Classic Marketplace ICO'' offers the Ethereum Classic community are seen as valuable and worthwhile contributing towards.
Creating a platform that enables a whole new layer of blockchain enterprises and services that cut out the middle man along with the high degree of component reusability hopes to reduce costs greatly.





\end{document}
{'fraction_non_alphanumeric': 0.037366822790673736, 'fraction_numerical': 0.002470533738226363, 'mean_word_length': 5.026674937965261, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 10, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2359490', 'n_tokens_mistral': 4711, 'n_tokens_neox': 4291, 'n_words': 2653}