![]() ![]() This program is distributed in the hope that it will be useful, but WITHOUT ANY The terms of the GNU General Public License as published by the Free Softwareįoundation, either version 3 of the License, or This program is free software: you can redistribute it and/or modify it under If you have any questions or concerns, you can open up a discussion page here! Copyright and License If you want to contribute to Kipper, we have a full guide explaining the structure of Kipper and how to use GitHub Even so though, Kipper will always try to notīe invasive, and developers can choose during development time how to handleĭifferent cases and how Kipper should handle them during runtime. Means functionality like casts or conversions are more strictly handled and don't This means Kipper will still be there to assist the developerĭuring runtime, by handling many cases where type issues could arise. Standardised way, by allowing for more complex runtime type checks and runtimeĮrror handling. Kipper therefore tries to implement a way to easily solve those issues in a In more errors, due to issues arising while trying to fix the original problems. Instanceof and typeof checks, it becomes a tedious effort that often results Issues and many will simply bypass error checks altogether. This is a huge issue when working with dynamic data or JavaScriptĬode, where types are unknown or can't be known before runtime, since due to theĬompile time typing of TypeScript type checking often is not able to detect That TypeScript can't detect is and properly resolve is the issue of inconsistent Has many of its designs and features similarly implemented. It do things differently? TypeScript is an amazing language, which is why Kipper TypeScript already does a great job at this, so why is Kipper needed or how does Work as intended and that developers can discover errors before they run their This primarily also utilises type checking, as a way to ensure that programs Safety and functionality using a compiler and pre-runtime error checking. Therefore this programming language, like TypeScript, aims to provide more Simplification of the development process for developers, both in the webĪnd server-side space, by improving on common issues and helping developers ![]() The primary use case and reason for the development of Kipper is the It is not required knowledge for using or trying out Kipper. Skip this section, if you are not interested in the details behind Kipper and this Define your own logger and compiler, which will handle the compilation const logger = new Kipper. ![]() Simple example of compiling and running Kipper code in a browser: ![]() Provides the Kipper Compiler for the browser and enables the compilation of Kipper code to JavaScript. Run it using the NodeJS CLI Import the package in NodeJS or Deno.įor running Kipper in the browser, you will have to include the kipper-standalone.js file, which.Run it in the browser using the CDN file, which bundles the entire compiler.Translation support for all ES versions as far as ES6 (JavaScript target specific).Full translation to/and integration with JavaScript and TypeScript.Type Conversion Overloading to customise conversion behaviour.Operator overloading and additional customisation behaviour.Conversion behaviour functions in classes to customise conversion behaviour.Null safety, by enforcing non-null types unless explicitly allowed.Issues, such as "TypeError: can't access property "." of undefined". Runtime errors and safety checks in case of incomplete or faulty typing.Avoidance of any type issues, with ensurance of compiler checks that operations and data.Is detected by the compiler and ensures the developer has to handle them. Strict cast and conversion handling, so that potentially or definitely problematic usage.Runtime type and type checking features, where original compile time type issues can be.Duck typing type checking with TypeScript-like interface types for both compile and runtime.Full compiler ensured type safety, by analysing and reporting code during compilation.View the current implementation state in the Kipper Roadmap □ □. The standalone web-module for the Kipper compiler.The Kipper command line interface (CLI).The core implementation of the Kipper compiler.kipper: The Kipper compiler and API, which ships with all child packages.If you are using pnpm or yarn, use pnpm i kipper or yarn add kipper. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |