I'm attempting use Lingo and create a reusable library following the instructions in this PR. My work is in this library. I have (too many) questions:
- There is an
mqtt-c in a separate lf-pkgs organization. Why a separate organization? I have no write permission in this organization, so I created an mqtt-c repo in lf-lang. Following this suggestion, I also created a pkgs repo in lf-lang with just one README file. It currently lists just this one library. Perhaps @vinzbarbuto could add his Python library here?
- What is the difference between [lib] and [[app]] in Lingo? Why does [[app]] have double brackets? It seems that without a
[lib] in the file, Lingo does not recognize a library, even though there is a lib directory. But it seems to not matter what [lib] points to in its main property. What should it point to?
- Where should cmake files go in a library's directory tree? I've put them in
src/include.
- The instructions suggest there is just one Main.lf in src. Usually there will be multiple examples.
- Why is [app.properties] a separate clause rather than just part of [[app]] in Lingo? Why is [app.properties] required? The examples show it setting
fast = false, but this is a default property, so it seems unnecessary.
- Why does
lingo clean not remove the build directory? Also, perhaps it should remove the lfc-generated directories, bin, src-gen, fed-get, and
lingo build does not compile the generated code. It has no-compile: true. Why?
lingo build puts executables (though only for federated programs because of the no-compile) in build/bin. Shouldn't these go into bin to behave like lfc?
- What is the
lingo.lock file for? Should this me in a .gitignore?
I'm attempting use Lingo and create a reusable library following the instructions in this PR. My work is in this library. I have (too many) questions:
mqtt-cin a separatelf-pkgsorganization. Why a separate organization? I have no write permission in this organization, so I created anmqtt-crepo inlf-lang. Following this suggestion, I also created apkgsrepo inlf-langwith just one README file. It currently lists just this one library. Perhaps @vinzbarbuto could add his Python library here?[lib]in the file, Lingo does not recognize a library, even though there is alibdirectory. But it seems to not matter what[lib]points to in itsmainproperty. What should it point to?src/include.fast = false, but this is a default property, so it seems unnecessary.lingo cleannot remove the build directory? Also, perhaps it should remove thelfc-generated directories,bin,src-gen,fed-get, andlingo builddoes not compile the generated code. It hasno-compile: true. Why?lingo buildputs executables (though only for federated programs because of the no-compile) inbuild/bin. Shouldn't these go intobinto behave likelfc?lingo.lockfile for? Should this me in a.gitignore?