Changeset 9084 in project
- Timestamp:
- 02/28/08 08:30:10 (13 years ago)
- Files:
-
- 1 added
- 2 deleted
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
release/3/mathh/tags/1.11/mathh.html
r8597 r9084 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">2 <!-- Generated by eggdoc Revision: 1.20 -->3 <html>4 <head>5 <title>Eggs Unlimited - mathh</title><style type="text/css"> <!--6 CODE {7 color: #666666;8 }9 /* DT.definition EM { font-weight: bold; font-style: normal; } */10 11 DT.definition {12 background: #eee;13 color: black;14 padding: 0.2em 1em 0.2em 0.7em;15 margin-left: 0.2em;16 border: 1px solid #bbc;17 font-family: "Andale Mono", monospace;18 /* font-size: 1.2em; */19 20 }21 DD {22 margin-top: 0.8em;23 margin-bottom: 0.8em;24 }25 DIV.subsection {26 border-top: 1px solid #448;27 padding-left: 1em;28 margin-bottom: 1.2em;29 }30 DIV.subsubsection {31 border-top: 1px dotted #99c;32 /* border-left: 1px solid #99c; */33 padding-left: 1em;34 margin-bottom: 1.2em;35 }36 DIV.subsubsubsection {37 border-top: 1px solid #ddf;38 padding-left: 1em;39 margin-bottom: 1.2em;40 }41 42 DIV.section {43 margin-bottom: 1.5em;44 }45 a:link {46 color: #336;47 }48 a:visited { color: #666; }49 a:active { color: #966; }50 a:hover { color: #669; }51 body { margin: 0; padding: 0; background: #fff; color: #000; font: 9pt "Lucida Grande", "Verdana", sans-serif; }52 H2 {53 background: #336;54 color: #fff;55 padding-top: 0.5em;56 padding-bottom: 0.5em;57 padding-left: 16px;58 margin: 0 0 1em 0;59 }60 UL LI {61 list-style: none;62 }63 TT {64 font-family: "Andale Mono", monospace;65 /* font-size: 1.2em; */66 }67 H3 {68 color: #113;69 margin-bottom: 0.5em;70 }71 H4, H5, H6 {72 color: #113;73 margin-bottom: 1.0em;74 }75 H5 {76 font-weight: normal;77 font-style: italic;78 font-size: 100%;79 margin-top: 1.2em;80 }81 H6 {82 font-weight: bold;83 font-size: 85%;84 margin-top: 1.2em;85 }86 DIV#eggheader {87 text-align: center;88 float: right;89 margin-right: 2em;90 }91 DIV#header IMG {92 /* display: block; margin-left: auto; margin-right: auto; */93 /* float: right; */94 border: none; /* firefox */95 }96 DIV#footer {97 background: #bbd;98 padding: 0.7em ;99 border-top: 1px solid #cce;100 }101 DIV#footer hr {102 display: none;103 }104 DIV#footer a {105 float: left;106 }107 DIV#revision-history {108 float: right;109 }110 111 DIV#body {112 margin: 1em 1em 1em 16px;113 }114 115 DIV#examples PRE {116 background: #eef;117 padding: 0.1em;118 border: 1px solid #aac;119 }120 PRE#license, DIV#examples PRE {121 padding: 0.5em;122 }123 DIV#examples PRE {124 /* font-size: 85%; */125 }126 PRE { font-family: "Andale Mono", monospace; }127 TABLE {128 background: #eef;129 padding: 0.2em;130 border: 1px solid #aac;131 border-collapse: collapse;132 width: 100%;133 }134 TABLE.symbol-table TD.symbol {135 width: 15em;136 font-family: "Andale Mono", monospace;137 /* font-size: 1.2em; */138 }139 TH {140 text-align: left;141 border-bottom: 1px solid #aac;142 padding: 0.25em 0.5em 0.25em 0.5em;143 }144 TD { padding: 0.25em 0.5em 0.25em 0.5em; }145 --></style></head>146 <body>147 <div id="header">148 <h2>mathh</h2>149 <div id="eggheader"><a href="index.html">150 <img src="egg.jpg" alt="[Picture of an egg]" /></a></div></div>151 <div id="body">152 <div class="section">153 <h3>Description</h3>154 <p>Provides:</p>155 <ul>156 <li>* access to ISO C math functions in <code><math.h></code> that are not defined by Chicken.</li>157 <li>* <code><float.h></code> constants, common derived constants, and limits for Chicken numeric types.</li>158 <li>* R6RS arithmetic functions.</li></ul></div>159 <div class="section">160 <h3>Author</h3>John Cowan and Kon Lovett</div>161 <div class="section">162 <h3>Usage</h3><tt>(require-extension mathh)</tt></div>163 <div class="section">164 <h3>Download</h3><a href="mathh.egg">mathh.egg</a></div>165 <div class="section">166 <h3>Documentation</h3>167 <div class="subsection">168 <h4>Floating-point Functions</h4>169 <p>The following procedures are provided, with their usual meaning.</p>170 <p>Windows does not provide native implementations of log1p, lgamma, tgamma. However log1p is approximated.</p>171 <p>The Bessel functions are prefixed by 'bessel-' to distinguish the names from common variables.</p>172 <dt class="definition"><strong>procedure:</strong> (bessel-j0 N)</dt>173 <dd></dd>174 <dt class="definition"><strong>procedure:</strong> (bessel-j1 N)</dt>175 <dd></dd>176 <dt class="definition"><strong>procedure:</strong> (bessel-jn O N)</dt>177 <dd></dd>178 <dt class="definition"><strong>procedure:</strong> (bessel-y0 N)</dt>179 <dd></dd>180 <dt class="definition"><strong>procedure:</strong> (bessel-y1 N)</dt>181 <dd></dd>182 <dt class="definition"><strong>procedure:</strong> (bessel-yn O N)</dt>183 <dd></dd>184 <dt class="definition"><strong>procedure:</strong> (cosh N)</dt>185 <dd></dd>186 <dt class="definition"><strong>procedure:</strong> (sinh N)</dt>187 <dd></dd>188 <dt class="definition"><strong>procedure:</strong> (tanh N)</dt>189 <dd></dd>190 <dt class="definition"><strong>procedure:</strong> (hypot N1 N2)</dt>191 <dd></dd>192 <dt class="definition"><strong>procedure:</strong> (gamma N)</dt>193 <dd></dd>194 <dt class="definition"><strong>procedure:</strong> (lgamma N)</dt>195 <dd></dd>196 <dt class="definition"><strong>procedure:</strong> (log10 N)</dt>197 <dd></dd>198 <dt class="definition"><strong>procedure:</strong> (log2 N)</dt>199 <dd></dd>200 <dt class="definition"><strong>procedure:</strong> (log1p N)</dt>201 <dd></dd>202 <dt class="definition"><strong>procedure:</strong> (make-log/base BASE)</dt>203 <dd>204 <p>Returns a procedure of one argument, the logarithm function for <tt>BASE</tt>.</p></dd>205 <dt class="definition"><strong>procedure:</strong> (ldexp N)</dt>206 <dd></dd>207 <dt class="definition"><strong>procedure:</strong> (scalbn N)</dt>208 <dd></dd>209 <dt class="definition"><strong>procedure:</strong> (fpmod N M)</dt>210 <dd>211 <p>Returns the modulus of <tt>N</tt> for <tt>M</tt>.</p></dd>212 <dt class="definition"><strong>procedure:</strong> (modf N)</dt>213 <dd>214 <p>Returns two values, the integral and fractional part of <tt>N</tt>.</p></dd>215 <dt class="definition"><strong>procedure:</strong> (frexp N)</dt>216 <dd>217 <p>Returns two values, the fraction and the exponent part of <tt>N</tt>.</p></dd></div>218 <div class="subsection">219 <h4>Float Classification</h4>220 <div class="section">221 <h3>Usage</h3>(require-extension matth-fpclass)</div>222 <dt class="definition"><strong>procedure:</strong> (fpclassify N)</dt>223 <dd>224 <p>Returns a symbol denoting the kind of floating-point number.</p><table class="symbol-table">Float Class225 <tr>226 <td class="symbol">infinite</td>227 <td></td></tr>228 <tr>229 <td class="symbol">nan</td>230 <td></td></tr>231 <tr>232 <td class="symbol">normal</td>233 <td></td></tr>234 <tr>235 <td class="symbol">subnormal</td>236 <td></td></tr>237 <tr>238 <td class="symbol">zero</td>239 <td></td></tr>240 <tr>241 <td class="symbol">unclassified</td>242 <td></td></tr></table></dd>243 <dt class="definition"><strong>procedure:</strong> (fpclass N)</dt>244 <dd>245 <p>Returns a symbol denoting the kind of floating-point number.</p><table class="symbol-table">Float Class246 <tr>247 <td class="symbol">positive-infinite</td>248 <td></td></tr>249 <tr>250 <td class="symbol">negative-infinite</td>251 <td></td></tr>252 <tr>253 <td class="symbol">quiet-nan</td>254 <td></td></tr>255 <tr>256 <td class="symbol">signaling-nan</td>257 <td></td></tr>258 <tr>259 <td class="symbol">positive-normal</td>260 <td></td></tr>261 <tr>262 <td class="symbol">negative-normal</td>263 <td></td></tr>264 <tr>265 <td class="symbol">positive-subnormal</td>266 <td></td></tr>267 <tr>268 <td class="symbol">negative-subnormal</td>269 <td></td></tr>270 <tr>271 <td class="symbol">positive-zero</td>272 <td></td></tr>273 <tr>274 <td class="symbol">negative-zero</td>275 <td></td></tr>276 <tr>277 <td class="symbol">unclassified</td>278 <td></td></tr></table></dd></div>279 <div class="subsection">280 <h4>Integer Constants</h4>281 <div class="section">282 <h3>Usage</h3>(require-extension matth-int)</div><table class="symbol-table">283 <tr>284 <td class="symbol">most-positive-fixnum</td>285 <td>Largest positive fixnum</td></tr>286 <tr>287 <td class="symbol">most-negative-fixnum</td>288 <td>Smallest negative fixnum</td></tr>289 <tr>290 <td class="symbol">fixnum-precision</td>291 <td>Number of bits in fixnum</td></tr>292 <tr>293 <td class="symbol">machine-word-bits</td>294 <td>Number of bits in machine word - C_word</td></tr>295 <tr>296 <td class="symbol">maximum-machine-word</td>297 <td>Largest machine word value - C_uword</td></tr>298 <tr>299 <td class="symbol">most-negative-machine-word</td>300 <td>Smallest negative machine word value - C_word</td></tr>301 <tr>302 <td class="symbol">most-positive-machine-word</td>303 <td>Largest positive machine word value - C_word</td></tr>304 <tr>305 <td class="symbol">unsigned-integer32-size</td>306 <td>Sizeof uint32_t</td></tr>307 <tr>308 <td class="symbol">maximum-unsigned-integer32</td>309 <td>Largest value for uint32_t</td></tr>310 <tr>311 <td class="symbol">unsigned-char-size</td>312 <td>Sizeof the C type</td></tr>313 <tr>314 <td class="symbol">unsigned-short-size</td>315 <td>Sizeof the C type</td></tr>316 <tr>317 <td class="symbol">unsigned-int-size</td>318 <td>Sizeof the C type</td></tr>319 <tr>320 <td class="symbol">unsigned-long-size</td>321 <td>Sizeof the C type</td></tr>322 <tr>323 <td class="symbol">unsigned-long-long-size</td>324 <td>Sizeof the C type, 0 when unsupported</td></tr>325 <tr>326 <td class="symbol">char-size</td>327 <td>Sizeof the C type</td></tr>328 <tr>329 <td class="symbol">short-size</td>330 <td>Sizeof the C type</td></tr>331 <tr>332 <td class="symbol">int-size</td>333 <td>Sizeof the C type</td></tr>334 <tr>335 <td class="symbol">long-size</td>336 <td>Sizeof the C type</td></tr>337 <tr>338 <td class="symbol">long-long-size</td>339 <td>Sizeof the C type, 0 when unsupported</td></tr></table></div>340 <div class="subsection">341 <h4>Floating-point Constants</h4>342 <div class="section">343 <h3>Usage</h3>(require-extension matth-float)</div><table class="symbol-table">344 <tr>345 <td class="symbol">float-radix</td>346 <td>Representation base of floating point number</td></tr>347 <tr>348 <td class="symbol">maximum-float</td>349 <td>Largest floating point number</td></tr>350 <tr>351 <td class="symbol">minimum-float</td>352 <td>Smallest floating point number</td></tr>353 <tr>354 <td class="symbol">float-epsilon</td>355 <td>The difference between 1.0 and the least value > 1.0 of a floating point number</td></tr>356 <tr>357 <td class="symbol">float-precision</td>358 <td>Number of digits in mantissa base radix of floating point number</td></tr>359 <tr>360 <td class="symbol">float-decimal-precision</td>361 <td>Number of digits in mantissa base 10 of floating point number</td></tr>362 <tr>363 <td class="symbol">float-maximum-exponent</td>364 <td>Largest exponent in base radix of floating point number</td></tr>365 <tr>366 <td class="symbol">float-minimum-exponent</td>367 <td>Smallest exponent in base radix of floating point number</td></tr>368 <tr>369 <td class="symbol">float-maximum-decimal-exponent</td>370 <td>Largest exponent in base 10 of floating point number</td></tr>371 <tr>372 <td class="symbol">float-minimum-decimal-exponent</td>373 <td>Smallest exponent in base 10 of floating point number</td></tr>374 <tr>375 <td class="symbol">maximum-double</td>376 <td>Largest floating point number</td></tr>377 <tr>378 <td class="symbol">minimum-double</td>379 <td>Smallest floating point number</td></tr>380 <tr>381 <td class="symbol">double-epsilon</td>382 <td>The difference between 1.0 and the least value > 1.0 of a floating point number</td></tr>383 <tr>384 <td class="symbol">double-precision</td>385 <td>Number of digits in mantissa base radix of floating point number</td></tr>386 <tr>387 <td class="symbol">double-decimal-precision</td>388 <td>Number of digits in mantissa base 10 of floating point number</td></tr>389 <tr>390 <td class="symbol">double-maximum-exponent</td>391 <td>Largest exponent in base radix of floating point number</td></tr>392 <tr>393 <td class="symbol">double-minimum-exponent</td>394 <td>Smallest exponent in base radix of floating point number</td></tr>395 <tr>396 <td class="symbol">double-maximum-decimal-exponent</td>397 <td>Largest exponent in base 10 of floating point number</td></tr>398 <tr>399 <td class="symbol">double-minimum-decimal-exponent</td>400 <td>Smallest exponent in base 10 of floating point number</td></tr>401 <tr>402 <td class="symbol">maximum-long-double</td>403 <td>Largest floating point number</td></tr>404 <tr>405 <td class="symbol">minimum-long-double</td>406 <td>Smallest floating point number</td></tr>407 <tr>408 <td class="symbol">long-double-epsilon</td>409 <td>The difference between 1.0 and the least value > 1.0 of a floating point number</td></tr>410 <tr>411 <td class="symbol">long-double-precision</td>412 <td>Number of digits in mantissa base radix of floating point number</td></tr>413 <tr>414 <td class="symbol">long-double-decimal-precision</td>415 <td>Number of digits in mantissa base 10 of floating point number</td></tr>416 <tr>417 <td class="symbol">long-double-maximum-exponent</td>418 <td>Largest exponent in base radix of floating point number</td></tr>419 <tr>420 <td class="symbol">long-double-minimum-exponent</td>421 <td>Smallest exponent in base radix of floating point number</td></tr>422 <tr>423 <td class="symbol">long-double-maximum-decimal-exponent</td>424 <td>Largest exponent in base 10 of floating point number</td></tr>425 <tr>426 <td class="symbol">long-double-minimum-decimal-exponent</td>427 <td>Smallest exponent in base 10 of floating point number</td></tr>428 <tr>429 <td class="symbol">long-double-radix</td>430 <td>Representation base of floating point number</td></tr>431 <tr>432 <td class="symbol">maximum-flonum</td>433 <td>Largest floating point number</td></tr>434 <tr>435 <td class="symbol">minimum-flonum</td>436 <td>Smallest floating point number</td></tr>437 <tr>438 <td class="symbol">flonum-epsilon</td>439 <td>The difference between 1.0 and the least value > 1.0 of a floating point number</td></tr>440 <tr>441 <td class="symbol">flonum-precision</td>442 <td>Number of digits in mantissa base radix of floating point number</td></tr>443 <tr>444 <td class="symbol">flonum-decimal-precision</td>445 <td>Number of digits in mantissa base 10 of floating point number</td></tr>446 <tr>447 <td class="symbol">flonum-maximum-exponent</td>448 <td>Largest exponent in base radix of floating point number</td></tr>449 <tr>450 <td class="symbol">flonum-minimum-exponent</td>451 <td>Smallest exponent in base radix of floating point number</td></tr>452 <tr>453 <td class="symbol">flonum-maximum-decimal-exponent</td>454 <td>Largest exponent in base 10 of floating point number</td></tr>455 <tr>456 <td class="symbol">flonum-minimum-decimal-exponent</td>457 <td>Smallest exponent in base 10 of floating point number</td></tr></table></div>458 <div class="subsection">459 <h4>Math Constants</h4>460 <div class="section">461 <h3>Usage</h3>(include "mathh-constants")</div>462 <p>Common constants, using 'define-constant'. As such they must be textually included.</p><table class="symbol-table">463 <tr>464 <td class="symbol">E</td>465 <td>e</td></tr>466 <tr>467 <td class="symbol">1/E</td>468 <td>1/e</td></tr>469 <tr>470 <td class="symbol">E^2</td>471 <td>e^2</td></tr>472 <tr>473 <td class="symbol">E^PI/4</td>474 <td>e^(pi/4)</td></tr>475 <tr>476 <td class="symbol">LOG2E</td>477 <td>log2(e)</td></tr>478 <tr>479 <td class="symbol">LOG10E</td>480 <td>log10(e)</td></tr>481 <tr>482 <td class="symbol">LN2</td>483 <td>log(2)</td></tr>484 <tr>485 <td class="symbol">LN3</td>486 <td>ln(3)</td></tr>487 <tr>488 <td class="symbol">LNPI</td>489 <td>ln(pi)</td></tr>490 <tr>491 <td class="symbol">LN10</td>492 <td>log(10)</td></tr>493 <tr>494 <td class="symbol">1/LN2</td>495 <td>1/ln(2)</td></tr>496 <tr>497 <td class="symbol">1/LN10</td>498 <td>1/ln(10)</td></tr>499 <tr>500 <td class="symbol">PI</td>501 <td>pi</td></tr>502 <tr>503 <td class="symbol">PI/2</td>504 <td>pi/2</td></tr>505 <tr>506 <td class="symbol">PI/4</td>507 <td>pi/4</td></tr>508 <tr>509 <td class="symbol">1/PI</td>510 <td>1/pi</td></tr>511 <tr>512 <td class="symbol">2/PI</td>513 <td>2/pi</td></tr>514 <tr>515 <td class="symbol">2/SQRTPI</td>516 <td>2/sqrt(pi)</td></tr>517 <tr>518 <td class="symbol">SQRTPI</td>519 <td>sqrt(pi)</td></tr>520 <tr>521 <td class="symbol">PI^2</td>522 <td>pi^2</td></tr>523 <tr>524 <td class="symbol">DEGREE</td>525 <td>pi/180</td></tr>526 <tr>527 <td class="symbol">SQRT2</td>528 <td>sqrt(2)</td></tr>529 <tr>530 <td class="symbol">1/SQRT2</td>531 <td>1/sqrt(2)</td></tr>532 <tr>533 <td class="symbol">SQRT3</td>534 <td>sqrt(3)</td></tr>535 <tr>536 <td class="symbol">SQRT5</td>537 <td>sqrt(5)</td></tr>538 <tr>539 <td class="symbol">SQRT10</td>540 <td>sqrt(10)</td></tr>541 <tr>542 <td class="symbol">CUBERT2</td>543 <td>cubert(2)</td></tr>544 <tr>545 <td class="symbol">CUBERT3</td>546 <td>cubert(3)</td></tr>547 <tr>548 <td class="symbol">4THRT2</td>549 <td>fourthrt(2)</td></tr>550 <tr>551 <td class="symbol">GAMMA1/2</td>552 <td>gamma(1/2)</td></tr>553 <tr>554 <td class="symbol">GAMMA1/3</td>555 <td>gamma(1/3)</td></tr>556 <tr>557 <td class="symbol">GAMMA2/3</td>558 <td>gamma(2/3)</td></tr>559 <tr>560 <td class="symbol">PHI</td>561 <td>phi</td></tr>562 <tr>563 <td class="symbol">LNPHI</td>564 <td>ln(phi)</td></tr>565 <tr>566 <td class="symbol">1/LNPHI</td>567 <td>1/ln(phi)</td></tr>568 <tr>569 <td class="symbol">EULER</td>570 <td>euler</td></tr>571 <tr>572 <td class="symbol">E^EULER</td>573 <td>e^euler</td></tr>574 <tr>575 <td class="symbol">SIN1</td>576 <td>sin(1)</td></tr>577 <tr>578 <td class="symbol">COS1</td>579 <td>cos(1)</td></tr>580 <tr>581 <td class="symbol">ZETA3</td>582 <td>theta(3)</td></tr></table></div>583 <div class="subsection">584 <h4>Fixnum Procedures</h4>585 <div class="section">586 <h3>Usage</h3>(require-extension fixnum-extras)</div>587 <p>R6RS fixnum functions. The "*" prefixed functions are variable arity versions of the built-in Chicken Scheme functions. This naming convention violates R6RS.</p>588 <dt class="definition"><strong>procedure:</strong> (fixnum-width)</dt>589 <dd>590 <p></p></dd>591 <dt class="definition"><strong>procedure:</strong> (least-fixnum)</dt>592 <dd>593 <p></p></dd>594 <dt class="definition"><strong>procedure:</strong> (greatest-fixnum)</dt>595 <dd>596 <p></p></dd>597 <dt class="definition"><strong>procedure:</strong> (fx=? FX ...)</dt>598 <dd>599 <p></p></dd>600 <dt class="definition"><strong>procedure:</strong> (fx<? FX ...)</dt>601 <dd>602 <p></p></dd>603 <dt class="definition"><strong>procedure:</strong> (fx>? FX ...)</dt>604 <dd>605 <p></p></dd>606 <dt class="definition"><strong>procedure:</strong> (fx<=? FX ...)</dt>607 <dd>608 <p></p></dd>609 <dt class="definition"><strong>procedure:</strong> (fx>=? FX ...)</dt>610 <dd>611 <p></p></dd>612 <dt class="definition"><strong>procedure:</strong> (fxcompare FX1 FX2)</dt>613 <dd>614 <p></p></dd>615 <dt class="definition"><strong>procedure:</strong> (fxzero? FX)</dt>616 <dd>617 <p></p></dd>618 <dt class="definition"><strong>procedure:</strong> (fxpositive? FX)</dt>619 <dd>620 <p></p></dd>621 <dt class="definition"><strong>procedure:</strong> (fxnegative? FX)</dt>622 <dd>623 <p></p></dd>624 <dt class="definition"><strong>procedure:</strong> (fxodd? FX)</dt>625 <dd>626 <p></p></dd>627 <dt class="definition"><strong>procedure:</strong> (fxeven? FX)</dt>628 <dd>629 <p></p></dd>630 <dt class="definition"><strong>procedure:</strong> (*fxmax FX ...)</dt>631 <dd>632 <p></p></dd>633 <dt class="definition"><strong>procedure:</strong> (*fxmin FX ...)</dt>634 <dd>635 <p></p></dd>636 <dt class="definition"><strong>procedure:</strong> (fxmax-and-min FX ...)</dt>637 <dd>638 <p></p></dd>639 <dt class="definition"><strong>procedure:</strong> (fxmodulo FX-N FX-D)</dt>640 <dd>641 <p></p></dd>642 <dt class="definition"><strong>procedure:</strong> (fxabs FX)</dt>643 <dd>644 <p></p></dd>645 <dt class="definition"><strong>procedure:</strong> (fxpow2log2 FX)</dt>646 <dd>647 <p></p></dd>648 <dt class="definition"><strong>procedure:</strong> (fxdiv FX-N FX-D)</dt>649 <dd>650 <p></p></dd>651 <dt class="definition"><strong>procedure:</strong> (fxdiv-and-mod FX-N FX-D)</dt>652 <dd>653 <p></p></dd>654 <dt class="definition"><strong>procedure:</strong> (fxdiv0 FX-N FX-D)</dt>655 <dd>656 <p></p></dd>657 <dt class="definition"><strong>procedure:</strong> (fxmod0 FX-N FX-D)</dt>658 <dd>659 <p></p></dd>660 <dt class="definition"><strong>procedure:</strong> (fxdiv0-and-mod0 FX-N FX-D)</dt>661 <dd>662 <p></p></dd>663 <dt class="definition"><strong>procedure:</strong> (fx*/carry FX1 FX2 FX3)</dt>664 <dd>665 <p></p></dd>666 <dt class="definition"><strong>procedure:</strong> (fx+/carry FX1 FX2 FX3)</dt>667 <dd>668 <p></p></dd>669 <dt class="definition"><strong>procedure:</strong> (fx-/carry FX1 FX2 FX3)</dt>670 <dd>671 <p></p></dd>672 <dt class="definition"><strong>procedure:</strong> (fxadd1 FX)</dt>673 <dd>674 <p></p></dd>675 <dt class="definition"><strong>procedure:</strong> (fxsub1 FX)</dt>676 <dd>677 <p></p></dd>678 <dt class="definition"><strong>procedure:</strong> (fxquotient FX-N FX-D)</dt>679 <dd>680 <p></p></dd>681 <dt class="definition"><strong>procedure:</strong> (fxremainder FX-N FX-D)</dt>682 <dd>683 <p></p></dd>684 <dt class="definition"><strong>procedure:</strong> (fxarithmetic-shift FX DIRECTIONAL-AMOUNT)</dt>685 <dd>686 <p></p></dd>687 <dt class="definition"><strong>procedure:</strong> (fxarithmetic-shift-left FX AMOUNT)</dt>688 <dd>689 <p></p></dd>690 <dt class="definition"><strong>procedure:</strong> (fxarithmetic-shift-right FX AMOUNT)</dt>691 <dd>692 <p></p></dd>693 <dt class="definition"><strong>procedure:</strong> (*fx- FX [FX2])</dt>694 <dd>695 <p></p></dd>696 <dt class="definition"><strong>procedure:</strong> (*fxand FX ...)</dt>697 <dd>698 <p></p></dd>699 <dt class="definition"><strong>procedure:</strong> (*fxior FX ...)</dt>700 <dd>701 <p></p></dd>702 <dt class="definition"><strong>procedure:</strong> (*fxxor FX ...)</dt>703 <dd>704 <p></p></dd>705 <dt class="definition"><strong>procedure:</strong> (fxif MASK TRUE FALSE)</dt>706 <dd>707 <p></p></dd>708 <dt class="definition"><strong>procedure:</strong> (fxbit-count FX)</dt>709 <dd>710 <p></p></dd>711 <dt class="definition"><strong>procedure:</strong> (fxlength FX)</dt>712 <dd>713 <p></p></dd>714 <dt class="definition"><strong>procedure:</strong> (fxfirst-bit-set FX)</dt>715 <dd>716 <p></p></dd>717 <dt class="definition"><strong>procedure:</strong> (fxlast-bit-set FX)</dt>718 <dd>719 <p></p></dd>720 <dt class="definition"><strong>procedure:</strong> (fxbit-set? FX INDEX)</dt>721 <dd>722 <p></p></dd>723 <dt class="definition"><strong>procedure:</strong> (fxcopy-bit FX INDEX BIT)</dt>724 <dd>725 <p></p></dd>726 <dt class="definition"><strong>procedure:</strong> (fxbit-field FX START END)</dt>727 <dd>728 <p></p></dd>729 <dt class="definition"><strong>procedure:</strong> (fxcopy-bit-field FX-TO START END FX-FROM)</dt>730 <dd>731 <p></p></dd>732 <dt class="definition"><strong>procedure:</strong> (fxrotate-bit-field FX START END COUNT)</dt>733 <dd>734 <p></p></dd>735 <dt class="definition"><strong>procedure:</strong> (fxreverse-bit-field FX START END)</dt>736 <dd>737 <p></p></dd></div>738 <div class="subsection">739 <h4>Flonum Procedures</h4>740 <div class="section">741 <h3>Usage</h3>(require-extension flonum-extras)</div>742 <p>R6RS flonum functions.</p>743 <dt class="definition"><strong>procedure:</strong> (real->flonum VALUE)</dt>744 <dd>745 <p></p></dd>746 <dt class="definition"><strong>procedure:</strong> (fixnum->flonum VALUE)</dt>747 <dd>748 <p></p></dd>749 <dt class="definition"><strong>procedure:</strong> (fl=? FL ...)</dt>750 <dd>751 <p></p></dd>752 <dt class="definition"><strong>procedure:</strong> (fl<? FL ...)</dt>753 <dd>754 <p></p></dd>755 <dt class="definition"><strong>procedure:</strong> (fl>? FL ...)</dt>756 <dd>757 <p></p></dd>758 <dt class="definition"><strong>procedure:</strong> (fl<=? FL ...)</dt>759 <dd>760 <p></p></dd>761 <dt class="definition"><strong>procedure:</strong> (fl>=? FL ...)</dt>762 <dd>763 <p></p></dd>764 <dt class="definition"><strong>procedure:</strong> (flcompare FL1 FL2)</dt>765 <dd>766 <p></p></dd>767 <dt class="definition"><strong>procedure:</strong> (flinteger? FL)</dt>768 <dd>769 <p></p></dd>770 <dt class="definition"><strong>procedure:</strong> (flzero? FL)</dt>771 <dd>772 <p></p></dd>773 <dt class="definition"><strong>procedure:</strong> (flpositive? FL)</dt>774 <dd>775 <p></p></dd>776 <dt class="definition"><strong>procedure:</strong> (flnegative? FL)</dt>777 <dd>778 <p></p></dd>779 <dt class="definition"><strong>procedure:</strong> (flodd? FL)</dt>780 <dd>781 <p></p></dd>782 <dt class="definition"><strong>procedure:</strong> (fleven? FL)</dt>783 <dd>784 <p></p></dd>785 <dt class="definition"><strong>procedure:</strong> (flfinite? FL)</dt>786 <dd>787 <p></p></dd>788 <dt class="definition"><strong>procedure:</strong> (flinfinite? FL)</dt>789 <dd>790 <p></p></dd>791 <dt class="definition"><strong>procedure:</strong> (flnan? FL)</dt>792 <dd>793 <p></p></dd>794 <dt class="definition"><strong>procedure:</strong> (fl+ FL ...)</dt>795 <dd>796 <p></p></dd>797 <dt class="definition"><strong>procedure:</strong> (fl* FL ...)</dt>798 <dd>799 <p></p></dd>800 <dt class="definition"><strong>procedure:</strong> (fl- FL ...)</dt>801 <dd>802 <p></p></dd>803 <dt class="definition"><strong>procedure:</strong> (fl/ FL ...)</dt>804 <dd>805 <p></p></dd>806 <dt class="definition"><strong>procedure:</strong> (flmax FL ...)</dt>807 <dd>808 <p></p></dd>809 <dt class="definition"><strong>procedure:</strong> (flmin FL ...)</dt>810 <dd>811 <p></p></dd>812 <dt class="definition"><strong>procedure:</strong> (flmax-and-min FL ...)</dt>813 <dd>814 <p></p></dd>815 <dt class="definition"><strong>procedure:</strong> (flabs FL)</dt>816 <dd>817 <p></p></dd>818 <dt class="definition"><strong>procedure:</strong> (flfraction FL)</dt>819 <dd>820 <p></p></dd>821 <dt class="definition"><strong>procedure:</strong> (fltruncate FL)</dt>822 <dd>823 <p></p></dd>824 <dt class="definition"><strong>procedure:</strong> (flfloor FL)</dt>825 <dd>826 <p></p></dd>827 <dt class="definition"><strong>procedure:</strong> (flceiling FL)</dt>828 <dd>829 <p></p></dd>830 <dt class="definition"><strong>procedure:</strong> (flround FL)</dt>831 <dd>832 <p></p></dd>833 <dt class="definition"><strong>procedure:</strong> (fldiv FL-N FL-D)</dt>834 <dd>835 <p></p></dd>836 <dt class="definition"><strong>procedure:</strong> (flmod FL-N FL-D)</dt>837 <dd>838 <p></p></dd>839 <dt class="definition"><strong>procedure:</strong> (fldiv-and-mod FL-N FL-D)</dt>840 <dd>841 <p></p></dd>842 <dt class="definition"><strong>procedure:</strong> (fldiv0 FL-N FL-D)</dt>843 <dd>844 <p></p></dd>845 <dt class="definition"><strong>procedure:</strong> (flmod0 FL-N FL-D)</dt>846 <dd>847 <p></p></dd>848 <dt class="definition"><strong>procedure:</strong> (fldiv0-and-mod0 FL-N FL-D)</dt>849 <dd>850 <p></p></dd>851 <dt class="definition"><strong>procedure:</strong> (flexp FL)</dt>852 <dd>853 <p></p></dd>854 <dt class="definition"><strong>procedure:</strong> (fllog FL [BASE])</dt>855 <dd>856 <p></p></dd>857 <dt class="definition"><strong>procedure:</strong> (flsin FL)</dt>858 <dd>859 <p></p></dd>860 <dt class="definition"><strong>procedure:</strong> (flcos FL)</dt>861 <dd>862 <p></p></dd>863 <dt class="definition"><strong>procedure:</strong> (fltan FL)</dt>864 <dd>865 <p></p></dd>866 <dt class="definition"><strong>procedure:</strong> (flasin FL)</dt>867 <dd>868 <p></p></dd>869 <dt class="definition"><strong>procedure:</strong> (flacos FL)</dt>870 <dd>871 <p></p></dd>872 <dt class="definition"><strong>procedure:</strong> (flatan FL [FL2])</dt>873 <dd>874 <p></p></dd>875 <dt class="definition"><strong>procedure:</strong> (flsqrt FL)</dt>876 <dd>877 <p></p></dd>878 <dt class="definition"><strong>procedure:</strong> (flexpt FL EXP)</dt>879 <dd>880 <p></p></dd>881 <dt class="definition"><strong>procedure:</strong> (flnumerator FL)</dt>882 <dd>883 <p></p></dd>884 <dt class="definition"><strong>procedure:</strong> (fldenominator FL)</dt>885 <dd>886 <p></p></dd></div>887 <div class="subsection">888 <h4>Bitwise Procedures</h4>889 <div class="section">890 <h3>Usage</h3>(require-extension bitwise-extras)</div>891 <p>R6RS bitwise functions.</p>892 <p>Unchecked variants of the following procedures are supplied, named as the checked version but with a "%" prefix.</p>893 <dt class="definition"><strong>procedure:</strong> (pow2log2 VALUE)</dt>894 <dd>895 <p>Returns <code>2 ** log2 (<tt>VALUE</tt>)</code>.</p></dd>896 <dt class="definition"><strong>procedure:</strong> (boolean->bit OBJECT)</dt>897 <dd>898 <p>Returns <code>1</code> for truth values and <code>0</code> for false or zero.</p></dd>899 <dt class="definition"><strong>procedure:</strong> (bitwise-if MASK TRUE FALSE)</dt>900 <dd>901 <p>Merge under mask.</p></dd>902 <dt class="definition"><strong>procedure:</strong> (bitwise-if-not MASK TRUE FALSE)</dt>903 <dd>904 <p>Merge under not mask.</p></dd>905 <dt class="definition"><strong>procedure:</strong> (bitwise-test? VALUE1 VALUE2)</dt>906 <dd>907 <p>Any bits set in both <tt>VALUE1</tt> and <tt>VALUE2</tt>?</p></dd>908 <dt class="definition"><strong>procedure:</strong> (bitwise-bit-count VALUE)</dt>909 <dd>910 <p>Count of set bits.</p></dd>911 <dt class="definition"><strong>procedure:</strong> (bitwise-length VALUE)</dt>912 <dd>913 <p>Minimum number of bits to represent.</p></dd>914 <dt class="definition"><strong>procedure:</strong> (bitwise-first-bit-set VALUE)</dt>915 <dd>916 <p>Least significant bit set.</p></dd>917 <dt class="definition"><strong>procedure:</strong> (bitwise-last-bit-set VALUE)</dt>918 <dd>919 <p>Most significant bit set.</p></dd>920 <dt class="definition"><strong>procedure:</strong> (bitwise-bit-set? VALUE INDEX)</dt>921 <dd>922 <p>Specific bit set?</p></dd>923 <dt class="definition"><strong>procedure:</strong> (bitwise-copy-bit TO START BIT)</dt>924 <dd>925 <p>Set bit.</p></dd>926 <dt class="definition"><strong>procedure:</strong> (bitwise-bit-field VALUE START END)</dt>927 <dd>928 <p>Get bits.</p></dd>929 <dt class="definition"><strong>procedure:</strong> (bitwise-copy-bit-field TO START END FROM)</dt>930 <dd>931 <p>Set bits.</p></dd>932 <dt class="definition"><strong>procedure:</strong> (bitwise-rotate-bit-field VALUE START END COUNT)</dt>933 <dd>934 <p>Rotate bits.</p></dd>935 <dt class="definition"><strong>procedure:</strong> (bitwise-reverse VALUE COUNT)</dt>936 <dd>937 <p>Reverse low-order bits.</p></dd>938 <dt class="definition"><strong>procedure:</strong> (bitwise-reverse-bit-field VALUE START END)</dt>939 <dd>940 <p>Reverse bits.</p></dd>941 <dt class="definition"><strong>procedure:</strong> (bitwise-list->integer LIST)</dt>942 <dd>943 <p>Converts list of boolean, least-significant to most-significant, to integer.</p></dd>944 <dt class="definition"><strong>procedure:</strong> (bitwise-integer->list VALUE [LENGTH])</dt>945 <dd>946 <p>Converts integer to list of boolean, least-significant to most-significant.</p></dd>947 <dt class="definition"><strong>procedure:</strong> (bitwise-arithmetic-shift VALUE DIRECTIONAL-AMOUNT)</dt>948 <dd>949 <p><code>(arithmetic-shift VALUE DIRECTIONAL-AMOUNT)</code></p></dd>950 <dt class="definition"><strong>procedure:</strong> (bitwise-arithmetic-shift-left VALUE AMOUNT)</dt>951 <dd>952 <p><code>(arithmetic-shift VALUE AMOUNT)</code></p></dd>953 <dt class="definition"><strong>procedure:</strong> (bitwise-arithmetic-shift-right VALUE AMOUNT)</dt>954 <dd>955 <p><code>(arithmetic-shift VALUE (- AMOUNT))</code></p></dd></div></div>956 <div class="section">957 <h3>Version</h3>958 <ul>959 <li>1.11 Better argument checking. [Kon Lovett]</li>960 <li>1.10 Cygwin compile fix. Added "fixnum/flonum/bitwise-extras". Removed "count-set-bits" & "count-unset-bits". [Kon Lovett]</li>961 <li>1.903 Added C int & float types. [Kon Lovett]</li>962 <li>1.9.2 Added log1p (approx.) for Windows, scalbn. Native log2 for linux/macosx/bsd. [Kon Lovett]</li>963 <li>1.9.1 Added integer-log-base2, count-set-bits, count-unset-bits [Kon Lovett]</li>964 <li>1.9 Changed conditional compilation [Kon Lovett]</li>965 <li>1.8 fixes in setup script and .meta file</li>966 <li>1.7 installs mathh-constants.scm in include path [felix]</li>967 <li>1.6 make-log/base [Kon Lovett]</li>968 <li>1.5 fpclassify, fpclass, fxlog2 [Kon Lovett]</li>969 <li>1.4 Added some limits [Kon Lovett]</li>970 <li>1.3 Removed fpclassify (for now), tgamma -> gamma [Kon Lovett]</li>971 <li>1.2 Added missing setup-header [felix]</li>972 <li>1.1 More math.h functions & constants [Kon Lovett]</li>973 <li>1.0 Initial release</li></ul></div>974 <div class="section">975 <h3>License</h3>976 <pre>This code is in the public domain</pre></div></div>977 <div id="footer">978 <hr /><a href="index.html">< Egg index</a>979 <div id="revision-history">$Revision$ $Date$</div> </div></body></html>
Note: See TracChangeset
for help on using the changeset viewer.