Nim: transpilerとして使う(1)
最近、nimをtranspilerとして使うようになりました:
nim js source.nim
型チェックとして使うために
nim に最初から入っているjsffi.nimは、 \ 型チェックが緩くなってしまうので、 \ それなりに工夫と労力が必要です。
最近、nimをtranspilerとして使うようになりました:
nim js source.nim
nim に最初から入っているjsffi.nimは、 \ 型チェックが緩くなってしまうので、 \ それなりに工夫と労力が必要です。
ここ1年ぐらいjavascript書くのにpythonを使ってきました。:
python -> mypy -> transcrypt -> javascript
世の中はtypescriptとか言われてますすが、 そのへんは調べてません。
javascriptよりもpythonで記述できるのはよかったのですが、 \ あまり良くないこと気がついてきました。
mypyとtranscryptが非常に遅い
そもそも動的なpythonだと、mypyでもタイプチェックが弱い
そこで静的型付けで、javascriptに変換できそうな言語を 使ってみました
genie: もともと使い始めてた
nim: genie→javascriptが難しそうだったのでこちら
C#: ソフトのインストールとか面倒だったのでやめ
nimですが、いろいろな機能を使わなければ シンプルでとっつきは良かったです。
自分が手持ちのjavascriptはだいたい変換終わりました。
変換したときのポイント等を書いておきます。
更新 19/02/22 今日も sudoerは後で書いているルールが優先 にハマりました
特定ファイルのコピーを含めたpushを実施しているのですが、 パスワード入力が大変なので、工夫してみました。
From:
scp file host://path/to/deploy/file hg push ssh host "sudo systemctl restart my.service"
To:
tar cf - file | ssh -t -M host "tar xvf - -C /path/to/deploy" hg push -e "ssh -t -S host" ssh -t -S host host "sudo /bin/systemctl restart my.service"
[github: maja](https://github.com/lethalman/maja)
以下のエラーが出て、コンパイルが止まってしまう:
glib-2.0.vapi:4827.2-4827.33: error: The type-parameter `T' is missing public delegate uint HashFunc<K> (K key); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ glib-2.0.vapi:4829.2-4829.34: error: The type-parameter `T' is missing public delegate bool EqualFunc<G> (G a, G b); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ glib-2.0.vapi:4829.2-4829.34: error: The type-parameter `T' is missing public delegate bool EqualFunc<G> (G a, G b); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
HashFuncなどは使用していないし、 \ 同じような空のソースファイルを作ってコンパイルしても \ ちゃんと通るので、valaの不具合かな...と思います。
自分では直せそうになかったので、 使うのはやめておこうかな...
2018/09/10 安くなったので購入
2018/10/22 06-14-57 Android 7.1->8.0に
Qcom SD635
4GB
64GB
qwerty
12?g
4G
Wifi
BT
NFC
Android 8.0
LS-VL上に構成しているDebian Jessieの管理について書いています。
jQueryMobileで作ったアプリがあったのですが、 javascriptを書くのが面倒でした
transcryptとmypyを導入して少し開発が楽になったので 使い方等を紹介します。:
python -- pyramid -- PageTemplate --+--> browser | jQuery(transcrypt) -----------------+
いまだ解決していないのはテストです。 趣味プログラムでは「テストまで作るのは...」と思いますが GUIのデバッグが毎回大変なので、そろそろ作ってもいいかな...と考えています。
本家SDLサンプルコードのSDL2版 GenieSDL2Texture.gs
ファイル読み込みサンプル GenieFileRead.gs
Genieでちょっとしたもの作りかけてましたが、 サンプルコードが少ないので書いてみました。