Yacas plugins

Plugins are dynamic libraries loaded at runtime. They are normally used to provide access to external libraries or applications. Yacas comes with a few plugins, such as the GSL plugin. This chapter contains the documentation generated for each plugin.


The file scanner plugin

The file scanner plugin allows the programmer to scan files and directories in the file system. It is currently supported for Unix-like and Windows systems.

To use the plugin, the plugin has to be loaded through:

Use("filescanner");

The file scanner plugin offers one principal new function; ScanFiles. The prototype for this function is:

ScanFiles(BaseDirectory,SubDirectory,CallFunction);

The arguments:

The call-back function should accept three arguments: the base directory, the file name and a boolean specifying if the file is a sub-directory.

The full file name can be obtained by concatenating the file name to the base directory. If the file is a sub-directory, the file name can be used as the name of the sub-directory in subsequent recursive calls to ScanFiles.

For example, the following definition of the function tst can be used as a third argument to ScanFiles, in order to scan directories recursively, printing file names of files in the directories.

// File, print
10 # tst(_a,_b,False) <-- Echo("File: ",b)
// Directory, scan recursively
20 # tst(_a,_b,True) <-- ScanFiles(a,b,"tst")

Then, if the Yacas source is in /Users/ayalpink/yacas/, one can call:

ScanFiles("/Users/someone/yacas/","plugins","tst")

The first lines of output (in Yacas version 1.0.55) is:

File: plugins/.cvsignore
File: plugins/CVS/Entries
File: plugins/CVS/Repository
File: plugins/CVS/Root
File: plugins/doc.txt

Here the scan went into the CVS sub-directory. Appending these file names to the base directory, /Users/someone/yacas/, would give the full path to the file.


The regular expressions plugin

This plugin allows for text processing using regular expressions. The GPL'ed package pcre is included for this purpose (pcre stands for Perl compatible regular expressions).

To use the plugin, the plugin has to be loaded through:

Use("pcre");

The pcre plugin offers two principal functions: PcreLexer and PcreNextToken. PcreLexer sets up and initializes the tokenizer to scan for a set of regular expressions. A call to PcreNextToken returns the result of the scan in the current file, starting from the current position.

PcreLexer does not interfere with normal reading of a file. When normal read calls are made, the default tokenizer is used. The tokenizer set up by PcreLexer is only used when PcreNextToken is called.

The syntax for PcreLexer is:

PcreLexer(tokens);

The argument tokens is a list of token definitions. A token definition in turn is a list, with the first element a string containing the regular expression, and the second containing an atom that can describe the type of the token (for easy recognition later).

Calling PcreNextToken() will then return the first matching token from the current input.

The following example sets up the tokenizer to recognize either an integer, or a word consisting only of lowercase letters.

In> DllLoad("pcre")
Out> True
In> PcreLexer({{"[0-9]+",Integer},{"[a-z]+",Word}})
Out> True
In> FromString("123abc")PcreNextToken()
Out> {"123",Integer}
In> FromString("===abc")PcreNextToken()
Out> {"abc",Word}


The GSL library plugin

This plugin provides access to functions from the GNU Scientific Library (GSL). See http://www.gnu.org/software/gsl/ for more information and for documentation on specific library functions.

Function gsl'acosh(x), calls double gsl_acosh (double x)

Function gsl'asinh(x), calls double gsl_asinh (double x)

Function gsl'atanh(x), calls double gsl_atanh (double x)

Function gsl'coerce'double(x), calls double gsl_coerce_double (double x)

Function gsl'expm1(x), calls double gsl_expm1 (double x)

Function gsl'fdiv(x,y), calls double gsl_fdiv (double x, double y)

Function gsl'hypot(x,y), calls double gsl_hypot (double x, double y)

Function gsl'ldexp(x,e), calls double gsl_ldexp (double x, int e)

Function gsl'log1p(x), calls double gsl_log1p (double x)

Function gsl'max(a,b), calls double gsl_max (double a, double b)

Function gsl'min(a,b), calls double gsl_min (double a, double b)

Function gsl'pow'2(x), calls double gsl_pow_2 (double x)

Function gsl'pow'3(x), calls double gsl_pow_3 (double x)

Function gsl'pow'4(x), calls double gsl_pow_4 (double x)

Function gsl'pow'5(x), calls double gsl_pow_5 (double x)

Function gsl'pow'6(x), calls double gsl_pow_6 (double x)

Function gsl'pow'7(x), calls double gsl_pow_7 (double x)

Function gsl'pow'8(x), calls double gsl_pow_8 (double x)

Function gsl'pow'9(x), calls double gsl_pow_9 (double x)

Function gsl'pow'int(x,n), calls double gsl_pow_int (double x, int n)

Function gsl'ran'bernoulli'pdf(k,p), calls double gsl_ran_bernoulli_pdf (int k, double p)

Function gsl'ran'beta'pdf(x,a,b), calls double gsl_ran_beta_pdf (double x, double a, double b)

Function gsl'ran'binomial'pdf(k,p,n), calls double gsl_ran_binomial_pdf (int k, double p, int n)

Function gsl'ran'bivariate'gaussian'pdf(x,y,sigma_x,sigma_y,rho), calls double gsl_ran_bivariate_gaussian_pdf (double x, double y, double sigma_x, double sigma_y, double rho)

Function gsl'ran'cauchy'pdf(x,a), calls double gsl_ran_cauchy_pdf (double x, double a)

Function gsl'ran'chisq'pdf(x,nu), calls double gsl_ran_chisq_pdf (double x, double nu)

Function gsl'ran'erlang'pdf(x,a,n), calls double gsl_ran_erlang_pdf (double x, double a, double n)

Function gsl'ran'exponential'pdf(x,mu), calls double gsl_ran_exponential_pdf (double x, double mu)

Function gsl'ran'exppow'pdf(x,a,b), calls double gsl_ran_exppow_pdf (double x, double a, double b)

Function gsl'ran'fdist'pdf(x,nu1,nu2), calls double gsl_ran_fdist_pdf (double x, double nu1, double nu2)

Function gsl'ran'flat'pdf(x,a,b), calls double gsl_ran_flat_pdf (double x, double a, double b)

Function gsl'ran'gamma'pdf(x,a,b), calls double gsl_ran_gamma_pdf (double x, double a, double b)

Function gsl'ran'gaussian'pdf(x,sigma), calls double gsl_ran_gaussian_pdf (double x, double sigma)

Function gsl'ran'gaussian'tail'pdf(x,a,sigma), calls double gsl_ran_gaussian_tail_pdf (double x, double a, double sigma)

Function gsl'ran'geometric'pdf(k,p), calls double gsl_ran_geometric_pdf (int k, double p)

Function gsl'ran'gumbel1'pdf(x,a,b), calls double gsl_ran_gumbel1_pdf (double x, double a, double b)

Function gsl'ran'gumbel2'pdf(x,a,b), calls double gsl_ran_gumbel2_pdf (double x, double a, double b)

Function gsl'ran'hypergeometric'pdf(k,n1,n2,t), calls double gsl_ran_hypergeometric_pdf (int k, int n1, int n2, int t)

Function gsl'ran'landau'pdf(x), calls double gsl_ran_landau_pdf (double x)

Function gsl'ran'laplace'pdf(x,a), calls double gsl_ran_laplace_pdf (double x, double a)

Function gsl'ran'logarithmic'pdf(k,p), calls double gsl_ran_logarithmic_pdf (int k, double p)

Function gsl'ran'logistic'pdf(x,a), calls double gsl_ran_logistic_pdf (double x, double a)

Function gsl'ran'lognormal'pdf(x,zeta,sigma), calls double gsl_ran_lognormal_pdf (double x, double zeta, double sigma)

Function gsl'ran'negative'binomial'pdf(k,p,n), calls double gsl_ran_negative_binomial_pdf (int k, double p, double n)

Function gsl'ran'pareto'pdf(x,a,b), calls double gsl_ran_pareto_pdf (double x, double a, double b)

Function gsl'ran'pascal'pdf(k,p,n), calls double gsl_ran_pascal_pdf (int k, double p, int n)

Function gsl'ran'poisson'pdf(k,mu), calls double gsl_ran_poisson_pdf (int k, double mu)

Function gsl'ran'rayleigh'pdf(x,sigma), calls double gsl_ran_rayleigh_pdf (double x, double sigma)

Function gsl'ran'rayleigh'tail'pdf(x,a,sigma), calls double gsl_ran_rayleigh_tail_pdf (double x, double a, double sigma)

Function gsl'ran'tdist'pdf(x,nu), calls double gsl_ran_tdist_pdf (double x, double nu)

Function gsl'ran'ugaussian'pdf(x), calls double gsl_ran_ugaussian_pdf (double x)

Function gsl'ran'ugaussian'tail'pdf(x,a), calls double gsl_ran_ugaussian_tail_pdf (double x, double a)

Function gsl'ran'weibull'pdf(x,a,b), calls double gsl_ran_weibull_pdf (double x, double a, double b)

Function gsl'sf'airy'Ai(x,mode), calls double gsl_sf_airy_Ai (double x, int mode)

Function gsl'sf'airy'Ai'deriv(x,mode), calls double gsl_sf_airy_Ai_deriv (double x, int mode)

Function gsl'sf'airy'Ai'deriv'scaled(x,mode), calls double gsl_sf_airy_Ai_deriv_scaled (double x, int mode)

Function gsl'sf'airy'Ai'scaled(x,mode), calls double gsl_sf_airy_Ai_scaled (double x, int mode)

Function gsl'sf'airy'Bi(x,mode), calls double gsl_sf_airy_Bi (double x, int mode)

Function gsl'sf'airy'Bi'deriv(x,mode), calls double gsl_sf_airy_Bi_deriv (double x, int mode)

Function gsl'sf'airy'Bi'deriv'scaled(x,mode), calls double gsl_sf_airy_Bi_deriv_scaled (double x, int mode)

Function gsl'sf'airy'Bi'scaled(x,mode), calls double gsl_sf_airy_Bi_scaled (double x, int mode)

Function gsl'sf'airy'zero'Ai(s), calls double gsl_sf_airy_zero_Ai (int s)

Function gsl'sf'airy'zero'Ai'deriv(s), calls double gsl_sf_airy_zero_Ai_deriv (int s)

Function gsl'sf'airy'zero'Bi(s), calls double gsl_sf_airy_zero_Bi (int s)

Function gsl'sf'airy'zero'Bi'deriv(s), calls double gsl_sf_airy_zero_Bi_deriv (int s)

Function gsl'sf'angle'restrict'pos(theta), calls double gsl_sf_angle_restrict_pos (double theta)

Function gsl'sf'angle'restrict'symm(theta), calls double gsl_sf_angle_restrict_symm (double theta)

Function gsl'sf'atanint(x), calls double gsl_sf_atanint (double x)

Function gsl'sf'bessel'I0(x), calls double gsl_sf_bessel_I0 (double x)

Function gsl'sf'bessel'I0'scaled(x), calls double gsl_sf_bessel_I0_scaled (double x)

Function gsl'sf'bessel'i0'scaled(x), calls double gsl_sf_bessel_i0_scaled (double x)

Function gsl'sf'bessel'I1(x), calls double gsl_sf_bessel_I1 (double x)

Function gsl'sf'bessel'I1'scaled(x), calls double gsl_sf_bessel_I1_scaled (double x)

Function gsl'sf'bessel'i1'scaled(x), calls double gsl_sf_bessel_i1_scaled (double x)

Function gsl'sf'bessel'i2'scaled(x), calls double gsl_sf_bessel_i2_scaled (double x)

Function gsl'sf'bessel'il'scaled(l,x), calls double gsl_sf_bessel_il_scaled (int l, double x)

Function gsl'sf'bessel'In(n,x), calls double gsl_sf_bessel_In (int n, double x)

Function gsl'sf'bessel'Inu(nu,x), calls double gsl_sf_bessel_Inu (double nu, double x)

Function gsl'sf'bessel'Inu'scaled(nu,x), calls double gsl_sf_bessel_Inu_scaled (double nu, double x)

Function gsl'sf'bessel'In'scaled(n,x), calls double gsl_sf_bessel_In_scaled (int n, double x)

Function gsl'sf'bessel'J0(x), calls double gsl_sf_bessel_J0 (double x)

Function gsl'sf'bessel'j0(x), calls double gsl_sf_bessel_j0 (double x)

Function gsl'sf'bessel'J1(x), calls double gsl_sf_bessel_J1 (double x)

Function gsl'sf'bessel'j1(x), calls double gsl_sf_bessel_j1 (double x)

Function gsl'sf'bessel'j2(x), calls double gsl_sf_bessel_j2 (double x)

Function gsl'sf'bessel'jl(l,x), calls double gsl_sf_bessel_jl (int l, double x)

Function gsl'sf'bessel'Jn(n,x), calls double gsl_sf_bessel_Jn (int n, double x)

Function gsl'sf'bessel'Jnu(nu,x), calls double gsl_sf_bessel_Jnu (double nu, double x)

Function gsl'sf'bessel'K0(x), calls double gsl_sf_bessel_K0 (double x)

Function gsl'sf'bessel'K0'scaled(x), calls double gsl_sf_bessel_K0_scaled (double x)

Function gsl'sf'bessel'k0'scaled(x), calls double gsl_sf_bessel_k0_scaled (double x)

Function gsl'sf'bessel'K1(x), calls double gsl_sf_bessel_K1 (double x)

Function gsl'sf'bessel'K1'scaled(x), calls double gsl_sf_bessel_K1_scaled (double x)

Function gsl'sf'bessel'k1'scaled(x), calls double gsl_sf_bessel_k1_scaled (double x)

Function gsl'sf'bessel'k2'scaled(x), calls double gsl_sf_bessel_k2_scaled (double x)

Function gsl'sf'bessel'kl'scaled(l,x), calls double gsl_sf_bessel_kl_scaled (int l, double x)

Function gsl'sf'bessel'Kn(n,x), calls double gsl_sf_bessel_Kn (int n, double x)

Function gsl'sf'bessel'Knu(nu,x), calls double gsl_sf_bessel_Knu (double nu, double x)

Function gsl'sf'bessel'Knu'scaled(nu,x), calls double gsl_sf_bessel_Knu_scaled (double nu, double x)

Function gsl'sf'bessel'Kn'scaled(n,x), calls double gsl_sf_bessel_Kn_scaled (int n, double x)

Function gsl'sf'bessel'lnKnu(nu,x), calls double gsl_sf_bessel_lnKnu (double nu, double x)

Function gsl'sf'bessel'Y0(x), calls double gsl_sf_bessel_Y0 (double x)

Function gsl'sf'bessel'y0(x), calls double gsl_sf_bessel_y0 (double x)

Function gsl'sf'bessel'Y1(x), calls double gsl_sf_bessel_Y1 (double x)

Function gsl'sf'bessel'y1(x), calls double gsl_sf_bessel_y1 (double x)

Function gsl'sf'bessel'y2(x), calls double gsl_sf_bessel_y2 (double x)

Function gsl'sf'bessel'yl(l,x), calls double gsl_sf_bessel_yl (int l, double x)

Function gsl'sf'bessel'Yn(n,x), calls double gsl_sf_bessel_Yn (int n, double x)

Function gsl'sf'bessel'Ynu(nu,x), calls double gsl_sf_bessel_Ynu (double nu, double x)

Function gsl'sf'bessel'zero'J0(s), calls double gsl_sf_bessel_zero_J0 (int s)

Function gsl'sf'bessel'zero'J1(s), calls double gsl_sf_bessel_zero_J1 (int s)

Function gsl'sf'bessel'zero'Jnu(nu,s), calls double gsl_sf_bessel_zero_Jnu (double nu, int s)

Function gsl'sf'beta(a,b), calls double gsl_sf_beta (double a, double b)

Function gsl'sf'beta'inc(a,b,x), calls double gsl_sf_beta_inc (double a, double b, double x)

Function gsl'sf'Chi(x), calls double gsl_sf_Chi (double x)

Function gsl'sf'choose(n,m), calls double gsl_sf_choose (int n, int m)

Function gsl'sf'Ci(x), calls double gsl_sf_Ci (double x)

Function gsl'sf'clausen(x), calls double gsl_sf_clausen (double x)

Function gsl'sf'conicalP'0(lambda,x), calls double gsl_sf_conicalP_0 (double lambda, double x)

Function gsl'sf'conicalP'1(lambda,x), calls double gsl_sf_conicalP_1 (double lambda, double x)

Function gsl'sf'conicalP'cyl'reg(m,lambda,x), calls double gsl_sf_conicalP_cyl_reg (int m, double lambda, double x)

Function gsl'sf'conicalP'half(lambda,x), calls double gsl_sf_conicalP_half (double lambda, double x)

Function gsl'sf'conicalP'mhalf(lambda,x), calls double gsl_sf_conicalP_mhalf (double lambda, double x)

Function gsl'sf'conicalP'sph'reg(l,lambda,x), calls double gsl_sf_conicalP_sph_reg (int l, double lambda, double x)

Function gsl'sf'cos(x), calls double gsl_sf_cos (double x)

Function gsl'sf'dawson(x), calls double gsl_sf_dawson (double x)

Function gsl'sf'debye'1(x), calls double gsl_sf_debye_1 (double x)

Function gsl'sf'debye'2(x), calls double gsl_sf_debye_2 (double x)

Function gsl'sf'debye'3(x), calls double gsl_sf_debye_3 (double x)

Function gsl'sf'debye'4(x), calls double gsl_sf_debye_4 (double x)

Function gsl'sf'dilog(x), calls double gsl_sf_dilog (double x)

Function gsl'sf'doublefact(n), calls double gsl_sf_doublefact (int n)

Function gsl'sf'ellint'D(phi,k,n,mode), calls double gsl_sf_ellint_D (double phi, double k, double n, int mode)

Function gsl'sf'ellint'E(phi,k,mode), calls double gsl_sf_ellint_E (double phi, double k, int mode)

Function gsl'sf'ellint'Ecomp(k,mode), calls double gsl_sf_ellint_Ecomp (double k, int mode)

Function gsl'sf'ellint'F(phi,k,mode), calls double gsl_sf_ellint_F (double phi, double k, int mode)

Function gsl'sf'ellint'Kcomp(k,mode), calls double gsl_sf_ellint_Kcomp (double k, int mode)

Function gsl'sf'ellint'P(phi,k,n,mode), calls double gsl_sf_ellint_P (double phi, double k, double n, int mode)

Function gsl'sf'ellint'RC(x,y,mode), calls double gsl_sf_ellint_RC (double x, double y, int mode)

Function gsl'sf'ellint'RD(x,y,z,mode), calls double gsl_sf_ellint_RD (double x, double y, double z, int mode)

Function gsl'sf'ellint'RF(x,y,z,mode), calls double gsl_sf_ellint_RF (double x, double y, double z, int mode)

Function gsl'sf'ellint'RJ(x,y,z,p,mode), calls double gsl_sf_ellint_RJ (double x, double y, double z, double p, int mode)

Function gsl'sf'erf(x), calls double gsl_sf_erf (double x)

Function gsl'sf'erfc(x), calls double gsl_sf_erfc (double x)

Function gsl'sf'erf'Q(x), calls double gsl_sf_erf_Q (double x)

Function gsl'sf'erf'Z(x), calls double gsl_sf_erf_Z (double x)

Function gsl'sf'eta(s), calls double gsl_sf_eta (double s)

Function gsl'sf'eta'int(n), calls double gsl_sf_eta_int (int n)

Function gsl'sf'exp(x), calls double gsl_sf_exp (double x)

Function gsl'sf'expint'3(x), calls double gsl_sf_expint_3 (double x)

Function gsl'sf'expint'E1(x), calls double gsl_sf_expint_E1 (double x)

Function gsl'sf'expint'E1'scaled(x), calls double gsl_sf_expint_E1_scaled (double x)

Function gsl'sf'expint'E2(x), calls double gsl_sf_expint_E2 (double x)

Function gsl'sf'expint'E2'scaled(x), calls double gsl_sf_expint_E2_scaled (double x)

Function gsl'sf'expint'Ei(x), calls double gsl_sf_expint_Ei (double x)

Function gsl'sf'expint'Ei'scaled(x), calls double gsl_sf_expint_Ei_scaled (double x)

Function gsl'sf'expm1(x), calls double gsl_sf_expm1 (double x)

Function gsl'sf'exprel(x), calls double gsl_sf_exprel (double x)

Function gsl'sf'exprel'2(x), calls double gsl_sf_exprel_2 (double x)

Function gsl'sf'exprel'n(n,x), calls double gsl_sf_exprel_n (int n, double x)

Function gsl'sf'exp'mult(x,y), calls double gsl_sf_exp_mult (double x, double y)

Function gsl'sf'fact(n), calls double gsl_sf_fact (int n)

Function gsl'sf'fermi'dirac'0(x), calls double gsl_sf_fermi_dirac_0 (double x)

Function gsl'sf'fermi'dirac'1(x), calls double gsl_sf_fermi_dirac_1 (double x)

Function gsl'sf'fermi'dirac'2(x), calls double gsl_sf_fermi_dirac_2 (double x)

Function gsl'sf'fermi'dirac'3half(x), calls double gsl_sf_fermi_dirac_3half (double x)

Function gsl'sf'fermi'dirac'half(x), calls double gsl_sf_fermi_dirac_half (double x)

Function gsl'sf'fermi'dirac'inc'0(x,b), calls double gsl_sf_fermi_dirac_inc_0 (double x, double b)

Function gsl'sf'fermi'dirac'int(j,x), calls double gsl_sf_fermi_dirac_int (int j, double x)

Function gsl'sf'fermi'dirac'm1(x), calls double gsl_sf_fermi_dirac_m1 (double x)

Function gsl'sf'fermi'dirac'mhalf(x), calls double gsl_sf_fermi_dirac_mhalf (double x)

Function gsl'sf'gamma(x), calls double gsl_sf_gamma (double x)

Function gsl'sf'gammainv(x), calls double gsl_sf_gammainv (double x)

Function gsl'sf'gammastar(x), calls double gsl_sf_gammastar (double x)

Function gsl'sf'gamma'inc(a,x), calls double gsl_sf_gamma_inc (double a, double x)

Function gsl'sf'gamma'inc'P(a,x), calls double gsl_sf_gamma_inc_P (double a, double x)

Function gsl'sf'gamma'inc'Q(a,x), calls double gsl_sf_gamma_inc_Q (double a, double x)

Function gsl'sf'gegenpoly'1(lambda,x), calls double gsl_sf_gegenpoly_1 (double lambda, double x)

Function gsl'sf'gegenpoly'2(lambda,x), calls double gsl_sf_gegenpoly_2 (double lambda, double x)

Function gsl'sf'gegenpoly'3(lambda,x), calls double gsl_sf_gegenpoly_3 (double lambda, double x)

Function gsl'sf'gegenpoly'n(n,lambda,x), calls double gsl_sf_gegenpoly_n (int n, double lambda, double x)

Function gsl'sf'hazard(x), calls double gsl_sf_hazard (double x)

Function gsl'sf'hydrogenicR(n,l,Z,r), calls double gsl_sf_hydrogenicR (int n, int l, double Z, double r)

Function gsl'sf'hydrogenicR'1(Z,r), calls double gsl_sf_hydrogenicR_1 (double Z, double r)

Function gsl'sf'hyperg'0F1(c,x), calls double gsl_sf_hyperg_0F1 (double c, double x)

Function gsl'sf'hyperg'1F1(a,b,x), calls double gsl_sf_hyperg_1F1 (double a, double b, double x)

Function gsl'sf'hyperg'1F1'int(m,n,x), calls double gsl_sf_hyperg_1F1_int (int m, int n, double x)

Function gsl'sf'hyperg'2F0(a,b,x), calls double gsl_sf_hyperg_2F0 (double a, double b, double x)

Function gsl'sf'hyperg'2F1(a,b,c,x), calls double gsl_sf_hyperg_2F1 (double a, double b, double c, double x)

Function gsl'sf'hyperg'2F1'conj(aR,aI,c,x), calls double gsl_sf_hyperg_2F1_conj (double aR, double aI, double c, double x)

Function gsl'sf'hyperg'2F1'conj'renorm(aR,aI,c,x), calls double gsl_sf_hyperg_2F1_conj_renorm (double aR, double aI, double c, double x)

Function gsl'sf'hyperg'2F1'renorm(a,b,c,x), calls double gsl_sf_hyperg_2F1_renorm (double a, double b, double c, double x)

Function gsl'sf'hyperg'U(a,b,x), calls double gsl_sf_hyperg_U (double a, double b, double x)

Function gsl'sf'hyperg'U'int(m,n,x), calls double gsl_sf_hyperg_U_int (int m, int n, double x)

Function gsl'sf'hypot(x,y), calls double gsl_sf_hypot (double x, double y)

Function gsl'sf'hzeta(s,q), calls double gsl_sf_hzeta (double s, double q)

Function gsl'sf'laguerre'1(a,x), calls double gsl_sf_laguerre_1 (double a, double x)

Function gsl'sf'laguerre'2(a,x), calls double gsl_sf_laguerre_2 (double a, double x)

Function gsl'sf'laguerre'3(a,x), calls double gsl_sf_laguerre_3 (double a, double x)

Function gsl'sf'laguerre'n(n,a,x), calls double gsl_sf_laguerre_n (int n, double a, double x)

Function gsl'sf'lambert'W0(x), calls double gsl_sf_lambert_W0 (double x)

Function gsl'sf'lambert'Wm1(x), calls double gsl_sf_lambert_Wm1 (double x)

Function gsl'sf'legendre'H3d(l,lambda,eta), calls double gsl_sf_legendre_H3d (int l, double lambda, double eta)

Function gsl'sf'legendre'H3d'0(lambda,eta), calls double gsl_sf_legendre_H3d_0 (double lambda, double eta)

Function gsl'sf'legendre'H3d'1(lambda,eta), calls double gsl_sf_legendre_H3d_1 (double lambda, double eta)

Function gsl'sf'legendre'P1(x), calls double gsl_sf_legendre_P1 (double x)

Function gsl'sf'legendre'P2(x), calls double gsl_sf_legendre_P2 (double x)

Function gsl'sf'legendre'P3(x), calls double gsl_sf_legendre_P3 (double x)

Function gsl'sf'legendre'Pl(l,x), calls double gsl_sf_legendre_Pl (int l, double x)

Function gsl'sf'legendre'Plm(l,m,x), calls double gsl_sf_legendre_Plm (int l, int m, double x)

Function gsl'sf'legendre'Q0(x), calls double gsl_sf_legendre_Q0 (double x)

Function gsl'sf'legendre'Q1(x), calls double gsl_sf_legendre_Q1 (double x)

Function gsl'sf'legendre'Ql(l,x), calls double gsl_sf_legendre_Ql (int l, double x)

Function gsl'sf'legendre'sphPlm(l,m,x), calls double gsl_sf_legendre_sphPlm (int l, int m, double x)

Function gsl'sf'lnbeta(a,b), calls double gsl_sf_lnbeta (double a, double b)

Function gsl'sf'lnchoose(n,m), calls double gsl_sf_lnchoose (int n, int m)

Function gsl'sf'lncosh(x), calls double gsl_sf_lncosh (double x)

Function gsl'sf'lndoublefact(n), calls double gsl_sf_lndoublefact (int n)

Function gsl'sf'lnfact(n), calls double gsl_sf_lnfact (int n)

Function gsl'sf'lngamma(x), calls double gsl_sf_lngamma (double x)

Function gsl'sf'lnpoch(a,x), calls double gsl_sf_lnpoch (double a, double x)

Function gsl'sf'lnsinh(x), calls double gsl_sf_lnsinh (double x)

Function gsl'sf'log(x), calls double gsl_sf_log (double x)

Function gsl'sf'log'1plusx(x), calls double gsl_sf_log_1plusx (double x)

Function gsl'sf'log'1plusx'mx(x), calls double gsl_sf_log_1plusx_mx (double x)

Function gsl'sf'log'abs(x), calls double gsl_sf_log_abs (double x)

Function gsl'sf'log'erfc(x), calls double gsl_sf_log_erfc (double x)

Function gsl'sf'multiply(x,y), calls double gsl_sf_multiply (double x, double y)

Function gsl'sf'poch(a,x), calls double gsl_sf_poch (double a, double x)

Function gsl'sf'pochrel(a,x), calls double gsl_sf_pochrel (double a, double x)

Function gsl'sf'pow'int(x,n), calls double gsl_sf_pow_int (double x, int n)

Function gsl'sf'psi(x), calls double gsl_sf_psi (double x)

Function gsl'sf'psi'1(x), calls double gsl_sf_psi_1 (double x)

Function gsl'sf'psi'1piy(y), calls double gsl_sf_psi_1piy (double y)

Function gsl'sf'psi'1'int(n), calls double gsl_sf_psi_1_int (int n)

Function gsl'sf'psi'int(n), calls double gsl_sf_psi_int (int n)

Function gsl'sf'psi'n(n,x), calls double gsl_sf_psi_n (int n, double x)

Function gsl'sf'Shi(x), calls double gsl_sf_Shi (double x)

Function gsl'sf'Si(x), calls double gsl_sf_Si (double x)

Function gsl'sf'sin(x), calls double gsl_sf_sin (double x)

Function gsl'sf'sinc(x), calls double gsl_sf_sinc (double x)

Function gsl'sf'synchrotron'1(x), calls double gsl_sf_synchrotron_1 (double x)

Function gsl'sf'synchrotron'2(x), calls double gsl_sf_synchrotron_2 (double x)

Function gsl'sf'taylorcoeff(n,x), calls double gsl_sf_taylorcoeff (int n, double x)

Function gsl'sf'transport'2(x), calls double gsl_sf_transport_2 (double x)

Function gsl'sf'transport'3(x), calls double gsl_sf_transport_3 (double x)

Function gsl'sf'transport'4(x), calls double gsl_sf_transport_4 (double x)

Function gsl'sf'transport'5(x), calls double gsl_sf_transport_5 (double x)

Function gsl'sf'zeta(s), calls double gsl_sf_zeta (double s)

Function gsl'sf'zetam1(s), calls double gsl_sf_zetam1 (double s)

Function gsl'sf'zetam1'int(s), calls double gsl_sf_zetam1_int (int s)

Function gsl'sf'zeta'int(n), calls double gsl_sf_zeta_int (int n)

Function gsl'fcmp(x1,x2,epsilon), calls int gsl_fcmp (double x1, double x2, double epsilon)

Function gsl'finite(x), calls int gsl_finite (double x)

Function gsl'isinf(x), calls int gsl_isinf (double x)

Function gsl'isnan(x), calls int gsl_isnan (double x)

Function gsl'sf'legendre'array'size(lmax,m), calls int gsl_sf_legendre_array_size (int lmax, int m)


The example plugin

This servers as an illustration of the plugin capability of Yacas. The plugin defines some functions operating on integers, floats, and on a custom structure type "Bla".

This is an example mini-API.

Function AddTwoIntegers(arg1,arg2), calls int add_integers (int arg1, int arg2)

Function AddTwoDoubles(x,y), calls double add_doubles (double x, double y)

Declared struct Bla*

Function CreateBla(arg1,arg2), calls Bla* CreateBla (int arg1, int arg2)

Function BlaSetA(arg1,arg2), calls void BlaSetA (Bla* arg1, int arg2)

Function BlaGetA(arg1), calls int BlaGetA (Bla* arg1)


The OpenGL plugin

Constant GL_FALSE refers to the library name GL_FALSE

Constant GL_TRUE refers to the library name GL_TRUE

Constant GL_LINES refers to the library name GL_LINES

Constant GL_POINTS refers to the library name GL_POINTS

Constant GL_LINE_STRIP refers to the library name GL_LINE_STRIP

Constant GL_LINE_LOOP refers to the library name GL_LINE_LOOP

Constant GL_TRIANGLES refers to the library name GL_TRIANGLES

Constant GL_TRIANGLE_STRIP refers to the library name GL_TRIANGLE_STRIP

Constant GL_TRIANGLE_FAN refers to the library name GL_TRIANGLE_FAN

Constant GL_QUADS refers to the library name GL_QUADS

Constant GL_QUAD_STRIP refers to the library name GL_QUAD_STRIP

Constant GL_POLYGON refers to the library name GL_POLYGON

Constant GL_EDGE_FLAG refers to the library name GL_EDGE_FLAG

Constant GL_CURRENT_BIT refers to the library name GL_CURRENT_BIT

Constant GL_POINT_BIT refers to the library name GL_POINT_BIT

Constant GL_LINE_BIT refers to the library name GL_LINE_BIT

Constant GL_POLYGON_BIT refers to the library name GL_POLYGON_BIT

Constant GL_POLYGON_STIPPLE_BIT refers to the library name GL_POLYGON_STIPPLE_BIT

Constant GL_PIXEL_MODE_BIT refers to the library name GL_PIXEL_MODE_BIT

Constant GL_LIGHTING_BIT refers to the library name GL_LIGHTING_BIT

Constant GL_FOG_BIT refers to the library name GL_FOG_BIT

Constant GL_DEPTH_BUFFER_BIT refers to the library name GL_DEPTH_BUFFER_BIT

Constant GL_ACCUM_BUFFER_BIT refers to the library name GL_ACCUM_BUFFER_BIT

Constant GL_STENCIL_BUFFER_BIT refers to the library name GL_STENCIL_BUFFER_BIT

Constant GL_VIEWPORT_BIT refers to the library name GL_VIEWPORT_BIT

Constant GL_TRANSFORM_BIT refers to the library name GL_TRANSFORM_BIT

Constant GL_ENABLE_BIT refers to the library name GL_ENABLE_BIT

Constant GL_COLOR_BUFFER_BIT refers to the library name GL_COLOR_BUFFER_BIT

Constant GL_HINT_BIT refers to the library name GL_HINT_BIT

Constant GL_EVAL_BIT refers to the library name GL_EVAL_BIT

Constant GL_LIST_BIT refers to the library name GL_LIST_BIT

Constant GL_TEXTURE_BIT refers to the library name GL_TEXTURE_BIT

Constant GL_SCISSOR_BIT refers to the library name GL_SCISSOR_BIT

Constant GL_ALL_ATTRIB_BITS refers to the library name GL_ALL_ATTRIB_BITS

Constant GL_MATRIX_MODE refers to the library name GL_MATRIX_MODE

Constant GL_MODELVIEW refers to the library name GL_MODELVIEW

Constant GL_PROJECTION refers to the library name GL_PROJECTION

Constant GL_TEXTURE refers to the library name GL_TEXTURE

Function glBegin(arg1), calls void glBegin (int arg1)

Function glVertex3d(x,y,z), calls void glVertex3d (double x, double y, double z)

Function glEnd(), calls void glEnd ()

Function glClearColor(red,green,blue,alpha), calls void glClearColor (double red, double green, double blue, double alpha)

Function glClear(clear_flags), calls void glClear (int clear_flags)

Function glColor4d(arg1,arg2,arg3,arg4), calls void glColor4d (double arg1, double arg2, double arg3, double arg4)

Function glFrontFace(mode), calls void glFrontFace (int mode)

Function glPointSize(size), calls void glPointSize (double size)

Function glLineWidth(width), calls void glLineWidth (double width)

Function glEnable(cap), calls void glEnable (int cap)

Function glDisable(cap), calls void glDisable (int cap)

Function glPushMatrix(), calls void glPushMatrix ()

Function glPopMatrix(), calls void glPopMatrix ()

Function glLoadIdentity(), calls void glLoadIdentity ()

Function glRotated(angle,x,y,z), calls void glRotated (double angle, double x, double y, double z)

Function glScaled(x,y,z), calls void glScaled (double x, double y, double z)

Function glTranslated(x,y,z), calls void glTranslated (double x, double y, double z)

Function glNormal3d(nx,ny,nz), calls void glNormal3d (double nx, double ny, double nz)

Function glMatrixMode(mode), calls void glMatrixMode (int mode)

Function glOrtho(left,right,bottom,top,near_val,far_val), calls void glOrtho (double left, double right, double bottom, double top, double near_val, double far_val)

Function glFrustum(left,right,bottom,top,near_val,far_val), calls void glFrustum (double left, double right, double bottom, double top, double near_val, double far_val)

Function glViewport(x,y,width,height), calls void glViewport (int x, int y, int width, int height)

Constant GLUT_LEFT_BUTTON refers to the library name GLUT_LEFT_BUTTON

Constant GLUT_MIDDLE_BUTTON refers to the library name GLUT_MIDDLE_BUTTON

Constant GLUT_RIGHT_BUTTON refers to the library name GLUT_RIGHT_BUTTON

Constant GLUT_DOWN refers to the library name GLUT_DOWN

Constant GLUT_UP refers to the library name GLUT_UP

Function GlutMainLoop(window_title,window_width,window_height), calls void GlutMainLoop (input_string window_title, int window_width, int window_height)

Function GlutViewWidth(), calls int GlutViewWidth ()

Function GlutViewHeight(), calls int GlutViewHeight ()

Function GlutEnableAnimation(), calls void GlutEnableAnimation ()

Function GlutDisableAnimation(), calls void GlutDisableAnimation ()

Function glutPostRedisplay(), calls void glutPostRedisplay ()

Function GlutGetElapsedTime(), calls int GlutGetElapsedTime ()


The Forth plugin

This is the forth api.