Paste the full DESCRIPTION file inside a code block below:
Package: QuickJSR
Title: Interface for the 'QuickJS' Lightweight 'JavaScript' Engine
Version: 1.2.0.9000
Authors@R: c(
person(c("Andrew", "R."), "Johnson", , "andrew.johnson@arjohnsonau.com", role = c("aut", "cre"),
comment = c(ORCID = "0000-0001-7000-8065")),
person("Fabrice", "Bellard", role = c("cph"),
comment = "Author of QuickJS sources and headers"),
person("Charlie", "Gordon", role = c("cph"),
comment = "Author of QuickJS sources and headers")
)
Description: An 'R' interface to the 'QuickJS' portable 'JavaScript'
engine. The engine and all 'R' to 'JavaScript' interoperability is bundled
within the package, requiring no dependencies beyond a 'C' compiler.
License: MIT + file LICENSE
URL: https://github.com/andrjohns/QuickJSR, https://bellard.org/quickjs/
BugReports: https://github.com/andrjohns/QuickJSR/issues
Suggests:
knitr,
rmarkdown,
tinytest
Encoding: UTF-8
Language: en-AU
NeedsCompilation: yes
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.3.1
SystemRequirements: GNU make
VignetteBuilder: knitr
[ ] Dimensionality Reduction, Clustering, and Unsupervised Learning
[ ] Machine Learning
[ ] Regression and Supervised Learning
[ ] Exploratory Data Analysis (EDA) and Summary Statistics
[ ] Spatial Analyses
[ ] Time Series Analyses
[ ] Probability Distributions
Explain how and why the package falls under these categories (briefly, 1-2 sentences). Please note any areas you are unsure of:
Providing an R interface to JS code, and the ability to pass objects/values/functions/environments between them, allows for additional flexibility in the tools available for accessing different data APIs and existing packages/scripts (e.g., NPM) for working with them.
It might fit better under the Computing Infrastructure or HTTP Tools categories listed on the rOpenSci website, but those weren't options to choose from
Who is the target audience and what are scientific applications of this package?
Target audience would be users with existing pipelines needing JS interaction/evaluation, or JS code that they need to integrate into a package without rewriting.
Existing alternative would be V8, but that requires a system dependency (libv8) which can be difficult to install for some systems. Unlike V8, QuickJSR is also able to pass functions, environments, and closures to JS code, with no need for serialisation.
Submitting Author Name: Andrew Johnson Submitting Author Github Handle: !--author1-->@andrjohns<!--end-author1-- Repository: https://github.com/andrjohns/QuickJSR Submission type: Pre-submission Language: en
Scope
Please indicate which category or categories from our package fit policies or statistical package categories this package falls under. (Please check one or more appropriate boxes below):
Data Lifecycle Packages
[ ] data retrieval
[x] data extraction
[x] data munging
[ ] data deposition
[x] data validation and testing
[ ] workflow automation
[ ] version control
[ ] citation management and bibliometrics
[ ] scientific software wrappers
[ ] field and lab reproducibility tools
[ ] database software bindings
[ ] geospatial data
[ ] text analysis
Statistical Packages
[ ] Bayesian and Monte Carlo Routines
[ ] Dimensionality Reduction, Clustering, and Unsupervised Learning
[ ] Machine Learning
[ ] Regression and Supervised Learning
[ ] Exploratory Data Analysis (EDA) and Summary Statistics
[ ] Spatial Analyses
[ ] Time Series Analyses
[ ] Probability Distributions
Explain how and why the package falls under these categories (briefly, 1-2 sentences). Please note any areas you are unsure of:
Providing an R interface to JS code, and the ability to pass objects/values/functions/environments between them, allows for additional flexibility in the tools available for accessing different data APIs and existing packages/scripts (e.g., NPM) for working with them.
It might fit better under the
Computing Infrastructure
orHTTP Tools
categories listed on the rOpenSci website, but those weren't options to choose fromIf submitting a statistical package, have you already incorporated documentation of standards into your code via the srr package?
Who is the target audience and what are scientific applications of this package?
Target audience would be users with existing pipelines needing JS interaction/evaluation, or JS code that they need to integrate into a package without rewriting.
Existing alternative would be
V8
, but that requires a system dependency (libv8
) which can be difficult to install for some systems. UnlikeV8
,QuickJSR
is also able to pass functions, environments, and closures to JS code, with no need for serialisation.(If applicable) Does your package comply with our guidance around Ethics, Data Privacy and Human Subjects Research?
Any other questions or issues we should be aware of?: