Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implemented new JavaScript target and standalone web package for the Kipper Compiler #279

Merged

Conversation

Luna-Klatzer
Copy link
Member

@Luna-Klatzer Luna-Klatzer commented Aug 11, 2022

What type of change does this PR perform?

  • New feature (Non-breaking change which adds functionality)

Summary

Implemented a new translation target for JavaScript, and added a new web package which will ship the standalone module for the browser.

Closes #208
Closes #86

Summary of Changes

Does this PR create new warnings?

No.

Detailed Changelog

Added

  • JavaScript compilation target with a new monorepo package called @kipper/target-js, which implements the semantic
    analysis and code generation for JavaScript, and provides the class KipperJavaScriptTarget, which can be sed as the
    target in the CompileConfig. (#208).
  • Standalone web-module package called @kipper/web, which from now on will provide the kipper-standalone.js script
    that can be used in a web-application. This also bundles @kipper/target-js and @kipper/target-ts, which can be
    also accessed using the identifiers KipperJS and KipperTS in the web environment.
    (#86).
  • New Kipper CLI flag -t/--target to specify the target to use for a compilation or execution.

Changed

  • Moved TypeScript target from the core package to a new monorepo package called @kipper/target-ts, which implements
    the semantic analysis and code generation for TypeScript, and provides the class KipperTypeScriptTarget, which
    can be sed as the target in the CompileConfig.

Linked other issues or PRs

Luna-Klatzer and others added 27 commits August 2, 2022 14:54
…monorepo

Update typescript-eslint monorepo to v5.33.0
Update dependency @oclif/test to v2.1.1
…ation-target-for-javascript' into 208-feature-implement-new-translation-target-for-javascript
…ation-target-for-javascript' into 208-feature-implement-new-translation-target-for-javascript
…ation-target-for-javascript' into 208-feature-implement-new-translation-target-for-javascript
@Luna-Klatzer Luna-Klatzer added the feature New feature or enhancement label Aug 11, 2022
@Luna-Klatzer Luna-Klatzer added this to the Stable Kipper Release milestone Aug 11, 2022
@Luna-Klatzer Luna-Klatzer self-assigned this Aug 11, 2022
@Luna-Klatzer Luna-Klatzer marked this pull request as ready for review August 11, 2022 14:50
@codecov
Copy link

codecov bot commented Aug 11, 2022

Codecov Report

Merging #279 (41ffcd0) into dev (80310fe) will increase coverage by 0.41%.
The diff coverage is 94.54%.

❗ Current head 41ffcd0 differs from pull request most recent head a11a0b6. Consider uploading reports for the commit a11a0b6 to get more accurate results

@@            Coverage Diff             @@
##              dev     #279      +/-   ##
==========================================
+ Coverage   80.28%   80.69%   +0.41%     
==========================================
  Files          52       58       +6     
  Lines        1927     1999      +72     
  Branches      234      239       +5     
==========================================
+ Hits         1547     1613      +66     
- Misses        296      300       +4     
- Partials       84       86       +2     
Impacted Files Coverage Δ
...er/core/src/compiler/parser/compilable-ast-node.ts 75.38% <ø> (ø)
kipper/core/src/compiler/parser/root-ast-node.ts 91.30% <ø> (ø)
kipper/core/src/compiler/program-ctx.ts 76.66% <ø> (ø)
kipper/core/src/compiler/scope-declaration.ts 65.38% <ø> (ø)
kipper/core/src/compiler/semantics/index.ts 100.00% <ø> (ø)
...ore/src/compiler/semantics/language/definitions.ts 81.69% <ø> (ø)
...core/src/compiler/semantics/language/statements.ts 58.13% <ø> (ø)
.../target-presets/translation/built-ins-generator.ts 100.00% <ø> (ø)
...piler/target-presets/translation/code-generator.ts 100.00% <ø> (ø)
...e/src/compiler/target-presets/translation/index.ts 100.00% <ø> (ø)
... and 26 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@Luna-Klatzer Luna-Klatzer merged commit 53e9470 into dev Aug 11, 2022
@Luna-Klatzer Luna-Klatzer deleted the 208-feature-implement-new-translation-target-for-javascript branch August 11, 2022 18:58
@Luna-Klatzer Luna-Klatzer mentioned this pull request Aug 11, 2022
4 tasks
@Luna-Klatzer Luna-Klatzer changed the title Implemented new JavaScript target and web package Implemented new JavaScript target and standalone web package Aug 11, 2022
@Luna-Klatzer Luna-Klatzer changed the title Implemented new JavaScript target and standalone web package Implemented new JavaScript target and standalone web package for the Kipper Compiler Aug 11, 2022
@Luna-Klatzer Luna-Klatzer mentioned this pull request Feb 19, 2023
34 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or enhancement
Projects
Development

Successfully merging this pull request may close these issues.

1 participant