Commit Graph

428 Commits

Author SHA1 Message Date
gingerBill 29e5f94c2a Add #no_broadcast procedure parameter to disallow automatic array programming broadcasting on procedure arguments 2024-03-21 11:52:48 +00:00
Ed Yu dd74a57c44 Expose internal invmod and int_exponent_mod with more consistent naming 2024-03-12 11:01:09 -07:00
spindlebink b2e7eb4db4 Properly initialize return matrices in linalg.orthonormalize 2024-03-09 09:10:25 -06:00
Jeroen van Rijn db03c86544 Fix typo in big.internal_invmod
Fixes #3253
2024-03-08 18:05:34 +01:00
Ed Yu de41c2256d For invmod, b has to be > 1, fix a logic typo 2024-03-04 10:16:19 -08:00
Jeroen van Rijn 4c35633e01 math.big constants were no longer initialized
Fixes #3243
2024-03-03 15:09:38 +01:00
Juan Ignacio Díaz cd61251d39 add Go license 2024-02-17 11:49:07 -03:00
Juan Ignacio Díaz 7a592cbb31 port math.round from Golang 2024-02-16 13:23:44 -03:00
Lucas Perlind 6df07a2c0a Remove bounds checking on a lot of linalg 2024-02-13 10:23:29 +11:00
Lucas Perlind c0d407a2b4 Revert "Change minor/adjoint to be row, col from c, r to be consistent with [row, col] syntax; Add #no_bounds_check were appropriate"
This reverts commit 5dd2e38aff.
2024-02-13 10:13:34 +11:00
gingerBill 900fe95ba0 Split out linalg.identity between matrices and array-based matrix 2024-02-12 12:08:43 +00:00
gingerBill 5dd2e38aff Change minor/adjoint to be row, col from c, r to be consistent with [row, col] syntax; Add #no_bounds_check were appropriate 2024-02-12 11:54:24 +00:00
gingerBill e201a2fabb Add rand.choice_enum 2024-02-10 15:13:09 +00:00
gingerBill b0675358c3 Add angle_between and matrix2_rotate 2024-02-06 14:09:05 +00:00
gingerBill 3e7e779abf Replace core:* to base:* where appropriate 2024-01-28 22:18:51 +00:00
gingerBill f67691c457 Move matrix related procedures to the different linalg packages 2024-01-28 21:28:54 +00:00
Jeroen van Rijn 1b83f4a18b Merge pull request #3082 from edyu/master
Fix math/fixed floor/ceil/round
2024-01-17 19:13:22 +01:00
Ed Yu 7f6f971284 Fix math/fixed floor/ceil/round 2024-01-08 18:56:12 -08:00
Lucas Perlind 67d5b97ff9 Fix linalg shadowing error 2024-01-09 10:24:12 +11:00
gingerBill b408ec6bac Remove distinct from the specific types 2024-01-05 14:48:39 +00:00
gingerBill 0b83e3dae5 Enforce naming the parameters with builtin.quaternion to reduce confusion 2024-01-05 14:29:14 +00:00
Jeroen van Rijn f79efd43e4 Fix missing clamp in core:math/big random. 2023-11-27 12:43:24 +01:00
Jeroen van Rijn 9ea88f1353 Merge pull request #2918 from flysand7/math-doc
[math]: Fix the doc comments on `F64_*` constants
2023-11-24 14:16:19 +01:00
Jeroen van Rijn dd9b0ae4e5 Make pow2_f{16,32,64} contextless for consistency. 2023-11-11 14:06:48 +01:00
flysand7 270348b112 [core]: Remove do keyword from the core library 2023-11-11 20:36:38 +11:00
Jeroen van Rijn 4cb0edc90b Work around LLVM idiocy. 2023-11-04 22:42:32 +01:00
Jeroen van Rijn 6201280468 Add math.pow2_f{16,32,64}, fast floating point 2^x where x is an integer. 2023-11-04 22:14:44 +01:00
flysand7 4a4aca6829 [math]: Fix the doc comments on F64_* constants 2023-11-04 20:30:14 +11:00
gingerBill eb261f5b28 Merge branch 'master' into new-sys-unix 2023-10-31 12:16:25 +00:00
Damian Tarnawski 49da19e013 Replace Math.random with crypto.getRandomValues for _system_number 2023-10-27 12:06:35 +02:00
flysand7 4d65b1ab9c Implement new sys/unix package 2023-10-27 10:51:21 +11:00
Damian Tarnawski 166803a2a5 Rename rand to rand_f64 2023-10-27 00:18:41 +02:00
Damian Tarnawski 11a2b2a942 Add system_random and random_bytes for js target 2023-10-27 00:05:38 +02:00
gingerBill d27109640e Partial pseudo-revert 2023-10-02 20:59:43 +01:00
gingerBill 5023313c03 Minor cleanups to the core library 2023-09-30 20:26:04 +01:00
gingerBill 14adcb9db8 Use or_break and or_continue where appropriate in the core library 2023-09-30 15:34:39 +01:00
gingerBill 2ac463f003 Rename bitwise operations to bit_or etc 2023-09-28 16:40:01 +01:00
Lucas Perlind 7cc5177078 Fixed up missing output for rand examples 2023-09-27 16:34:19 +10:00
Lucas Perlind 8b680254ee Better guarantee boundaries of floating point rand 2023-08-18 11:19:01 +10:00
Lucas Perlind b31d8b1ad0 Update rand documentation about floats 2023-08-16 21:13:56 +10:00
gingerBill 67f48aca96 Fix _random_u64 2023-08-15 11:06:12 +01:00
gingerBill d13bed9a0a Change algorithm to work on 64-bit integers rather than 32-bit integers internally 2023-08-15 10:53:59 +01:00
gingerBill 904c48b11a Fix range comment from (0, n] to [0, n) 2023-08-15 10:36:00 +01:00
gingerBill 2a42dab108 Merge pull request #2661 from Beefster09/fixed-f64-conversion
Fix conversions between fixed point numbers and f64
2023-08-07 11:00:42 +01:00
gingerBill 5dba08fb3b Keep -vet happy 2023-07-31 12:19:25 +01:00
Justin Snyder d4194962b0 Update fixed.odin 2023-07-15 23:43:14 -06:00
gingerBill 17562e476f Remove math usage of raw LLVM intrinsic prototypes 2023-07-07 23:13:37 +01:00
gingerBill 1ecb4aa9aa Begin work on core:math/cmplx
`complex*` types only at the moment, `quaternion*` types coming later
2023-06-28 13:20:23 +01:00
gingerBill 0180a4fcd4 Add math.sincos 2023-06-28 12:57:09 +01:00
gingerBill 866a9fdf19 Actually add math.hypot 2023-06-28 12:19:45 +01:00