<commit_before>﻿<?xml version="1.0" encoding="EUC-JP"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">

<head>
<meta charset="UTF-8">
<title>SoraMame Script</title>
	<script type="text/javascript" src="../../processing-1.4.1.js"></script>
	<script type="text/javascript" src="../../parse.js"></script>
	<script type="text/javascript" src="../../lib_command.js"></script>
	<script type="text/javascript" src="../../soramame.js"></script>
</head>


<body onLoad="soramame_init()">
<h1>SoraMame Script(そら豆スクリプト) - 日本語っぽいプログラミング言語</h1>
日本語っぽいコードを、プログラミング言語Processing.jsに変換して実行します(SoraMame.ps.js)。
<hr />

<table width="960px" heiht="320px" bgcolor="#eeeeee"><tbody><tr> 
  <td width="320px" height="320px" bgcolor="white"> 
		<canvas id="canvas0" width="320px" height="320px"></canvas> 
  </td>	
  <td>
  <form name="compiledtext" id="compiledtext" onsubmit="return main()">
	<textarea id="source" cols="80" rows="20">
//古典的なスペースワーププログラム
//Copyright 2012 <NAME>
//MIT License

@速度は実数型 = 0.01
@星1は星型

---初期設定する{
	{幅:300, 高さ:300}のサイズ
	{ミリ秒:20}のコマ数

	@星1 = 新しい星型
}

---くり返し描画する{
	{色:0}の背景色
	@xxは実数 = @星1の@x * @幅 / 2 + @幅 / 2
	@yyは実数 = @星1の@y * @高さ / 2 + @高さ / 2
	{x:@xx, y:@yy}に{幅:5, 高さ:5}のマル

	{文字:@星1の@角度}で{x:10, y:10}にもじ表示する
	{文字:@星1の@距離}で{x:50, y:10}にもじ表示する
	{文字:@星1の@x}で{x:10, y:20}にもじ表示する
	{文字:@星1の@y}で{x:50, y:20}にもじ表示する
	{文字:@星1の@経過時間}で{x:100, y:20}にもじ表示する

	@星1を移動する
}

===星型{

	@角度は実数型	//星の角度(極座標)
	@距離は実数型	//星の距離(極座標)

	@経過時間は整数型	//生成してからの時間
	@xは実数型	//星の現在位置x
	@yは実数型	//星の現在位置y

//コンストラクタ
+++星型{
	初期化する
    }

---移動する{
	@経過時間 += @速度
	@表示距離は実数 = @経過時間 / @距離

	@x = @表示距離 * {角度:@角度}でCos
	@y = @表示距離 * {角度:@角度}でSin

	もし{条件:@経過時間 > 1}ならば{
		初期化する
	}
    }

---初期化する{
	@角度 = {上限:@TWO_PI}の乱数
	@距離 = {上限:1}の乱数
	@経過時間 = 0
    }
}
	</textarea><br />
	<input type="button" value="わける" onclick="soramame_lex()" />
	<input type="button" value="へんかん" onclick="soramame_parse()" />
	<input type="button" value="うごかす" onclick="soramame_exec()" />
	<input type="button" value="とめる" onclick="soramame_stop()" />
	<br />
	<input type="file" id="myFile" onchange="file_open()" />
	[<a href="#" id="download-link" >ほぞん</a>]
	[<a href="http://www.catch.jp/wiki/?SoraMame.ps.js" target='_blannk'>ヘルプ?</a>]
  </form>
  </td>
  </tr></tbody></table>  
<hr>
<h2>変換結果</h2>
<pre id="screen"></pre>

<div id="result"></div> 
</body>
<commit_msg>複数の星が飛ぶようにした。<commit_after>﻿<?xml version="1.0" encoding="EUC-JP"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">

<head>
<meta charset="UTF-8">
<title>SoraMame Script</title>
	<script type="text/javascript" src="../../processing-1.4.1.js"></script>
	<script type="text/javascript" src="../../parse.js"></script>
	<script type="text/javascript" src="../../lib_command.js"></script>
	<script type="text/javascript" src="../../soramame.js"></script>
</head>


<body onLoad="soramame_init()">
<h1>SoraMame Script(そら豆スクリプト) - 日本語っぽいプログラミング言語</h1>
日本語っぽいコードを、プログラミング言語Processing.jsに変換して実行します(SoraMame.ps.js)。
<hr />

<table width="960px" heiht="320px" bgcolor="#eeeeee"><tbody><tr> 
  <td width="320px" height="320px" bgcolor="white"> 
		<canvas id="canvas0" width="320px" height="320px"></canvas> 
  </td>	
  <td>
  <form name="compiledtext" id="compiledtext" onsubmit="return main()">
	<textarea id="source" cols="80" rows="20">
//古典的なスペースワーププログラム
//Copyright 2012 <NAME>
//MIT License

@速度は実数型 = 0.02
@星数は整数型 = 100

@星0は星型[] = 新しい星型[@星数]

---初期設定する{
	{幅:300, 高さ:300}のサイズ
	{ミリ秒:20}のコマ数

	{開始:@iは整数型 = 0, 条件:@i < @星数, 変化:@i+=1}のくりかえし{
		@星0[@i] = 新しい星型
	}
}

---くり返し描画する{
	{色:0}の背景色

	{開始:@iは整数型 = 0, 条件:@i < @星数, 変化:@i+=1}のくりかえし{
		@xxは実数 = @星0[@i]の@x * @幅 / 2 + @幅 / 2
		@yyは実数 = @星0[@i]の@y * @高さ / 2 + @高さ / 2
		{x:@xx, y:@yy}に{幅:5, 高さ:5}のマル

		@星0[@i]を移動する
	}
}

===星型{

	@角度は実数型	//星の角度(極座標)
	@距離は実数型	//星の距離(極座標)

	@経過時間は整数型	//生成してからの時間
	@xは実数型	//星の現在位置x
	@yは実数型	//星の現在位置y

//コンストラクタ
+++星型{
	初期化する
    }

---移動する{
	@経過時間 += @速度
	@表示距離は実数 = @経過時間 / @距離

	@x = @表示距離 * {角度:@角度}でCos
	@y = @表示距離 * {角度:@角度}でSin

	もし{条件:@経過時間 > 1}ならば{
		初期化する
	}
    }

---初期化する{
	@角度 = {上限:@TWO_PI}の乱数
	@距離 = {上限:1}の乱数
	@経過時間 = {上限:0.8}の乱数
    }
}
	</textarea><br />
	<input type="button" value="わける" onclick="soramame_lex()" />
	<input type="button" value="へんかん" onclick="soramame_parse()" />
	<input type="button" value="うごかす" onclick="soramame_exec()" />
	<input type="button" value="とめる" onclick="soramame_stop()" />
	<br />
	<input type="file" id="myFile" onchange="file_open()" />
	[<a href="#" id="download-link" >ほぞん</a>]
	[<a href="http://www.catch.jp/wiki/?SoraMame.ps.js" target='_blannk'>ヘルプ?</a>]
  </form>
  </td>
  </tr></tbody></table>  
<hr>
<h2>変換結果</h2>
<pre id="screen"></pre>

<div id="result"></div> 
</body>

{'fraction_non_alphanumeric': 0.2534020618556701, 'fraction_numerical': 0.038350515463917524, 'mean_word_length': 4.227370689655173, 'pattern_counts': {'":': 0, '<': 117, '<?xml version=': 2, '>': 117, 'https://': 0, 'lorem ipsum': 0, 'www.': 6, 'xml': 6}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5280079', 'n_tokens_mistral': 2897, 'n_tokens_neox': 2814, 'n_words': 361}