> Out of curiosity, did you have any use cases in mind?
the first that came to mind is to use it to feed data from several source to a
single SQLite writer connection. No clue if it is suitable for that.
I'm not part of the code-streaming audience generally, but I could suggest
playing around with mummy a bit. Essentially write a small website using only
websockets and ping pong messages back and forth with mummy as the server.
Could be pretty interesting to see how to best perform such a setup
I agree with most of you said, so I'll focus on the one disagreement.
> but simply the idea of attaching a set of definitions to an object in a
> separate place, with a separate syntax, as it makes things much clearer,
> manageable, and convenient.
I'm not sure about that, in the "separate" pla
Sorry for causing confusion about components vs component sets. I did not mean
to state anything against the idea of _component_. What I called an element
(probably after DOM Elements) and what you call a component are very similar if
not the same thing. My point was against the idea of "here is
jester.
I didn't originally write the package with that in mind, but mapping `object
Variant --> object type` works without issue. See here 2 unit-tests I just
added to test that:
test """
GIVEN an object variant A and an object type B that share some fields
on the instance
Also if people would prefer another time, I can also switch it if other times
would fit other peoples' schedules. I know there are a lot of Europeans here
Any types like that should have `=copy` disabled, and places that take
ownership annotated with `sink`. That's a relatively large and breaking change
though.
I want to livestream Nim programming on weekends, I'm thinking 8PM EST on
Saturdays. I've done this once before for the people on the #nimworks channel
(the people behind CPS, Nimskull, etc.), and it was pretty fun and productive,
at least for me.
If anyone's interested, let me know and suggest
It's worth documenting part of the stdlib that have their resources freed with
a `=destroy` hook since it's currently the exception, not the rule. I wouldn't
mind contributing a little bit to this, but I suspect it might conflict with
existing try/finally uses if there are new `=destroy` hooks a
Sweet! Now the big question, does it handle variant types? :)
Perhaps a `ResolvedAddress` type could be useful. `getaddrinfo` is called all
over the place, which is convenient but causes issues. Having a
`ResolvedAddress` type that essentially stores `getaddrinfo` might be able to
help get around that, and help simplify quite a bit of the proc's.
> The problem is that the Nim standard library does things in the wrong order,
> it first creates the socket (and you have to choose AF_INET or AF_INET6
> before resolving the DNS and knowing if it will be IPv4 or IPv6). When
> resolving the address, if the address type does not match it will no
> Another opinion I want to express is that all the UI
> libraries/frameworks/systems with all those widgets and component sets are
> things of the past.
I don't know, React is built on components. Then there's boostrap, tailwind,
bulma, etc. People just want to be able to tweak the components
> Would it make sense to peel that out at some time and turn it into it's own
> library, for other use cases?
Definitely! It's written to be made standalone and they're called `Agents` by
themselves. I want to get multithreading capability going and get some time
with it in Figuro before splitt
Sorry about that. I wanted to share what I see as a potential increase in
popularity.
I have almost never seen him code on the Youtube channel. His remarks are
rather feelings and are not constructive criticisms since he did not tried out
the language. I made small (wrongly formatted) keypoints
seems like it be easier to create your own network stack library in nim
@Araq, please correct me if I'm wrong: The main point of supporting
event-based/retained/immediate modes of operation is to design the API in an
open way to allow different ways of using the library for different use cases
and needs. Instead of forcing a specific workflow such as opening a windo
The error is way to vague. You need to post some code at least. Try to make it
a minimal example. That way someone can at least look at what the issue could
be.
No stack traceback available SIGSEGV: Illegal storage access. (Attempt to read
from nil?) Segmentation fault Error: execution of an external program failed:
'/home/isaiah/NimProjects/blog/src/blog.out' tools.nim(36) doCmd
> Error: Execution failed with exit code 1
The problem is that it's too easy to create IPv4 only libraries / apps using
`newSocket` then `connect` instead of `dial`. Perhaps `connect` using a string
address should be deprecated at some point. Only `connect` using an address
object should be allowed.
A solution could be to have `newSocket` not actually create the socket until
either `bind`or `connect`/`connectUnix` is called, and then detect the correct
socket domain from the address given in each case.
Or instead of going through `newSocket` and `connect` one should just use
`dial` to crea
I'm getting dual-stack wrong...
The correct way of doing things is to:
* run getaddrinfo with AF_UNSPEC
* create the socket after that using the domain (AF_INET or AF_INET6)
returned by getaddrinfo
The problem is that the Nim standard library does things in the wrong order, it
first crea
Well, do I need to have a development version of the Nim compiler around (and
perhaps use choosenim to switch to it so I can build my projects with it) or
can I just have a development version of the standard library and tell the
compiler to use it instead of the standard library bundled with th
Hi,
I'm often deploying server apps on the IPv6 stack, and I find that Nim is quite
lacking in this regard. I believe by default, sockets are only bound to AF_INET
(which means IPv4 only) while normally on C it defaults to AF_UNSPEC if not
manually defined (which means dual stack). I opened a b
I had recently at work gotten into using
[MapStruct](https://github.com/mapstruct/mapstruct) for mapping data-classes of
Type A to Type B in a simple manner.
And I thought to myself "Huh, I have to do a lot of mapping of type A to B for
webdev to hide certain fields or do minor transformations/
Sure, depending on where the CI is run. For example, Github Actions comes with
MacOS runners. Can someone point me to the current build (both binary and
docker image) process(es)?
> there's no difference between nim and any other dependency really.
There really is a big difference both in theory and in practice. Let's see how
others do it:
* pip: Doesn't install a Python version. Python is not just a dependency like
any other.
* cargo: Doesn't install a Rust version.
> implemented a signal / slot mechanism similar to QT instead of callbacks!
Would it make sense to peel that out at some time and turn it into it's own
library, for other use cases?
Yes. And people can do that successfully with any language out there, C++
included.
Hi,
since Nim 2 brought ARC/ORC it is tempting to stop using try-finally for
disposing resources. Because now `=destroy` will be called automatically when
reference count drops to 0.
But some examples in `stdlib` documentation eg. `std/httpclient` still use
try-finally. When I looked into the
Theoretics can critisise python all they want. I say what I see around. People
successfully use it to solve all sorts of common problems, frequently even
without much understanding about it by basically just google & copy-paste &
slightly modify - all done. It's ugly and messy, but it's simple a
Unfortunately large parts of the standard library don't embrace destructors
yet. Sorry!
yes try/finally still needed for types lacking =destroy. If you using low level
primitives like handles which rarely used in c bindings you still need to free
resources yourself. So having SocketHandle is just a distinct cint and you need
call close on created socket to free it usage in OS
I've just upgraded to Nim 2.0 and the Head version of Owlkettle. To get the
ToDo example to work I had to change the style of the two buttons to style =
{ButtonSuggested} to get the example to compile (curly brackets rather than
square brackets).
On a past weekend I got the bug and started working on what I'd described
previously. It's come along fairly quickly! Many thanks for @treeform and
@guzba for the amazing UI libraries. @ElegantBeef has been elegant as always
while helping me grok mixins.
It's still very experimental, as in mous
Thanks all for the suggestions, i've been able to progress !
> Python - simplicity
Ha, good one. Python: Exceptions + multiple inheritance + operator overloading.
All the features that make C++ bad. According to "popular wisdom" anyway. ;-)
Scala is overcomplicated and incoherent mess of all sort of features.
Python - simplicity.
Nim - hard realtime systems and system programming
39 matches
Mail list logo