mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Reordered the extensions entries for Mathematica
Added examples for newly introduces file extensions
This commit is contained in:
@@ -1761,10 +1761,10 @@ Mathematica:
|
|||||||
- .cdf
|
- .cdf
|
||||||
- .m
|
- .m
|
||||||
- .ma
|
- .ma
|
||||||
|
- .mt
|
||||||
- .nb
|
- .nb
|
||||||
- .nbp
|
- .nbp
|
||||||
- .wl
|
- .wl
|
||||||
- .mt
|
|
||||||
- .wlt
|
- .wlt
|
||||||
aliases:
|
aliases:
|
||||||
- mma
|
- mma
|
||||||
|
|||||||
150
samples/Mathematica/Predicates.wl
Normal file
150
samples/Mathematica/Predicates.wl
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
(* ::Package:: *)
|
||||||
|
|
||||||
|
BeginPackage["Predicates`"];
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Title:: *)
|
||||||
|
(*Predicates*)
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Section::Closed:: *)
|
||||||
|
(*Fuzzy Logic*)
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Subsection:: *)
|
||||||
|
(*Documentation*)
|
||||||
|
|
||||||
|
|
||||||
|
PossiblyTrueQ::usage="Returns True if the argument is not definitely False.";
|
||||||
|
PossiblyFalseQ::usage="Returns True if the argument is not definitely True.";
|
||||||
|
PossiblyNonzeroQ::usage="Returns True if and only if its argument is not definitely zero.";
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Subsection:: *)
|
||||||
|
(*Implimentation*)
|
||||||
|
|
||||||
|
|
||||||
|
Begin["`Private`"];
|
||||||
|
|
||||||
|
|
||||||
|
PossiblyTrueQ[expr_]:=\[Not]TrueQ[\[Not]expr]
|
||||||
|
|
||||||
|
|
||||||
|
PossiblyFalseQ[expr_]:=\[Not]TrueQ[expr]
|
||||||
|
|
||||||
|
|
||||||
|
End[];
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Section::Closed:: *)
|
||||||
|
(*Numbers and Lists*)
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Subsection:: *)
|
||||||
|
(*Documentation*)
|
||||||
|
|
||||||
|
|
||||||
|
AnyQ::usage="Given a predicate and a list, retuns True if and only if that predicate is True for at least one element of the list.";
|
||||||
|
AnyElementQ::usage="Returns True if cond matches any element of L.";
|
||||||
|
AllQ::usage="Given a predicate and a list, retuns True if and only if that predicate is True for all elements of the list.";
|
||||||
|
AllElementQ::usage="Returns True if cond matches any element of L.";
|
||||||
|
|
||||||
|
|
||||||
|
AnyNonzeroQ::usage="Returns True if L is a list such that at least one element is definitely not zero.";
|
||||||
|
AnyPossiblyNonzeroQ::usage="Returns True if expr is a list such that at least one element is not definitely zero.";
|
||||||
|
|
||||||
|
|
||||||
|
RealQ::usage="Returns True if and only if the argument is a real number";
|
||||||
|
PositiveQ::usage="Returns True if and only if the argument is a positive real number";
|
||||||
|
NonnegativeQ::usage="Returns True if and only if the argument is a non-negative real number";
|
||||||
|
PositiveIntegerQ::usage="Returns True if and only if the argument is a positive integer";
|
||||||
|
NonnegativeIntegerQ::usage="Returns True if and only if the argument is a non-negative integer";
|
||||||
|
|
||||||
|
|
||||||
|
IntegerListQ::usage="Returns True if and only if the input is a list of integers.";
|
||||||
|
PositiveIntegerListQ::usage="Returns True if and only if the input is a list of positive integers.";
|
||||||
|
NonnegativeIntegerListQ::usage="Returns True if and only if the input is a list of non-negative integers.";
|
||||||
|
IntegerOrListQ::usage="Returns True if and only if the input is a list of integers or an integer.";
|
||||||
|
PositiveIntegerOrListQ::usage="Returns True if and only if the input is a list of positive integers or a positive integer.";
|
||||||
|
NonnegativeIntegerOrListQ::usage="Returns True if and only if the input is a list of positive integers or a positive integer.";
|
||||||
|
|
||||||
|
|
||||||
|
SymbolQ::usage="Returns True if argument is an unassigned symbol.";
|
||||||
|
SymbolOrNumberQ::usage="Returns True if argument is a number of has head 'Symbol'";
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Subsection:: *)
|
||||||
|
(*Implimentation*)
|
||||||
|
|
||||||
|
|
||||||
|
Begin["`Private`"];
|
||||||
|
|
||||||
|
|
||||||
|
AnyQ[cond_, L_] := Fold[Or, False, cond /@ L]
|
||||||
|
|
||||||
|
|
||||||
|
AnyElementQ[cond_,L_]:=AnyQ[cond,Flatten[L]]
|
||||||
|
|
||||||
|
|
||||||
|
AllQ[cond_, L_] := Fold[And, True, cond /@ L]
|
||||||
|
|
||||||
|
|
||||||
|
AllElementQ[cond_, L_] := Fold[And, True, cond /@ L]
|
||||||
|
|
||||||
|
|
||||||
|
AnyNonzeroQ[L_]:=AnyElementQ[#!=0&,L]
|
||||||
|
|
||||||
|
|
||||||
|
PossiblyNonzeroQ[expr_]:=PossiblyTrueQ[expr!=0]
|
||||||
|
|
||||||
|
|
||||||
|
AnyPossiblyNonzeroQ[expr_]:=AnyElementQ[PossiblyNonzeroQ,expr]
|
||||||
|
|
||||||
|
|
||||||
|
RealQ[n_]:=TrueQ[Im[n]==0];
|
||||||
|
|
||||||
|
|
||||||
|
PositiveQ[n_]:=Positive[n];
|
||||||
|
|
||||||
|
|
||||||
|
PositiveIntegerQ[n_]:=PositiveQ[n]\[And]IntegerQ[n];
|
||||||
|
|
||||||
|
|
||||||
|
NonnegativeQ[n_]:=TrueQ[RealQ[n]&&n>=0];
|
||||||
|
|
||||||
|
|
||||||
|
NonnegativeIntegerQ[n_]:=NonnegativeQ[n]\[And]IntegerQ[n];
|
||||||
|
|
||||||
|
|
||||||
|
IntegerListQ[input_]:=ListQ[input]&&Not[MemberQ[IntegerQ/@input,False]];
|
||||||
|
|
||||||
|
|
||||||
|
IntegerOrListQ[input_]:=IntegerListQ[input]||IntegerQ[input];
|
||||||
|
|
||||||
|
|
||||||
|
PositiveIntegerListQ[input_]:=IntegerListQ[input]&&Not[MemberQ[Positive[input],False]];
|
||||||
|
|
||||||
|
|
||||||
|
PositiveIntegerOrListQ[input_]:=PositiveIntegerListQ[input]||PositiveIntegerQ[input];
|
||||||
|
|
||||||
|
|
||||||
|
NonnegativeIntegerListQ[input_]:=IntegerListQ[input]&&Not[MemberQ[NonnegativeIntegerQ[input],False]];
|
||||||
|
|
||||||
|
|
||||||
|
NonnegativeIntegerOrListQ[input_]:=NonnegativeIntegerListQ[input]||NonnegativeIntegerQ[input];
|
||||||
|
|
||||||
|
|
||||||
|
SymbolQ[a_]:=Head[a]===Symbol;
|
||||||
|
|
||||||
|
|
||||||
|
SymbolOrNumberQ[a_]:=NumericQ[a]||Head[a]===Symbol;
|
||||||
|
|
||||||
|
|
||||||
|
End[];
|
||||||
|
|
||||||
|
|
||||||
|
(* ::Section:: *)
|
||||||
|
(*Epilogue*)
|
||||||
|
|
||||||
|
|
||||||
|
EndPackage[];
|
||||||
17
samples/Mathematica/UnitTest.mt
Normal file
17
samples/Mathematica/UnitTest.mt
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
BeginTestSection["Untitled-5"]
|
||||||
|
|
||||||
|
VerificationTest[(* 1 *)
|
||||||
|
RotationMatrix[phi]
|
||||||
|
,
|
||||||
|
List[List[Cos[phi], Times[-1, Sin[phi]]], List[Sin[phi], Cos[phi]]]
|
||||||
|
]
|
||||||
|
|
||||||
|
VerificationTest[(* 2 *)
|
||||||
|
Times[1, Power[Plus[a, Times[-1, a]], -1]]
|
||||||
|
,
|
||||||
|
ComplexInfinity
|
||||||
|
,
|
||||||
|
{Power::infy}
|
||||||
|
]
|
||||||
|
|
||||||
|
EndTestSection[]
|
||||||
Reference in New Issue
Block a user