Skip to content

Lin Runtime megaissue. #17

@NotJustAnna

Description

@NotJustAnna

My plan is to make the Lin Runtime well-documented, tiered and easily buildable, so that it can both safely execute untrusted code in smaller/safer runtimes and be able to interact with the Java world at more permissible ones.

Essential Runtime

Lin will either not work at all or features will randomly not work.

  • __ensureNotNull
  • __iterator, __iterator -> __hasNext, __next
  • A native function which removes an entry from an array/object
  • A native function to clear an object/array

Minimal niceties to have

  • println
  • readln
  • cast to string/decimal/integers
  • toJSON/fromJSON
  • integer not/and/or/nor/nand/xor
  • integer bitAt
  • function binding
  • array lastIndex, array size, array firstElement, array lastElement
  • module system (eg. val { fromJSON, toJSON } = module("json"))
  • currentTimeMillis
  • Decimal.isNaN boolean

Dangerous stuff

  • file system access (real or virtual)
  • access to Kotlin/Java reflection
  • access to Lin compilation/evaluation
  • exit(code)

Metadata

Metadata

Assignees

No one assigned

    Labels

    component:runtimeThis issue is related to the runtime.enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions