なぜだろう?GeoGebraでエラーが出るようになってしまった.何をやっても,どこにいてもこのエラーが発生する.
EStartというアプリがいつの間にかインストールされていて,しかも,アンインストールができない.プログラムと機能にEstartが表示されない.⇒CCleanerを使ってスタートアップから外した.
とりあえず,GeoGebraを使って速攻でシミュレーションしてみようと思ったのだが,どうも要領が分からない.GeoGebra はオブジェクトを単体で定義する操作が主となっているため,全体の作りが見えてこない.つまり,どこで何をすればよいのか?が分からない.通常はネット上のサンプル・ソースをコピペすればすぐ動くものだが,GeoGebra の場合はそれができない.プログラムはモジュール単位でダウンロードして走らせることができるが,その中がどうなっているのかがつかめない.編集画面もバージョンによってさまざまあるようで,解説記事通りになっていないことがしばしばある.GeoGebra には公式のマニュアルがなく,熟練者(主に英語圏)が書いた解説記事を読解したユーザが自分なりのマニュアルを起こすような作りになっている.
どうも埒が明かないので,Python に乗り換えることにしたのだが,こちらもそうそう易しいものではない.サンプルのソースコードはネットで見つけることができるのでGeoGebraよりはましだが,結構敷居が高い.難易度から言うと Julia の方がとっつきやすいような気がする.Python は最後の手段として,Julia に戻ってもう少し粘ってみるという方針に切り替えることにした.それには,どこで躓いているのか?もう少し正確に把握する必要がある.Julia 単独ではなく,VS Code と抱き合わせで動かしているというのも問題をこじらせる原因になっている気がするが,VS Code を使わないという選択肢はないだろう.モジュールが分散しているところが最大の問題なので,一度更地に戻して出直してみたいのだが… できるだろうか?
これまで Julia を使って開発したプロジェクトは「再帰関数JL」だけではないかと思う.無限ビリヤードというのが最新プロジェクトだが,これは動いていない.参った.何も動かなくなってしまった.これはもう完全な認知症と認定するしかないのではないか?再帰関数JLの中には少なくとも4つファイルがある.いや,どうもコマンドが別のアプリとごっちゃになってしまっているのではないか?コードを実行するときにどのキーを押すかだが… メニューからRunしてとりあえず動いた.デバッグ付き実行はF5だ.ともかく動いていることは確かだが,ほとんど「死んでいない」というのに近い.
y=x^2-3÷2.jl は動くが,エラーが起きている.
BoundsError: attempt to access 676-element Vector{UInt8} at index [698]
エラーなしで動くものを保存しているはずなのだが… バックアップされているフォルダにはワークスペースが入っていない.ワークスペースなしで走らせていたのだろう.無限ビリヤードを作った時点で始めて保存したのではないかと思う.「無限ビリヤード」を開いて実行しようとしたら,以下のエラーになった.
Julia extension というのは多分 VS Code の拡張のことではないかと思われるのだが,それがないというのはどういうことだろう?View→ Extensions で見ると Julia は INSTALLED に入っているのだが… EXPLORER には NO FOLDER OPENED が表示されている.再帰関数JLもフォルダは持っていない.ともかく,最低限,再帰関数JL がエラーなしで動作する状態を確保しておく必要がある.もう一度 Hello World からやり直す必要があるのではないか?⇒Hello World ではすべての行をコメントアウトしていた.
hello.jl には,plot 関数も入っている.ただし,UdefVarError になってしまう.using Plots を追加しても同じ.usingまで入力して出てくる候補の中に Plots が入っていない.⇒モジュールはpkgでダウンロードする必要がある.VS Codeのターミナルから pkg を起動できない.⇒VS CodeのターミナルのコマンドプロンプトはJulia REPLとは別物なのだろう.⇒Juliaを起動して,Julia>] と入力し,pkg>add Plots でダウンロードが始まった.Users\babalabo\.julia にインストールしている.このコマンドは前にも実行していたはずだが,今回は何もエラーを出さずに完了した.
julia のREPLではjulia>using Plots が効くが,VS Code では効いていない.⇒再起動で認識できたようだ.動作するようになったが,まだエラーが出ている.
Exception has occurred: ErrorException
Failed to precompile Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80] to “C:\\Users\\babalabo\\.julia\\compiled\\v1.10\\Plots\\jl_3B8B.tmp”.
Stacktrace:
[1] top-level scope
@ d:\再帰関数JL\hello.jl:4
一番最初に以下のエラーが発生しているように思われる.
ERROR: LoadError: InitError: could not load library “C:\Users\babalabo\.julia\artifacts\f9f799e6ae3fe7f244bb55052db7ff1cea876c27\bin\libgettextlib-0-21.dll”
Access is denied.
libgettextlib-0-21.dllというDLLにアクセス拒否されている.VS Code を管理者として実行してみよう.今度は,
Exception has occurred: ErrorException
Failed to precompile Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80] to “C:\\Users\\babalabo\\.julia\\compiled\\v1.10\\Plots\\jl_BE50.tmp”.
Stacktrace: [1] top-level scope @ d:\再帰関数JL\hello.jl:4
のようなエラーになった.冒頭で
ERROR: LoadError: InitError: UndefVarError: `GR_jll` not defined
のエラーが起きている.GR がインストールされていないということだろうか?⇒julia のREPMでpkgを実行し,GRをインストール⇒VS Code を管理者権限で再起動で,上のエラーは消えたが,InitError というのが残っている.
Exception has occurred: InitError
InitError: UndefVarError: `GR_jll` not defined during initialization of module GRPreferences
Stacktrace: [1] top-level scope @ d:\再帰関数JL\hello.jl:4
GR_jl1 というのが,定義されていないという.GR_jl1というのはパッケージには入っているようだ.Julia REPLでコードを実行してみたが,やはりエラーが起きている.
ERROR: The following 1 direct dependency failed to precompile:
Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80]
Failed to precompile Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80] to “C:\\Users\\babalabo\\.julia\\compiled\\v1.10\\Plots\\jl_51CD.tmp”.
ERROR: LoadError: InitError: could not load library “C:\Users\babalabo\.julia\artifacts\f9f799e6ae3fe7f244bb55052db7ff1cea876c27\bin\libgettextlib-0-21.dll”
Access is denied.
jl_51CD.tmpというファイルとlibgettextlib-0-21.dllでエラーが起きている.⇒どうもJuliaも管理者として実行する必要があったようだ.⇒JuliaとVS Codeをアンインストールしてもう一度インストールし直してみる.⇒VS CodeはProgramFiles\WindowsAppにインストールされているが,ここは開くことができない.⇒今回はJulia をmicrosoft store からダウンロードすることにした.今回はきっちりインストールできたようだ.pkg>add GRの動作がまったく違う.ネットワークの問題だった可能性はある.今回はpovo1.0に24時間使い放題でダウンロードしている.以下のコードを実行してみた.
msg=”Hello World”
println(msg)
using GR
using Plots
x = 1:10; y = rand(10); # These are the plotting data
plot(x,y, label=”my label”)
x = 1:10; y = rand(10); # These are the plotting data
plot(x,y, label=”my label”)
x = 1:10; y = rand(10); # These are the plotting data
plot(x,y, label=”my label”)
GRがパッケージに含まれていないというエラーが出ていたが,実行されたようで,以下の画面が出ている.
julia> import Pkg; Pkg.add(“GR”) を実行して再インストールしたところ,今度は完全にエラーなしで動作するようになった.Julia REPL 画面への貼り込みも CTRL+SHIFT+V でできるので,VS Code を使わなくても最低限のことはできそうだが,ともかく手順に従ってインストールしておこう.⇒VS Codeは以下のフォルダにインストールされる.
C:\Users\babalabo\AppData\Local\Programs\Microsoft VS Code
VS Code の使い方もよく分からないので,少し勉強しておくことにしよう.VS Code ではHTMLの編集もできる.これは役に立つときがあるかもしれない.⇒何本か,チュートリアル動画を見てみた.