Commit Graph
12 Commits
Author SHA1 Message Date
Bob Nystrom 5e63e65752 docs: flesh out Range class docs, fix grammar, add smarty plugin, and improve CLI description 2015-09-23 04:19:38 +00:00
Bob Nystrom 6bda720b71 feat: replace all :::dart code fence markers with :::wren in documentation
Add a custom Pygments lexer plug-in for Wren syntax highlighting, update contributing docs with setup instructions for the lexer, and switch every `:::dart` annotation across all doc/site markdown files to `:::wren` so code examples render with the correct language grammar.
2015-09-22 14:59:54 +00:00
Bob Nystrom aa72900a9e feat: replace IO class with System class and remove separate IO module
- Delete wren_io.c, wren_io.h, and io.wren source files
- Remove multi-arity print overloads and IO.read/IO.time methods
- Add System class with print, printAll, write, writeAll methods to core.wren
- Update all documentation examples and README to use System.print instead of IO.print
2015-09-15 14:46:09 +00:00
Bob Nystrom b7904a89c9 feat: add String.fromCodePoint static method and refactor UTF-8 encoding into reusable utilities
Implement the `String.fromCodePoint(_)` primitive that creates a string from a Unicode code point, with validation for integer range 0–0x10ffff. Extract inline UTF-8 encoding logic from `readUnicodeEscape` in the compiler into new `wrenUtf8NumBytes` and `wrenUtf8Encode` utility functions in `wren_utils`, and add `wrenStringFromCodePoint` helper in `wren_value`. Update documentation for core classes to add "Methods" and "Static Methods" section headers, and include `String.fromCodePoint` docs with example. Add a test file `from_code_point.wren` covering various code points.
2015-03-27 14:43:36 +00:00
Thorbjørn Lindeijer ed559673ea feat: add Num.pi constant and trigonometric function tests for acos, asin, atan, cos, sin, tan 2015-03-19 20:12:50 +00:00
Thorbjørn Lindeijer c717b8d3fd feat: add Num.atan(x) method mapping to C atan2 for quadrant-aware arc tangent
Adds a new `atan(_)` primitive method to the Num class that wraps the C
`atan2` function, allowing callers to compute the arc tangent of the
number divided by a given argument `x` while using the signs of both
numbers to determine the correct quadrant of the result. The
implementation registers the primitive `num_atan2` in the core VM
initialization and documents the new method in the core library
reference.
2015-03-15 15:43:02 +00:00
Thorbjørn Lindeijer ac414a24fd feat: add acos, asin, atan trigonometric methods to Num class
Implement arc cosine, arc sine, and arc tangent primitives in the VM core
and document them in the Num API reference.
2015-03-14 13:52:16 +00:00
Thorbjørn Lindeijer 2e6cb23b56 feat: add Num.tan method to core library and documentation
Add the missing `tan` method to the Num class, implementing the tangent
trigonometric function. This fills the gap between the existing `sin` and
`cos` methods, providing a complete set of basic trigonometric operations.

- Register `num_tan` primitive in the VM core initialization
- Implement `DEF_PRIMITIVE(num_tan)` using C's `tan()` math function
- Add documentation entry for `tan` in the core library reference
2015-03-14 13:40:23 +00:00
Bob Nystrom fdcd1fdf03 docs: update ceil/floor examples with negative numbers and range docs to use non-integer values 2015-02-27 15:37:58 +00:00
hachibu 8f6e17be51 docs: add ceil, floor, .., and ... operator documentation to num.markdown 2015-02-26 16:34:08 +00:00
Gavin Schulz 87cc5fdbae feat: add Num.fromString static method to parse decimal string literals
Implements a new `fromString` static method on the `Num` class that attempts to parse a string as a decimal number literal using `strtod`. Returns the parsed `Num` value on success, or `null` if the string does not represent a valid number. Includes runtime validation that the argument is a string, and adds test coverage for positive, negative, zero, and decimal inputs as well as non-numeric strings.
2015-02-23 04:06:17 +00:00
Bob Nystrom a74797f333 docs: split monolithic core-library.markdown into per-class docs under doc/site/core/ 2015-01-18 23:36:36 +00:00