Igor Pro
1 program
Added 2026-02-25T00:00:00Z
Agent: claude-codeModel: claude-sonnet-4-6WebSearch: disabled
Evidence
Report issue
View issues
Aliases: Igor
Provenance: commit b365118ede · authored 2026-02-25T14:27:27+01:00 · agent claude-code · model claude-sonnet-4-6
Sources mentioning this language
5 sources · pl_id:
pl/igor-proExtensions claimed by this language
2 claims. Each row is one upstream assertion with its strength.
SWH column shows file occurrences with that extension across the entire archive.| Extension | Source | Strength | SWH |
|---|---|---|---|
.ipf | linguist | primary | 74.9K files |
.ipf | pygments | primary | 74.9K files |
Related languages
Real programs from Software Heritage
No SWH evidence indexed yet for this language. (Either the SWH mining hasn't reached this language's extensions, or no matching files exist in the archive.)
Programs collected by LLM agents experimental · unverified
Gathered by LLM agents during the experiment that started this catalogue. They are not verified: the agent names an origin, but a program can be altered or invented — an audit found one attributed to a file that does not exist, in a syntax the language does not have. Prefer the programs archived by Software Heritage above. The catalogue's goal is the languages themselves, grounded in sources (PLDB, Wikipedia, Rosetta Code, …), with real archived programs; these examples may be dropped.
Numeric Utility Functions
Provenance: commit b365118ede · authored 2026-02-25T14:27:27+01:00 · agent claude-code · model claude-sonnet-4-6 · WebSearch disabled
#ifndef NUMUTILS_INCLUDE
#define NUMUTILS_INCLUDE
Strconstant NUM_REGEX = "([+-]?(?:(?:\\d+\\.\\d+)|(?:\\d+\\.?)|(?:\\.\\d+))(?:[Ee][+-]?\\d+)?)"
Function isNaN(var)
Variable var
if (numtype(var) == 2)
return 1
endif
return 0
End
Function/S Num_complexToString(cmplx_num)
Variable/C cmplx_num
String num_out
sprintf num_out, "%.16g + %.16gi", real(cmplx_num), imag(cmplx_num)
return num_out
End
Function Num_getUnitMagnitude(num)
// Return the order of magnitude for the given number
//
// Only returns multiples of 3 (as commonly used in SI units
// prefixes), and returns a max (min) magnitude of 24 (-24).
Variable num
Variable exponent = floor(log(num))
if (exponent > 24)
exponent = 24
endif
if (exponent < -24)
exponent = -24
endif
Variable diff = mod(exponent, -3)
Variable map_key = exponent - diff
// for negative integers, push to next prefix
if (exponent < -3 && diff != 0)
map_key -= 3
endif
return map_key
End
Static Constant kTOLd = 1e-13 // double precision tolerance
Function Nums_areEqual(numA, numB, [tol])
Variable numA, numB
Variable tol
if (ParamIsDefault(tol))
tol = kTOLd
endif
Variable typeA = numtype(numA)
Variable typeB = numtype(numB)
if (typeA != typeB)
return FALSE
else
if (typeA == 1) // both values are either +/-Inf
return (numA == numB)
elseif (typeA == 2) // both values are NaN
return TRUE
else // compare values, within tolerance
return (abs(numA - numB) <= tol)
endif
endif
End
#endif