Hello Ralf, Sorry for the late reply, too a lot of bad things in my life... BTW I have uploaded a new set of binaries at:
https://github.com/gvanuxem/jlfricas/releases/tag/snapshot-20250123 I forgot to mention here that, normally, for this work, Julia should also contain the Nemo and SpecialFunctions packages, although the latter isn't really necessary. Other packages also can give you some goodies, see my code :). The configure script can help. SpecialFunctions package is there because the first interface makes extensive use of Float64s for BLAS and LAPACK, it can be seen as an academic package. I've interfaced quite a few other things so I'm not sure what kind of input or demo files you're looking for. Maybe you're talking about the general Julia interface? Or how to use it (by creating domains or packages for example, or in the interpreter) or just the ‘first’ interface? Mainly BLAS/LAPACK and domains for their element type. But to check if the interface works something like: └─$ jlfricas Checking for foreign routines FRICAS="/usr/local/lib/fricas/target/x86_64-linux-gnu" spad-lib="/usr/local/lib/fricas/target/x86_64-linux-gnu//lib/libspad.so" foreign routines found openServer result 0 FriCAS Computer Algebra System Version: jlFriCAS 1.3.12-dev built with SBCL 2.5.0 Timestamp: mer. 22 janv. 2025 21:12:17 CET ----------------------------------------------------------------------------- Issue )copyright to view copyright notices. Issue )summary for a summary of useful system commands. Issue )quit to leave FriCAS and return to shell. ----------------------------------------------------------------------------- (1) -> v:=nrand(4) (1) 1.2948785092864128 -0.2600763993207445 0.6410109567060678 -0.44690936186905317 Type: JuliaFloat64Vector (2) -> norm v (2) 1.5345921645958183 Type: JuliaFloat64 (3) -> norm normalize v (3) 0.9999999999999998 Type: JuliaFloat64 Does the trick. 'jlfricas' is just another fricas script I wrote to start FriCAS with readline support (reverse search in the interpreter, automatic completion etc.) without starting HyperDoc at startup, it is still available via the system command synonym ')hd' though. Here the example was a little statistic oriented but for LinearAlgebra more is available in the first interface (and even more with the second interface): (4) -> a:=urand01(4,4) (4) 0.629447 0.264718 0.915014 0.914333 0.811584 0.195081 0.929777 0.970752 0.253974 0.556997 0.315226 0.60056 0.826752 0.0937633 0.941186 0.283772 Type: JuliaFloat64Matrix (5) -> eigen a (5) [ values = -0.43037190667652964 + 0.0im -0.2040803196935474 - 0.09131181759206322im -0.2040803196935474 + 0.09131181759206322im 2.2620597041523545 + 0.0im , vectors = 0.411756+0.0im 0.624533-0.0im 0.624533+0.0im -0.555356+0.0 im 0.39931+0.0im 0.393103+0.252091im 0.393103-0.252091im -0.595204+0.0 im 0.201061+0.0im -0.53757+0.122864im -0.53757-0.122864im -0.378601+0.0 im -0.794093+0.0im -0.14518-0.258311im -0.14518+0.258311im -0.440423+0.0 im ] Type: Record(values: JuliaComplexF64Vector,vectors: JuliaComplexF64Matrix) (6) -> svd a (6) [ U = -0.56618 0.164946 0.291146 0.753304 -0.613163 0.0392248 0.454336 -0.645036 -0.29786 0.694143 -0.642814 -0.127419 -0.463413 -0.699586 -0.543693 0.0150175 , sv = 2.5684835347187795 0.6626479648305051 0.3023398520311132 0.09456855241209566 , Vt = -0.511115 -0.186434 -0.630029 -0.554137 -0.40207 0.561921 -0.38064 0.614571 -0.200981 -0.804789 -0.0843898 0.552087 -0.732604 0.0424576 0.671607 -0.102145 ] Type: Record(U: JuliaFloat64Matrix,sv: JuliaFloat64Vector,Vt: JuliaFloat64Matrix) But if you speak about the general interface (data are in the Julia process so, only a "pointer" is used to access them) here is an example with a domain that I like a little: (7) -> a:=jnecf 1/7 (7) 0.142857 {1/7} Type: NemoExactComplexField (8) -> sqrt % (8) 0.377964 {(a)/7 where a = 2.64575 [a^2-7=0]} Type: NemoExactComplexField (9) -> %^2 (9) 0.142857 {1/7} Type: NemoExactComplexField (10) -> a:=jnecf(-1/7) (10) -0.142857 {-1/7} Type: NemoExactComplexField (11) -> sqrt % (11) 0.377964*I {(a)/7 where a = 2.64575*I [a^2+7=0]} Type: NemoExactComplexField (12) -> asin % (12) 0.369499*I {-a*d where a = -0.369499 [Log(0.691080 {(2*b+c*d)/7})], b = 3.741 66 [b^2-14=0], c = 2.64575*I [c^2+7=0], d = I [d^2+1=0]} Type: NemoExactComplexField This domain uses a library added to FLINT that uses FLINT. There are a lot more. Ball arithmetic is an example. Otherwise, almost everything in Julia can be used, I think. To finish this, the basic domain to use for the generic interface in the interpreter is JuliaObject. A little example: (13) -> jlUsing "Dates" (13) true Type: Boolean (14) -> obj:=jobject "DateTime(2013,7,1)" (14) 2013-07-01T00:00:00 Type: JuliaObject (15) -> jlApply("dump",obj) DateTime instant: Dates.UTInstant{Millisecond} periods: Millisecond value: Int64 63508320000000 (15) nothing Type: JuliaObject (16) -> obj2:=jobject "DateTime(2010,7,1)" (16) 2010-07-01T00:00:00 Type: JuliaObject (17) -> jlType % (17) "DateTime" Type: String (18) -> jlApply("-",obj,obj2) (18) 94694400000 milliseconds Type: JuliaObject (20) -> obj:=jobject "Date(2013,7,1)" (20) 2013-07-01 Type: JuliaObject (21) -> obj2:=jobject "Date(2010,7,1)" (21) 2010-07-01 Type: JuliaObject (22) -> jlApply("-",obj,obj2) (22) 1096 days Type: JuliaObject There are rooms of improvements I have to work on, I only coded an architecture. I need to do an enormous code clean up. So, please Ralf, what types of input or demo files you speak of. If you think about documenting what I coded a la FriCAS book, I think I can't there is too a lot of added code. I have only two hands ;) - Greg PS: I attached an .input file to check your installation ;) Le mer. 8 janv. 2025 à 20:54, 'Ralf Hemmecke' via FriCAS - computer algebra system <fricas-devel@googlegroups.com> a écrit : > > Hi Greg, > > before I am going to install... do you have a couple of examples (some > .input files) that I then can use to check whether my installation works > and also as a demo how I can actually use functions from Julia. > > Thank you > Ralf > > -- > You received this message because you are subscribed to the Google Groups > "FriCAS - computer algebra system" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to fricas-devel+unsubscr...@googlegroups.com. > To view this discussion visit > https://groups.google.com/d/msgid/fricas-devel/0509bc1e-143b-48e6-b825-4af9a8f07561%40hemmecke.org. -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To unsubscribe from this group and stop receiving emails from it, send an email to fricas-devel+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/fricas-devel/CAHnU2dYgJ5xAtX4HJBT-%3DdP2NrPsa9OgN6GB9TQPnvbnk3CDjg%40mail.gmail.com.
check.input
Description: Binary data