<commit_before>Done	| Old Syntax														| New Syntax
====================================================================================================================================
==== The console API right now is pretty much identical to the standed so it will stay that way into the future					====
	X	| console._log(level, obj)											| -
	X	| console.clear()													| -
	X	| console.toggle()													| -
	X	| console.log(obj)													| -
	X	| console.warn(obj)													| -
	X	| console.error(obj)												| -
	X	| console.verbose(obj)												| -
	X	| console.writeRaw(obj)												| -
====================================================================================================================================
==== The sys API is a hodgepoge right now and will move to a varity of different APIs including process, global and window ???	====
		| sys.argv()														| process.argv (inline with nodejs)
		| sys.runFile(filename, persists)									| REMOVED
		| sys.drawFunc(func)												| REMOVED
		| sys.keyboardFunc(func)											| REMOVED
		| sys.on(event, id, filter, func)									| REMOVED
		| sys.emit(event, args)												| REMOVED
		| sys.clearEvent(id)												| process.clearEvent(id)
		| sys.microtime()													| process.uptime (it's more useful as a double)
		| sys.heapStats()													| process.memoryUsage (inline with nodejs)
		| sys.memoryStats()													| process.memory (inline with nodejs)
		| sys.trace()														| process.trace()
		| sys.exit()														| process.exit([code]) (inline with nodejs)
		| sys.getGLVersion()												| process.graphicsVersion
		| sys.hasExtention(extention)										| REMOVED Not really something scripters need
		| sys.getExtentions()												| REMOVED -
		| sys.getMaxTextureSize()											| Texture.getMaxSize()
		| sys.saveScreenshot(path)											| process.saveScreenshot(filename)
		| sys.resizeWindow(width, height)									| process.window.size = newSize
		| sys.toggleFullscreen()											| REMOVED - Duplicates config options
	X	| sys.restartRenderer()												| REMOVED
		| sys.getProfilerTime(zone)											| debug.profiler[zone]
		| sys.getProfilerZones()											| for (var i in debug.profiler)
		| sys.perf()														| debug.profile(name, func) returns the function wrapped
		| sys.time(name, func)												| REMOVED - Duplicates debug.profile
		| sys.config(key, value)											| process.runtimeConfig
		| sys.gc()															| process.gc()
		| sys.profile(frames, filename)										| debug.saveProfile()
		| sys.profileSet(profileZone, maxTime)								| debug.profiler[zone].setMaxTime
		| sys.reloadRootScript()											| REMOVED duplicates functionailty with forceReload
		| sys.forceReload(script)											| require.reloadScript(script)
		| sys.version()														| process.versions (inline with nodejs)
		| sys.msgBox(title, msg, modal)										| process.messageBox(title, msg, modal)
		| sys.shell(filename)												| process.shellExecute(filename, opts)
		| sys.platform														| process.platform (inline with nodejs)
		| sys.devMode														| process.developerMode (inline with nodejs)
		| sys.preload														| REMOVED Internal API
		| sys.numProcessers													| process.cpuCount
		| sys.username														| process.username
		| sys.screenWidth													| process.window.size a Vector2
		| sys.screenHeight													| -
		| sys.deltaTime														| $dt
====================================================================================================================================
==== Until it needs to be changed the FS API will stay the same																	====
	X	| fs.readFile(filename, raw)										| -
	X	| fs.writeFile(filename, content)									| -
	X	| fs.fileExists(filename)											| -
	X	| fs.fileSize(filename)												| -
	X	| fs.mountFile(archivePath, mountPath)								| -
	X	| fs.configDir(appName)												| -
	X	| fs.mkdir(path)													| -
====================================================================================================================================
==== The Draw API will change quite a bit but for now will stay in the draw object												====
	X	| draw.rect(x, y, w, h)												| -
	X	| draw.grid(x, y, w, h)												| -
	X	| draw.grad(x, y, w, h, col1, col2, orientation)					| -
	X	| draw.circle(x, y, ..)												| -
	X	| draw.line(x0, y0, x1, y1)											| -
	X	| draw.curve(x0, y0, x1, y1, x2, y2, x3, y3)						| -
		| draw.colorPalette(name, color)									| draw.colors {}
	X	| draw.setColorF(r, g, b)											| draw.color = new Color(r, g, b)
	X	| draw.setColor(color)												| draw.color = {} (obj) or new Color() for the others
	X	| draw.setColorI(r, g, b)											| draw.color = Color.fromInt(r, g, b)
		| draw.clearColor(color)											| draw.clearColor (inline with HTML5 canvas)
	X	| draw.getRGBFromHSV(h, s, v)										| Color.fromHSV(h, s, v)
	X	| draw.print(x, y, str)												| -
	X	| draw.getStringWidth(str)											| -
		| draw.draw(texId, x, y, w, h)										| Rather then texID it will use texture objects
		| draw.drawSub(texId, x, y, w, h, xSub, ySub, wSub, hSub)			| Same as Above
		| draw.drawSprite(spriteSheet, sprite, x, y, w, h)					| Rather then spriteSheet it will use objects
		| draw.openImage(filename)											| resource.openImage(filename)
		| draw.openSpriteSheet(filename)									| resource.openSpriteSheet(filename)
		| draw.getImageArray(filename)										| Texture.prototype.getPixels([x, y, w, h]);
		| draw.createImageArray(w, h)										| REMOVED infavor of Typed Arrays
		| draw.createImage(arr, w, h)										| new Texture(arr, w, h);
		| draw.saveImage(texId, filename)									| Texture.prototype.save(filename)
		| draw.freeImage(texId)												| REMOVED infavor of automatic texture caching
		| draw.isTexture(texId)												| Texture.prototype.isValid()
		| draw.isSpiteSheet(spriteSheet)									| SpriteSheet.prototype.isValid();
		| draw.cameraReset()												| draw.resetTransform() (inline with HTML5 cavas)
		| draw.cameraPan(x, y)												| draw.translate(x, y) - 
		| draw.cameraZoom(f)												| draw.scale(x, y) -
		| draw.cameraRotate(r)												| draw.rotate(r)
		| draw.setFont(prettyName, size)									| draw.font = fontObj; draw.fontSize = size
		| draw.loadFont(prettyName, filename)								| fontObj = resource.loadFont(filename);
		| draw.isFontLoaded(prettyName)										| Font.prototype.isValid();
		| draw.getVerts()													| draw.currentVerts
		| draw.setDrawOffscreen(draw)										| REMOVED, never used it
		| draw.setCenter(x, y)												| REMOVED - Not really needed with mature camera controls
====================================================================================================================================
==== Very Important but I'm not sure how it fits in 																			====
		| input.keyDown(key)												| input.keyState[key]
		| input.mouseX														| input.mousePos a vec2
		| input.mouseY														| -
		| input.leftMouseButton												| input.mouseState[input.LEFT_MOUSE_BUTTON]
		| input.middleMouseButton											| input.mouseState[input.MIDDLE_MOUSE_BUTTON]
		| input.rightMouseButton											| input.mouseState[input.RIGHT_MOUSE_BUTTON]
====================================================================================================================================
==== The whole API is of limited usefulness and very unsafe, might get removed completly										====
		| mod.open(filename)												| REMOVED
		| mod.call(id, method)												| REMOVED
====================================================================================================================================
==== Really awesome API and will be extended with some ORM stuff																====
		| db.open(filename)													| new Database(filename)
		| db.exec(statement)												| Database.prototype.exec(statement)
		| db.execPrepare(statement)											| Database.prototype.exec(statement)
====================================================================================================================================
==== Really awesome API but it will stay devmode only																			====
		| unsafe.getNumberAddress(number)									| The long type is a real pain and should be fixed
		| unsafe.getNative(address, length)									| Same but returns a typed array
		| unsafe.call(address)												| unsafe.call(address, callingConvention, argTypes, args)
		| unsafe.malloc(length)												| unsafe.setArrayPersistent(array, true)
		| unsafe.free(array)												| Same as above
	X	| unsafe.addressOf(array)											| -
		| unsafe.mprotect(address, length, enable)							| Needs quite a bit more safety, it's a complex method
		| unsafe.getPageSize()												| unsafe.pageSize (Implamented with a Getter)
= NEW STUFF  =======================================================================================================================
		|																	| process.supports
		| 																	| new Matrix([]);
		| 																	| Math.degToRad(a)
		| 																	| Math.radToDeg(a)
	X	| 																	| Math.PI_2
	X	| 																	| Math.PI_4
		|																	| new Vector2(x, y)
		| 																	| new Vector3(x, y, z)
		|																	| new Vector4(x, y, z, w)
		| 																	| Math.distince(v1, v2)
		| 																	| new Rectangle(x, y, w, h)
		| 																	| Rectangle.intersects(r1, r2)
		| 																	| Math.perlin
	X	| 																	| setTimeout(cb, delay)
	X	| 																	| setInterval(cb, delay)
	X	|																	| clearTimeout(id)
	X	|																	| clearInterval(id)
		| 																	| alert(msg)
	X	| 																	| debug.assert(value, msg)
		| 																	| unsafe.bindCall(address, callingConvention, argTypes)
		| 																	| new SpriteSheet(texture)
		| 																	| SpriteSheet.prototype.bindSprite(name, x, y, w, h)<commit_msg>Updated doc/javascriptAPI.txt<commit_after>Done	| Old Syntax														| New Syntax
====================================================================================================================================
==== The console API right now is pretty much identical to the standed so it will stay that way into the future					====
	X	| console._log(level, obj)											| -
	X	| console.clear()													| -
	X	| console.toggle()													| -
	X	| console.log(obj)													| -
	X	| console.warn(obj)													| -
	X	| console.error(obj)												| -
	X	| console.verbose(obj)												| -
	X	| console.writeRaw(obj)												| -
====================================================================================================================================
==== The sys API is a hodgepoge right now and will move to a varity of different APIs including process, global and window ???	====
		| sys.argv()														| process.argv (inline with nodejs)
		| sys.runFile(filename, persists)									| REMOVED
		| sys.drawFunc(func)												| REMOVED
		| sys.keyboardFunc(func)											| REMOVED
		| sys.on(event, id, filter, func)									| REMOVED
		| sys.emit(event, args)												| REMOVED
		| sys.clearEvent(id)												| process.clearEvent(id)
		| sys.microtime()													| process.uptime (it's more useful as a double)
		| sys.heapStats()													| process.memoryUsage (inline with nodejs)
		| sys.memoryStats()													| process.memory (inline with nodejs)
		| sys.trace()														| process.trace()
		| sys.exit()														| process.exit([code]) (inline with nodejs)
		| sys.getGLVersion()												| process.graphicsVersion
		| sys.hasExtention(extention)										| REMOVED Not really something scripters need
		| sys.getExtentions()												| REMOVED -
		| sys.getMaxTextureSize()											| Texture.getMaxSize()
		| sys.saveScreenshot(path)											| process.saveScreenshot(filename)
		| sys.resizeWindow(width, height)									| process.window.size = newSize
		| sys.toggleFullscreen()											| REMOVED - Duplicates config options
	X	| sys.restartRenderer()												| REMOVED
		| sys.getProfilerTime(zone)											| debug.profiler[zone]
		| sys.getProfilerZones()											| for (var i in debug.profiler)
		| sys.perf()														| debug.profile(name, func) returns the function wrapped
		| sys.time(name, func)												| REMOVED - Duplicates debug.profile
		| sys.config(key, value)											| process.runtimeConfig
		| sys.gc()															| process.gc()
		| sys.profile(frames, filename)										| debug.saveProfile()
		| sys.profileSet(profileZone, maxTime)								| debug.profiler[zone].setMaxTime
		| sys.reloadRootScript()											| REMOVED duplicates functionailty with forceReload
		| sys.forceReload(script)											| require.reloadScript(script)
		| sys.version()														| process.versions (inline with nodejs)
		| sys.msgBox(title, msg, modal)										| process.messageBox(title, msg, modal)
		| sys.shell(filename)												| process.shellExecute(filename, opts)
		| sys.platform														| process.platform (inline with nodejs)
		| sys.devMode														| process.developerMode (inline with nodejs)
		| sys.preload														| REMOVED Internal API
		| sys.numProcessers													| process.cpuCount
		| sys.username														| process.username
		| sys.screenWidth													| process.window.size a Vector2
		| sys.screenHeight													| -
		| sys.deltaTime														| $dt
====================================================================================================================================
==== Until it needs to be changed the FS API will stay the same																	====
	X	| fs.readFile(filename, raw)										| -
	X	| fs.writeFile(filename, content)									| -
	X	| fs.fileExists(filename)											| -
	X	| fs.fileSize(filename)												| -
	X	| fs.mountFile(archivePath, mountPath)								| -
	X	| fs.configDir(appName)												| -
	X	| fs.mkdir(path)													| -
====================================================================================================================================
==== The Draw API will change quite a bit but for now will stay in the draw object												====
	X	| draw.rect(x, y, w, h)												| -
	X	| draw.grid(x, y, w, h)												| -
	X	| draw.grad(x, y, w, h, col1, col2, orientation)					| -
	X	| draw.circle(x, y, ..)												| -
	X	| draw.line(x0, y0, x1, y1)											| -
	X	| draw.curve(x0, y0, x1, y1, x2, y2, x3, y3)						| -
		| draw.colorPalette(name, color)									| draw.colors {}
	X	| draw.setColorF(r, g, b)											| draw.color = new Color(r, g, b)
	X	| draw.setColor(color)												| draw.color = {} (obj) or new Color() for the others
	X	| draw.setColorI(r, g, b)											| draw.color = Color.fromInt(r, g, b)
		| draw.clearColor(color)											| draw.clearColor (inline with HTML5 canvas)
	X	| draw.getRGBFromHSV(h, s, v)										| Color.fromHSV(h, s, v)
	X	| draw.print(x, y, str)												| -
	X	| draw.getStringWidth(str)											| -
	X	| draw.draw(texId, x, y, w, h)										| Rather then texID it will use texture objects
	X	| draw.drawSub(texId, x, y, w, h, xSub, ySub, wSub, hSub)			| Same as Above
		| draw.drawSprite(spriteSheet, sprite, x, y, w, h)					| Rather then spriteSheet it will use objects
		| draw.openImage(filename)											| resource.openImage(filename)
		| draw.openSpriteSheet(filename)									| resource.openSpriteSheet(filename)
		| draw.getImageArray(filename)										| Texture.prototype.getPixels([x, y, w, h]);
		| draw.createImageArray(w, h)										| REMOVED infavor of Typed Arrays
		| draw.createImage(arr, w, h)										| new Texture(arr, w, h);
		| draw.saveImage(texId, filename)									| Texture.prototype.save(filename)
		| draw.freeImage(texId)												| REMOVED infavor of automatic texture caching
		| draw.isTexture(texId)												| Texture.prototype.isValid()
		| draw.isSpiteSheet(spriteSheet)									| SpriteSheet.prototype.isValid();
		| draw.cameraReset()												| draw.resetTransform() (inline with HTML5 cavas)
		| draw.cameraPan(x, y)												| draw.translate(x, y) - 
		| draw.cameraZoom(f)												| draw.scale(x, y) -
		| draw.cameraRotate(r)												| draw.rotate(r)
		| draw.setFont(prettyName, size)									| draw.font = fontObj; draw.fontSize = size
		| draw.loadFont(prettyName, filename)								| fontObj = resource.loadFont(filename);
		| draw.isFontLoaded(prettyName)										| Font.prototype.isValid();
		| draw.getVerts()													| draw.currentVerts
	X	| draw.setDrawOffscreen(draw)										| REMOVED, never used it
		| draw.setCenter(x, y)												| REMOVED - Not really needed with mature camera controls
====================================================================================================================================
==== Very Important but I'm not sure how it fits in 																			====
		| input.keyDown(key)												| input.keyState[key]
		| input.mouseX														| input.mousePos a vec2
		| input.mouseY														| -
		| input.leftMouseButton												| input.mouseState[input.LEFT_MOUSE_BUTTON]
		| input.middleMouseButton											| input.mouseState[input.MIDDLE_MOUSE_BUTTON]
		| input.rightMouseButton											| input.mouseState[input.RIGHT_MOUSE_BUTTON]
====================================================================================================================================
==== The whole API is of limited usefulness and very unsafe, might get removed completly										====
	X	| mod.open(filename)												| REMOVED
	X	| mod.call(id, method)												| REMOVED
====================================================================================================================================
==== Really awesome API and will be extended with some ORM stuff																====
		| db.open(filename)													| new Database(filename)
		| db.exec(statement)												| Database.prototype.exec(statement)
		| db.execPrepare(statement)											| Database.prototype.exec(statement)
====================================================================================================================================
==== Really awesome API but it will stay devmode only																			====
		| unsafe.getNumberAddress(number)									| The long type is a real pain and should be fixed
		| unsafe.getNative(address, length)									| Same but returns a typed array
		| unsafe.call(address)												| unsafe.call(address, callingConvention, argTypes, args)
		| unsafe.malloc(length)												| unsafe.setArrayPersistent(array, true)
		| unsafe.free(array)												| Same as above
	X	| unsafe.addressOf(array)											| -
		| unsafe.mprotect(address, length, enable)							| Needs quite a bit more safety, it's a complex method
		| unsafe.getPageSize()												| unsafe.pageSize (Implamented with a Getter)
= NEW STUFF  =======================================================================================================================
		|																	| process.supports
	X	| 																	| new Matrix([]);
	X	| 																	| Math.degToRad(a)
	X	| 																	| Math.radToDeg(a)
	X	| 																	| Math.PI_2
	X	| 																	| Math.PI_4
	X	|																	| new Vector2(x, y)
	X	| 																	| new Vector3(x, y, z)
	X	|																	| new Vector4(x, y, z, w)
		| 																	| Math.distince(v1, v2)
		| 																	| new Rectangle(x, y, w, h)
		| 																	| Rectangle.intersects(r1, r2)
		| 																	| Math.perlin
	X	| 																	| setTimeout(cb, delay)
	X	| 																	| setInterval(cb, delay)
	X	|																	| clearTimeout(id)
	X	|																	| clearInterval(id)
		| 																	| alert(msg)
	X	| 																	| debug.assert(value, msg)
		| 																	| unsafe.bindCall(address, callingConvention, argTypes)
		| 																	| new SpriteSheet(texture)
		| 																	| SpriteSheet.prototype.bindSprite(name, x, y, w, h)
{'fraction_non_alphanumeric': 0.22113241194828354, 'fraction_numerical': 0.0026749888542131075, 'mean_word_length': 2.2997711670480547, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, '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': '473049', 'n_tokens_mistral': 9122, 'n_tokens_neox': 6159, 'n_words': 1303}