Re: Coedit 2 alpha 4, split view and dfmt
On 21/12/15 7:15 PM, Basile B. wrote: On Monday, 21 December 2015 at 06:08:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 05:55:15 UTC, Rikki Cattermole wrote: On 21/12/15 6:42 PM, Basile B. wrote: On Monday, 21 December 2015 at 04:59:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 04:47:06 UTC, Basile B. wrote: [...] Thx for the report btw, fixed in master. I've updated and uploaded new binaries, this bug was such a pity. Only the main exe has to be overwritten, it's located in the zip files that don't contain the word 'setup'. Tried still failing. Also I only use default configs. Would it have anything to do with dfmt.exe not existing? I created a batch file that would run it via dub. I'm hoping that would work. maybe, dfmt must be somewhere in the PATH. You know if it's the right/new version if the UI of "Dfmt commander" have some checkboxes instead of just text (for bools). Actually, yes it's that. In windows, click "about" and you'll see the state of the background tools. I guess that in your case dfmt will be yellow, like here: http://imgur.com/0XgMeDs You're right. I'll just write up a small D script for this. Either way needs to be fixed.
Re: Coedit 2 alpha 4, split view and dfmt
On Monday, 21 December 2015 at 06:08:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 05:55:15 UTC, Rikki Cattermole wrote: On 21/12/15 6:42 PM, Basile B. wrote: On Monday, 21 December 2015 at 04:59:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 04:47:06 UTC, Basile B. wrote: [...] Thx for the report btw, fixed in master. I've updated and uploaded new binaries, this bug was such a pity. Only the main exe has to be overwritten, it's located in the zip files that don't contain the word 'setup'. Tried still failing. Also I only use default configs. Would it have anything to do with dfmt.exe not existing? I created a batch file that would run it via dub. I'm hoping that would work. maybe, dfmt must be somewhere in the PATH. You know if it's the right/new version if the UI of "Dfmt commander" have some checkboxes instead of just text (for bools). Actually, yes it's that. In windows, click "about" and you'll see the state of the background tools. I guess that in your case dfmt will be yellow, like here: http://imgur.com/0XgMeDs
Re: Coedit 2 alpha 4, split view and dfmt
On 21/12/15 7:08 PM, Basile B. wrote: On Monday, 21 December 2015 at 05:55:15 UTC, Rikki Cattermole wrote: On 21/12/15 6:42 PM, Basile B. wrote: On Monday, 21 December 2015 at 04:59:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 04:47:06 UTC, Basile B. wrote: On Monday, 21 December 2015 at 03:59:20 UTC, Rikki Cattermole wrote: On 21/12/15 4:21 PM, Basile B. wrote: Hello, A new alpha of CE is available: [...] Thanks again for dfmt support. But ugh, I get access violation(message window) when it formats. Thx for the report btw, fixed in master. I've updated and uploaded new binaries, this bug was such a pity. Only the main exe has to be overwritten, it's located in the zip files that don't contain the word 'setup'. Tried still failing. Also I only use default configs. Would it have anything to do with dfmt.exe not existing? I created a batch file that would run it via dub. I'm hoping that would work. maybe, dfmt must be somewhere in the PATH. You know if it's the right/new version if the UI of "Dfmt commander" have some checkboxes instead of just text (for bools). If it cannot execute dfmt, it should give an error stating this. Not cause an access violation. And yes it is updated. Assuming you do not add .exe to dfmt it should execute both the batch file and a exe the same way. Looking first and for most in the current directory which my batch file is. In other words, its still failing. If you want to send me custom builds, we can talk on e.g. gitter and sort this out.
Re: Coedit 2 alpha 4, split view and dfmt
On Monday, 21 December 2015 at 05:55:15 UTC, Rikki Cattermole wrote: On 21/12/15 6:42 PM, Basile B. wrote: On Monday, 21 December 2015 at 04:59:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 04:47:06 UTC, Basile B. wrote: On Monday, 21 December 2015 at 03:59:20 UTC, Rikki Cattermole wrote: On 21/12/15 4:21 PM, Basile B. wrote: Hello, A new alpha of CE is available: [...] Thanks again for dfmt support. But ugh, I get access violation(message window) when it formats. Thx for the report btw, fixed in master. I've updated and uploaded new binaries, this bug was such a pity. Only the main exe has to be overwritten, it's located in the zip files that don't contain the word 'setup'. Tried still failing. Also I only use default configs. Would it have anything to do with dfmt.exe not existing? I created a batch file that would run it via dub. I'm hoping that would work. maybe, dfmt must be somewhere in the PATH. You know if it's the right/new version if the UI of "Dfmt commander" have some checkboxes instead of just text (for bools).
Re: Coedit 2 alpha 4, split view and dfmt
On 21/12/15 6:42 PM, Basile B. wrote: On Monday, 21 December 2015 at 04:59:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 04:47:06 UTC, Basile B. wrote: On Monday, 21 December 2015 at 03:59:20 UTC, Rikki Cattermole wrote: On 21/12/15 4:21 PM, Basile B. wrote: Hello, A new alpha of CE is available: [...] Thanks again for dfmt support. But ugh, I get access violation(message window) when it formats. Thx for the report btw, fixed in master. I've updated and uploaded new binaries, this bug was such a pity. Only the main exe has to be overwritten, it's located in the zip files that don't contain the word 'setup'. Tried still failing. Also I only use default configs. Would it have anything to do with dfmt.exe not existing? I created a batch file that would run it via dub. I'm hoping that would work.
Re: Coedit 2 alpha 4, split view and dfmt
On Monday, 21 December 2015 at 04:59:09 UTC, Basile B. wrote: On Monday, 21 December 2015 at 04:47:06 UTC, Basile B. wrote: On Monday, 21 December 2015 at 03:59:20 UTC, Rikki Cattermole wrote: On 21/12/15 4:21 PM, Basile B. wrote: Hello, A new alpha of CE is available: [...] Thanks again for dfmt support. But ugh, I get access violation(message window) when it formats. Thx for the report btw, fixed in master. I've updated and uploaded new binaries, this bug was such a pity. Only the main exe has to be overwritten, it's located in the zip files that don't contain the word 'setup'.
Re: Coedit 2 alpha 4, split view and dfmt
On Monday, 21 December 2015 at 04:47:06 UTC, Basile B. wrote: On Monday, 21 December 2015 at 03:59:20 UTC, Rikki Cattermole wrote: On 21/12/15 4:21 PM, Basile B. wrote: Hello, A new alpha of CE is available: [...] Thanks again for dfmt support. But ugh, I get access violation(message window) when it formats. Thx for the report btw, fixed in master.
Re: Coedit 2 alpha 4, split view and dfmt
On Monday, 21 December 2015 at 03:59:20 UTC, Rikki Cattermole wrote: On 21/12/15 4:21 PM, Basile B. wrote: Hello, A new alpha of CE is available: [...] Thanks again for dfmt support. But ugh, I get access violation(message window) when it formats. Ok, I confirm this happens if you type custom text in 'braceStyle' or in 'identationStyle' (oops, type to fix also). You should rather use the list to select a valid option until the options are protected by setters, in next release... :/
Re: Coedit 2 alpha 4, split view and dfmt
On 21/12/15 4:21 PM, Basile B. wrote: Hello, A new alpha of CE is available: The two latest releases put the focus on the editor: - identifier markup improved. - split view. - macro recording state clearly indicated. - fix (highlighter, cache restoration when workspace is reloaded). - more shortcuts (prev/next location, ddoc, call tips, macro recording, synchro-edit) - more options. Also it's now possible to specify the favorite compiler in the applications options - for DUB: dmd, gdc and ldc are obviously supported. - for the CE projects (aka "native projects"): dmd and ldc are supported. A new widget, "Dfmt commander", has been added. It's a GUI for Dmft. It works automatically on the selected editor and it processes documents in memory only. Download links and detailed changelog: https://github.com/BBasile/Coedit/releases/tag/2_alpha_4 (see also previous release since I haven't announced it here). Thanks again for dfmt support. But ugh, I get access violation(message window) when it formats.
Coedit 2 alpha 4, split view and dfmt
Hello, A new alpha of CE is available: The two latest releases put the focus on the editor: - identifier markup improved. - split view. - macro recording state clearly indicated. - fix (highlighter, cache restoration when workspace is reloaded). - more shortcuts (prev/next location, ddoc, call tips, macro recording, synchro-edit) - more options. Also it's now possible to specify the favorite compiler in the applications options - for DUB: dmd, gdc and ldc are obviously supported. - for the CE projects (aka "native projects"): dmd and ldc are supported. A new widget, "Dfmt commander", has been added. It's a GUI for Dmft. It works automatically on the selected editor and it processes documents in memory only. Download links and detailed changelog: https://github.com/BBasile/Coedit/releases/tag/2_alpha_4 (see also previous release since I haven't announced it here).
Re: Small minesweeper game in D
On Sunday, 20 December 2015 at 20:58:25 UTC, Taylor Hillegeist wrote: I had to install libglu1-mesa* on Ubuntu. Nicely done though! Huh, that's good to know! Everywhere else I tried on Linux it just worked but it does indeed require GL and GLU just because simpledisplay on Linux links to them, though I didn't actually use OpenGL for this program. (on Windows, opengl support is opt-in because the opengl32.lib and glu32.lib aren't included with dmd, I could do that on Linux too I suppose but installing glu isn't that hard anyway...)
Re: Small minesweeper game in D
On Sunday, 20 December 2015 at 17:24:41 UTC, jmh530 wrote: The code looks easy to understand also. You might consider writing this up into a blog post. I might if I had a blog... which I need to set up at some point but haven't yet (well, I used to have one but not for years). But what I posted here is the most of what I'd say anyway. I guess I could write a bit more about the code but most of it is IMO at least fairly straightforward.
Re: IAP Tools for D
The designers of HTTP would strongly argue that is a major thing HTTP got right, and is the feature primarily responsible for it huge success. Then why is HTTP 2 moving away from it? And Web Sockets? Clearly, having the choice between keeping state and not keeping state is preferable to HTTP taking that choice away from you. Lots of apps also spend quite an effort to mimic stateful communication on top of HTTP. Sessions? Authentication tokens? Cookies? Caching in the browser? HTML5 Local Storage? No, HTTP did not get "stateless" right. Your "fix-the-network" problem is definitely valid. At this point we have mostly focused on ION - the binary object / message format for IAP. However, we have a pretty good idea about how IAP will work on a conceptual level. IAP will have a set of "semantic protocols". Each semantic protocol can address its own area of concern. File exchange, time, RPC, distributed transactions, P2P, streaming etc. You can also define your own semantic protocol to address exactly your specific situation (e.g. the Byzantine Generals Problem - distributed consensus). Everything is not yet in place - but we will get there step by step.
Re: Small minesweeper game in D
On Sunday, 20 December 2015 at 02:11:58 UTC, Adam D. Ruppe wrote: dmd minesweeper.d simpledisplay.d color.d And play the game! At least on Windows and Linux. On Mac, you need to install XQuartz since I don't have a working Cocoa implementation in simpledisplay.d right now. Fear not, it is on my todo list for 2016, so it will be there eventually. I had to install libglu1-mesa* on Ubuntu. Nicely done though!
Re: IAP Tools for D
On Sunday, 20 December 2015 at 19:16:19 UTC, David Nadlinger wrote: On Sunday, 20 December 2015 at 01:16:46 UTC, Jakob Jenkov wrote: According to Thrift's own docs their binary encoding is not compact. For compact encoding it seems they refer to Protobuf. There seems to be a confusion of terminology here. Thrift has a "Binary" protocol, which is not compact in the sense that it consists of the data fields more or less blitted into a message. There is also a "Compact" protocol, which is also a binary format, but employs things like variable-length integers to reduce size – similar to Protobuf. — David Thanks for the clarification! I couldn't really make out from the Thrift website if they had their own compact protocol, or switched to Protobuf. But now you say that they do have their own compact protocol. Now I know that.
Re: IAP Tools for D
On Sunday, 20 December 2015 at 01:16:46 UTC, Jakob Jenkov wrote: According to Thrift's own docs their binary encoding is not compact. For compact encoding it seems they refer to Protobuf. There seems to be a confusion of terminology here. Thrift has a "Binary" protocol, which is not compact in the sense that it consists of the data fields more or less blitted into a message. There is also a "Compact" protocol, which is also a binary format, but employs things like variable-length integers to reduce size – similar to Protobuf. — David
Re: IAP Tools for D
On Sunday, 20 December 2015 at 17:52:40 UTC, Jakob Jenkov wrote: I just had a look at Cap'n Proto. From what I can see in the encoding spec, performance of ION will be comparable. "If a disease has many treatments, it has no cure". This is certainly true for serialization protocols. The major advantage I see in Cap'n'Proto is the pipelining can do quite a lot to reduce round trip latency. (You don't have to google far to find rants pointing out that latency is often more important than bandwidth in determining throughput.) I was just reading your IAP web site, when I came across "No Stateful Communication" under the heading "What is Wrong With HTTP?". The designers of HTTP would strongly argue that is a major thing HTTP got right, and is the feature primarily responsible for it huge success. Certainly in the realm of IoT HTTP is way too heavy so in that domain I would reach for http://coap.technology/ The use case I keep challenging my colleagues with is So one end or the other dies. Or resets. Or fades and comes back. Or changes batteries. This is the IoT things. It will happen, and you will be required to recover the whole end to end system automatically without manual intervention. What is your plan? Too often the answer is... "We don't have a plan but we will have a wheel restarting the link umm, then a wheel resending the stuff that was lost in the link buffers when the link went down and a, e, maybe wheel restarting Everything when we realise the other side has lost it's state about our connection. And in practice the only wheel that works is shutting everything down and restarting everything up. Suddenly "No stateful communication" is looking really really Good. Coap clearly has thought these issues through.
Re: IAP Tools for D
I suggest to compare also against this [1]. The author, Kenton Varda, was the primary author of Protocol Buffers version 2, which is the version that Google released open source. [1] https://capnproto.org I just had a look at Cap'n Proto. From what I can see in the encoding spec, performance of ION will be comparable. Cap'n Proto claims to be "infinitely faster" than Google Protocol Buffers, but that is only if you do not pack the CP data - in which case it will transfer slower over the network. CP solves that using packing - but then you are back to serialization / deserialization, and the original promise of being "inifinitely faster" is gone. Cap'n Proto also has the "problem" that its messages require an external schema. To iterate through a Cap'n Proto file / message you must already know what data is in it (the schema). Some see this as an advantage, because it forces you to write a schema for your data structure, and you get slightly faster encoding / decoding time. And others see this is a disadvantage because you now have to import schemas, or generate code, in order to read a serialized message. You cannot just step through it like you can with e.g. XML or JSON. I tend to be in this camp - although I am not blind to the arguments in favor of external schemas. Speed matters, but so does ease-of-use. On a network protocol level I tend to disagree with the "distributed object" model. I know Capn Proto tries to explain why this model is not a problem with CP. However, fine grained communication between fine grained distributed objects *is* a performance killer in the long run, regardless of whether you "pipeline" requests. ION is intended to be the message format for our IAP network protocol. IAP will be message oriented, so you can do one-way messaging, request-response, subscriptions (e.g. to a stream), pipelining, routing of messages via intermediate nodes etc. Anyways, if you really want to use Cap'N Proto (or something else) over IAP (+ION) you can just nest a binary message inside an IAP message, and then parse it any way you like when it comes out.
Re: DlangUI
Le 17/12/2015 17:12, Vadim Lopatin a écrit : On Wednesday, 16 December 2015 at 13:32:21 UTC, Suliman wrote: Is it's possible to use some native frontend with dlangui instead of drawing all controls with OpenGL? I really dislike how all OpenGL toolkit looks like. OpenGL is just hardware acceleration for drawing. Resulting picture is the same for both OpenGL and software rendering. DlangUI will never use native controls. It draws all widgets itself. But look and feel can be changed by providing custom theme. You can create theme (set of .xml and .png files) to get DlangUI app looking exactly like native one. Is it's possible to make dlangui fully compatibility with QML to be able easy migrate visual components from Qt solution to dlangui? No. It's not planned at least for now. Having a GUI library fully compatible with QML request property binding support. We have it in DQuick, but as we use lua instead of a javascript VM I am not sure about how it can be possible to be compatible. Translating qml files in lua format will certainly not be enough, because their is some gliches in QML. Sadly we don't work a lot on DQuick, but you can take a look at https://github.com/D-Quick/DQuick
Re: Small minesweeper game in D
On Sunday, 20 December 2015 at 02:11:58 UTC, Adam D. Ruppe wrote: code here: http://arsdnet.net/dcode/minesweeper.d [...] The code looks easy to understand also. You might consider writing this up into a blog post.
Re: IAP Tools for D
I suggest to compare also against this [1]. The author, Kenton Varda, was the primary author of Protocol Buffers version 2, which is the version that Google released open source. [1] https://capnproto.org Will do - at some point. Writing proper benchmarks against other frameworks / encodings takes time though. That's why we have started with MessagePack, CBOR and Google Protocol Buffers.
LDC 0.17.0-alpha1 has been released!
Hi everyone, LDC 0.17.0-alpha1, the LLVM-based D compiler, is available for download! This release is based on the 2.068.2 frontend and standard library and supports LLVM 3.5-3.7. Don't miss to check if your preferred system is supported by this release. We also have a Win64 compiler available! As usual, you can find links to the changelog and the binary packages over at digitalmars.D.ldc: http://forum.dlang.org/thread/zwoixfjuagmwvlyat...@forum.dlang.org Regards, Kai
Re: DlangIDE - initial GDB debugger support
On Friday, 18 December 2015 at 10:41:13 UTC, Vadim Lopatin wrote: On Thursday, 17 December 2015 at 08:27:05 UTC, ZombineDev wrote: GDB support improvements: stack and local variables windows added. This is quick progress! Awesome! I finally have some free time on my hands, so I deleted my workspace and tried to set things up following the How to hack on DlangIDE steps again. After doing that and trying to compile on Debug/Win32 I get output with a linker error: Building Debug\dlangide.exe... Microsoft (R) Incremental Linker Version 14.00.23026.0 Copyright (C) Microsoft Corporation. All rights reserved. "Debug\dlangide.obj,Debug\dlangide.exe,Debug\dlangide.map,C:\Users\Administrator\Documents\DCode\dlangui\Debug\dlangui.lib+" ole32.lib+ kernel32.lib+ user32.lib+ comctl32.lib+ comdlg32.lib+ psapi.lib+ user32.lib+ kernel32.lib/NOMAP/CO/NOI/DELEXE /SUBSYSTEM:WINDOWS LINK : fatal error LNK1104: Datei "Debug\dlangide.obj,Debug\dlangide.exe,Debug\dlangide.map,C:\Users\Administrator\Documents\DCode\dlangui\Debug\dlangui.lib+" kann nicht geöffnet werden. Building Debug\dlangide.exe failed! The dlangui project builds correctly btw (it's the only one in the solution that does). If I change to Debug/x64 I get a popup from VS telling me that it couldn't find the right project to launch since there are no startup projects set (even though I did set DlangIDE as startup project and it shows). If I explicitly tell it to build dlangide (right-click the project > build) I get another linker error telling me it cannot open "phobos64.lib". I do have phobos64.lib in the normal directory it is in after installation (ie windows/lib64), but for some reason it doesn't pick up on that. I even tried setting PATH directly to it, but that also didn't help. I started up ProcessMonitor and looked at where it was searching for phobos64.lib and the results were pretty worrying: C:\Users\Administrator\Documents\DCode\dlangide\phobos64.lib C:\Users\Administrator\Documents\DCode\dlangide\phobos64.lib C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64\phobos64.lib C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64\phobos64.lib C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10150.0\ucrt\x64\phobos64.lib C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10150.0\ucrt\x64\phobos64.lib C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64\phobos64.lib C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64\phobos64.lib C:\Users\Administrator\Documents\DCode\dlangide\phobos64.lib C:\Users\Administrator\Documents\DCode\dlangide\phobos64.lib C:\Users\Administrator\Documents\DCode\dlangide\phobos64.lib Where DCode\dlangide is obviously the path where I set things up. The rest seem to be things coming from automatic configuration VS has done at some point. I'm not sure how or where I can tell it to also look into my dmd installation paths. Now instead of going for a proper fix I simply attempted copying the phobos64.lib to the dlangide directory just to see if this would get it to compile: Turns out it doesn't. When trying to compile like that, I get a popup saying std.utf.UTFException@c:\s\d\rainers\phobos\std\utf.d(1109): Invalid UTF-8 sequence (at index 1) Is this an ICE? Is my Visual D installation broken (I did reinstall Visual D a few times by now already)? I'm using dmd 2.069.2 which is the most recent version to my knowledge. Pretty stumped about all of this and this looks a lot like something in my VS or VD setup is horribly broken (especially looking at the Win32 linker errors and the lack of properly configured search paths for phobos64.lib), but I'm not sure what exactly or how to go about fixing it/narrowing down the problem. Any help in somehow getting this all to build would be much appreciated. Oh and of course "dub run" works just fine.
Re: Small minesweeper game in D
On Sunday, 20 December 2015 at 06:26:43 UTC, stew wrote: "D-Invaders" under: http://dgame-dev.de/index.php?controller=wip Nice! Dgame looks to be a pretty nice little lib too. a) (the most important for me) I can be as productive in D as I am in Python but still keep my static typing and native performance I get with C/C++. My D productivity is so much higher than I am with ruby and python it isn't even a competition...
Re: dqml for Ubuntu Unity apps
On Sunday, 20 December 2015 at 13:25:48 UTC, Karabuta wrote: I can't seem to wrap my head around using dqml and D backend for Ubuntu Unity app development. They have this UnityComponents qml module they use for UI in their SDK plus a C++ backend. Has anyone made effort on using dqml and D backend? Sample code or any help will be sweet!! I really dislike C++, And Canonical's C++ coding style and naming convention makes it worst. Sorry the forum is a little bit confusing. Too late until I realised I posted in the wrong place and I can't find a way to fix it.!Responsive WD.
dqml for Ubuntu Unity apps
I can't seem to wrap my head around using dqml and D backend for Ubuntu Unity app development. They have this UnityComponents qml module they use for UI in their SDK plus a C++ backend. Has anyone made effort on using dqml and D backend? Sample code or any help will be sweet!! I really dislike C++, And Canonical's C++ coding style and naming convention makes it worst.
dqml f Ubforun
I can't
Re: MurmurHash3
On Saturday, 19 December 2015 at 22:15:14 UTC, Guillaume Chatelet wrote: The last version of the code is available here and is feature complete AFAICT https://github.com/gchatelet/murmurhash3_d/blob/master/murmurhash3.d Last concern, I declared blockSize in bytes where std.digest.digest says it should be in bits. Why does it need to be bits ? It looks like HMAC (which needs it) is explicitly making sure it's always a multiple of 8 bits. I was the one who introduced it, and I chose bits instead of bytes because I didn't want to exclude the possibility that there are hashing algos that have a block size not divisible by 8. The algorithms are usually described in terms of bits, not bytes, so it's not unconceivable that such hash functions exist, though I don't know any. (Of course, HMAC wouldn't work with those, but that doesn't mean that other algorithms couldn't.) I'd suggest you change `blockSize` to the number of bits, and introduce an enum `blockSizeInBytes` for internal use.
Re: IAP Tools for D
On Sunday, 20 December 2015 at 01:16:46 UTC, Jakob Jenkov wrote: [...] That depends on what API you use, and how much "meta data" (e.g. class names and property names) you write in the serialized ION data. ION is quite flexible about how much meta you want to include. [...] I suggest to compare also against this [1]. The author, Kenton Varda, was the primary author of Protocol Buffers version 2, which is the version that Google released open source. [1] https://capnproto.org /Paolo