New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Nim #1997
Add Nim #1997
Conversation
[Nim](https://nim-lang.org/) is a statically typed compiled systems programming language. > Good for everything from shell scripting to web front & backend, to ML, HPC, and embedded. Productivity: human readable and expressive like Python, with few sigils Type system: strong static typing, nice generics, concepts, and type classes Performance: matches C and C++, always gives control to the programmer Portability: compiles to C, C++, and Javascript Native use of all libraries in target languages (no ABI issues) + really nice FFI Single (tiny) executable with no deps Write server/client in the same language and share code between front/back end Linux, Windows, and Mac Iterating: Very fast compile speed Top tier metaprogramming: Hygienic AST Macros a core part of the language, very flexible syntax Runs a VM of Nim at compile time giving you most of the language (bar pointers) to generate code or run procedures and store them as const Eg; async implemented just with macros, doesn't need special language support Eg; can automate building types and code from file data at compile time Ref https://old.reddit.com/r/programming/comments/jc91xp/nim_14/g90ysdl/?context=2
Thanks for making an Awesome list! π It looks like you didn't read the guidelines closely enough. I noticed multiple things that are not followed. Try going through the list point for point to ensure you follow it. I spent a lot of time creating the guidelines so I wouldn't have to comment on common mistakes, and rather spend my time improving Awesome. |
Hi. This all looks pretty good to me. The only thing I can think of, which I can't tell whether you've done yet, is to run awesome-lint. |
Which do you mean? I have an awesome-lint CI for it in my repo. |
I was just trying to see what you didn't complete yet under the awesome list instructions to warrant the comment above about not following the guidelines and didn't see that you'd run awesome-lint and reported any issues anywhere, as it's one of the prerequisites. Apologies if I missed that you'd already done it. |
Your list description should end in a dot according to PR requirements. |
For example,
Unmaintained stuff are not awesome.
And it's moot to prefix all these links with |
@sindresorhus |
Descriptions should not be title-case. For example, The description should not contain the project name.
Nim is implied here. It's a list for Nim stuff. Same in many other places.
Formatting typo. The header is ugly and illegible. If you want to keep it, you should:
|
[Insert URL to the list here]
https://github.com/xflywind/awesome-nim
[Explain what this list is about and why it should be included here]
Nim is a statically typed compiled systems programming language.
Good for everything from shell scripting to web front & backend, to ML, HPC, and embedded.
Productivity: human readable and expressive like Python, with few sigils
Type system: strong static typing, nice generics, concepts, and type classes
Performance: matches C and C++, always gives control to the programmer
Portability: compiles to C, C++, and Javascript
Native use of all libraries in target languages (no ABI issues) + really nice FFI
Single (tiny) executable with no deps
Write server/client in the same language and share code between front/back end
Linux, Windows, and Mac
Iterating: Very fast compile speed
Top tier metaprogramming:
Hygienic AST Macros a core part of the language, very flexible syntax
Runs a VM of Nim at compile time giving you most of the language (bar pointers) to generate code or run procedures and store them as const
Eg; async implemented just with macros, doesn't need special language support
Eg; can automate building types and code from file data at compile time
Ref https://old.reddit.com/r/programming/comments/jc91xp/nim_14/g90ysdl/?context=2
By submitting this pull request I confirm I've read and complied with the below requirements π
Please read it multiple times. I spent a lot of time on these guidelines and most people miss a lot.
Requirements for your pull request
Add Web EffectΒ #1983
Add Jai language awesome documentΒ #1974
Add Name of List
.Add Swift
Add Software Architecture
Update readme.md
Add Awesome Swift
Add swift
add Swift
Adding Swift
Added Swift
- [iOS](β¦) - Mobile operating system for Apple phones and tablets.
- [Framer](β¦) - Prototyping interactive UI designs.
- [iOS](β¦) - Resources and tools for iOS development.
- [Framer](β¦)
- [Framer](β¦) - prototyping interactive UI designs
Requirements for your Awesome list
That means 30 days from either the first real commit or when it was open-sourced. Whatever is most recent.
awesome-lint
on your list and fix the reported issues. If there are false-positives or things that cannot/shouldn't be fixed, please report it.main
, notmaster
.Mobile operating system for Apple phones and tablets.
Prototyping interactive UI designs.
Resources and tools for iOS development.
Awesome Framer packages and tools.
If you have not put in considerable effort into your list, your pull request will be immediately closed.
awesome-name-of-list
.awesome-swift
awesome-web-typography
awesome-Swift
AwesomeWebTypography
# Awesome Name of List
.# Awesome Swift
# Awesome Web Typography
# awesome-swift
# AwesomeSwift
awesome-list
&awesome
as GitHub topics. I encourage you to add more relevant topics.Contents
, notTable of Contents
.Contributing
orFootnotes
sections.https://github.com/<user>/<repo>/community/license/new?branch=main&template=cc0-1.0
(replace<user>
and<repo>
accordingly).license
orLICENSE
in the repo root with the license text.Licence
section to the readme. GitHub already shows the license name and link to the full text at the top of the repo.unicorn
.contributing.md
. Casing is up to you.Contributing
, positioned at the top or bottom of the main content.Footnotes
section at the bottom of the readme. The section should not be present in the Table of Contents.Example:
- [AVA](β¦) - JavaScript test runner.
Node.js
, notNodeJS
ornode.js
.You can still use Travis for list linting, but the badge has no value in the readme.
Inspired by awesome-foo
orInspired by the Awesome project
kinda link at the top of the readme. The Awesome badge is enough.Go to the top and read it again.