Re: D Profile Viewer

2016-06-01 Thread Andrew via Digitalmars-d-announce
I've updated the d-profile-viewer.  It now supports identifiers 
that are not mangles - are these 'extern "C"'?


Its on dub:
   dub fetch d-profile-viewer
Its on bitbucket:
   https://bitbucket.org/andrewtrotman/d-profile-viewer

Thanks go to those who identified the bugs.

Andrew.




Re: A ready to use Vulkan triangle example for D

2016-06-01 Thread Manuel König via Digitalmars-d-announce
I now have initial window resizing added to your example:

https://github.com/Manuel-Koenig/VulkanTriangleD

It's still pretty much your code, but I structured it into several
functions. Window resizing does work in the sense that the triangle
gets stretched and redrawn, but the validation layer is still
complaining.


Re: D Embedded Database v0.1 Released

2016-06-01 Thread Stefan Koch via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 16:03:09 UTC, Piotrek wrote:

On Wednesday, 1 June 2016 at 09:41:43 UTC, Stefan Koch wrote:

Providing a nice query interface and so on.


Do you mean any form of DSL (as it's SQL for SQLite)?

I hope to get by without a DSL.
And instead to something nice with UFCS.



Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-06-01 Thread Vadim Lopatin via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 15:20:15 UTC, Bruno Medeiros wrote:


Impressive work!

I'm currently working on improving integration in VS. For 
this, I also
needed a static library version of MagoNatDE. I just pushed my 
changes,

I hope it doesn't break anything for you.

If you want to stay in sync, please consider a PR with your 
changes to

mago.



Can Mago debug programs with debug information in the COFF 
format? If not, any chance this could be added, or is it a big 
task?


I didn't check but it should work.




Re: D Embedded Database v0.1 Released

2016-06-01 Thread Piotrek via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 09:41:43 UTC, Stefan Koch wrote:

Providing a nice query interface and so on.


Do you mean any form of DSL (as it's SQL for SQLite)?

Well I can see the non-realtime property being a factor for 
every database.


And this is actually disadvantage of those databases ;)

BTW1. Thank to the one who posted my reply on Reddit :)

BTW2. Somebody on the Reddit suggested the LMDB is an equivalent 
of this DB. However I fear it's not true. To me, LMDB is a 
key/value storage backed by a memory-mapped file. However my DB 
will have more features including:


- internal references (no data replication - aka database 
normalization)

- indexes
- transparent data compression

and more :)

Piotrek


Re: D Embedded Database v0.1 Released

2016-06-01 Thread Piotrek via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 06:47:36 UTC, Suliman wrote:
I still think that gitlab is bad place for DB. People prefer 
look sources at git or in Google. So DB should have site or git 
mirror to be popular.


I don't think I fully understand what you mean.

This is a D library not a separate product. Also what is the 
difference between git mirror and Gitlab?


Piotrek


Re: D Embedded Database v0.1 Released

2016-06-01 Thread Piotrek via Digitalmars-d-announce

On Tuesday, 31 May 2016 at 20:31:26 UTC, Dmitri wrote:
This might provide useful information if you're aiming for 
something like sqlite (hopefully not offtopic):


https://github.com/cznic/ql

It's an embeddable database engine in Go with goals similar to 
yours and at an advanced stage.


The key difference is that ql is an SQL database and mine is not. 
I know it may sound scary, but I think an SQL layer is a burden 
when the D power is at hand (unless you need a DB running on a 
separate machine than the rest of the application).


Piotrek



Re: mago-mi: GDB/MI compatible frontend for Mago debugger

2016-06-01 Thread Bruno Medeiros via Digitalmars-d-announce

On 24/05/2016 07:34, Rainer Schuetze wrote:



On 17.05.2016 10:06, Vadim Lopatin wrote:

Hello,

I'm working on GDB/MI compatible interface for Mago debugger on Windows.

GDB/MI is line based machine interface for debugger. IDEs are using GDB
via this interface.

GDB/MI docs: https://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI.html

Project page (mago fork) https://github.com/buggins/mago

Currently mago-mi supports subset of GDB commands enough for current
DlangIDE functionality.

Tested on DMD generated 32bit executables.

See readme details list of implemented commands:
https://github.com/buggins/mago/tree/master/MagoMI/mago-mi

Difference from baseline https://github.com/rainers/mago files are
minimal:
- Static linking for MagoNatDE and MagoNatEE
- Disabled some Mago debug logging

Building mago-mi from source is easy. I've tried MS Visual Studio 2013
and 2015. Don't forget to edit properties in mago/PropSheets. Buld
mago-mi project.

Since DlangIDE v0.6.1, it includes prebuilt mago-mi.exe (it will be
copied into bin directory by dub build) and default Debugger settings
are changed from gdb to mago-mi by default on Windows. If you already
used DlangIDE on your computer, check Edit/Preferences/Debugger setting
- change to "mago-mi" if "gdb" is specified.

If you want to try mago-mi and DlangIDE which is using it, you can
download binaries from
https://sourceforge.net/projects/crengine/files/DlangUI/dlangide-v061-magomi-v010-x86.zip/download

(or just sync to latest dlangide and use `dub run`). Bundle includes
DlangIDE, mago-mi, dub, and sample workspaces (helloworld and tetris).
Download size is 5.4Mb (seems small enough for IDE+debugger).

I hope my work will be useful for other IDE developers who is targeting
on Windows.
(Any IDE which uses gdb/mi interface)
I tried gdb and lldb-mi before, but did not managed to find working
compiler + debugger configuration. (Best combination was gdb + gdc, but
it was showing global variables instead of locals. For lldb-mi, I
haven't managed to find compiler which produces compatible debug info).

Best regards,
Vadim



Impressive work!

I'm currently working on improving integration in VS. For this, I also
needed a static library version of MagoNatDE. I just pushed my changes,
I hope it doesn't break anything for you.

If you want to stay in sync, please consider a PR with your changes to
mago.



Can Mago debug programs with debug information in the COFF format? If 
not, any chance this could be added, or is it a big task?


--
Bruno Medeiros
https://twitter.com/brunodomedeiros


Re: PowerNex - New release of my D kernel

2016-06-01 Thread Wild via Digitalmars-d-announce
There is a Q about the development of the kernel over at 
https://www.reddit.com/r/programming/comments/4lwtn9/first_release_of_powernex_an_os_kernel_written_in/


Re: DDT 1.0.0 released.

2016-06-01 Thread Bruno Medeiros via Digitalmars-d-announce

On 17/05/2016 15:04, Bruno Medeiros wrote:

New DDT release out: dfmt support, performance improvements to semantic
operations, more build command customization, fixes. Please see
changelog for full list:

https://github.com/DDT-IDE/DDT/releases/tag/v1.0.0

Since DDT has generally been quite stable, and since the current release
is very close to the end-game vision I had for a D IDE - at least as far
as my free time would allow to create - I've decided to version this as
1.0. I've been working for nearly 8 years on this project after all
(with some intermission periods), so I guess 1.0 was a bit due... O.o'

I expect it will mainly be small updates from now on, not any major new
features (other than perhaps DCD support).



Follow up with a few minor fixes and changes:
https://github.com/DDT-IDE/DDT/releases/tag/v1.0.1

--
Bruno Medeiros
https://twitter.com/brunodomedeiros


Re: C++ to D converter based on clang

2016-06-01 Thread Daniel Murphy via Digitalmars-d-announce

On 1/06/2016 9:40 PM, Jacob Carlborg wrote:

Yes I could. Like I could participate to VisualD/cpp2d or magicport2
projects.


Anything that is not using a real front end is a lost cause.



Haha that really depends on your goals.



Re: Button: A fast, correct, and elegantly simple build system.

2016-06-01 Thread Jacob Carlborg via Digitalmars-d-announce

On 2016-06-01 08:48, Jason White wrote:


Actually, SQLite more of a run-time dependency because etc.c.sqlite3
comes with DMD.

$ ldd button
 linux-vdso.so.1 (0x7ffcc474c000)
--> libsqlite3.so.0 => /usr/lib/libsqlite3.so.0 (0x7f2d13641000)
 libpthread.so.0 => /usr/lib/libpthread.so.0 (0x7f2d13421000)
 libm.so.6 => /usr/lib/libm.so.6 (0x7f2d13119000)
 librt.so.1 => /usr/lib/librt.so.1 (0x7f2d12f11000)
 libdl.so.2 => /usr/lib/libdl.so.2 (0x7f2d12d09000)
 libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x7f2d12af1000)
 libc.so.6 => /usr/lib/libc.so.6 (0x7f2d12749000)
 /lib64/ld-linux-x86-64.so.2 (0x7f2d13951000)


So it's both a build and runtime dependency ;)

--
/Jacob Carlborg


Re: C++ to D converter based on clang

2016-06-01 Thread Jacob Carlborg via Digitalmars-d-announce

On 2016-06-01 10:55, Loïc HAMOT wrote:


Hello Jacob.
It think DStep and CPP2D have very different objectives.
DStep target C and Objective-C headers, but CPP2D target C++ full source
code.


No. Targeting C++ is not against the objectives of DStep. C and 
Objective-C just happens to be what DStep currently supports. It make 
sense to start with C since it's a subset of both Objective-C and C++. 
Also, when I started the C++ support in D didn't exist or was very limited.



Maybe do you think I could participate to DStep in order to extend it to
full C++ source handling?


Yes ;)


Yes I could. Like I could participate to VisualD/cpp2d or magicport2
projects.


Anything that is not using a real front end is a lost cause.


But the reason why I didn't is I want to test the feasibility of a C++
to D conversion using the clang parser.


I don't see a reason why it was necessary to create a completely new 
project for that.



Now, I think I passed the proof of concept step, and merge my work in an
other project is not out of the question.


Not sure how easy it would be to integrate in DStep. I'm guessing you're 
using the C++ API while DStep is written in D and is using the C API.


--
/Jacob Carlborg


Re: D Embedded Database v0.1 Released

2016-06-01 Thread Stefan Koch via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 05:45:49 UTC, Piotrek wrote:

On Tuesday, 31 May 2016 at 22:08:00 UTC, Stefan Koch wrote:
Nice effort. How would you like collaboration with the 
SQLite-D project.


Thanks. Correct me if I'm wrong but SQLite-D is a compile time 
SQLite3 file reader. If so, I can predict not many common 
parts. Maybe the one would be a data deserialization component 
however I didn't check how it's done in SQLite-D.



I intend for it to be a complete replacement for SQLite.
Therefore I can see facing many common problems.
Keeping B-Trees roughly balanced.
Providing a nice query interface and so on.

With has similar goals albeit file format compatible to SQLite.


When I was selecting possible file format I was thinking about 
SQLite one. I am actually a fan of the SQLite project. However 
there are some shortcomings present in current SQlite3 format:


- SQlite3 is not really a one file storage (i.e. journal file)
- it gets fragmented very quickly (check out design goals for 
SQLite4)
- it's overcomplicated and non deterministic with respect to 
real time software
- it has unnecessary overhead because every column is actually 
a variant type


Add to this the main goal of replacing SQL with D 
ranges+algorithms.

This is SQLite-D's goal as well.
In result it turned out it would be great to have an alternate 
format.


Piotrek


Well I can see the non-realtime property being a factor for every 
database.





Re: C++ to D converter based on clang

2016-06-01 Thread Loïc HAMOT via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 06:45:09 UTC, Jacob Carlborg wrote:

On 2016-05-28 13:02, Loïc HAMOT wrote:

Hello,

I am working on a C++ to D converter.
The project is opensource, on github : 
https://github.com/lhamot/CPP2D


Is there a reason to reinvent the wheel instead of contributing 
to DStep [1]?


[1] https://github.com/jacob-carlborg/dstep


Hello Jacob.
It think DStep and CPP2D have very different objectives.
DStep target C and Objective-C headers, but CPP2D target C++ full 
source code.


Maybe do you think I could participate to DStep in order to 
extend it to full C++ source handling?
Yes I could. Like I could participate to VisualD/cpp2d or 
magicport2 projects.


But the reason why I didn't is I want to test the feasibility of 
a C++ to D conversion using the clang parser.
Now, I think I passed the proof of concept step, and merge my 
work in an other project is not out of the question.




Re: Button: A fast, correct, and elegantly simple build system.

2016-06-01 Thread Jason White via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 06:41:17 UTC, Jacob Carlborg wrote:
So, Lua is a build dependency? Seems that Sqlite is a build 
dependency as well.


Actually, SQLite more of a run-time dependency because 
etc.c.sqlite3 comes with DMD.


$ ldd button
linux-vdso.so.1 (0x7ffcc474c000)
--> libsqlite3.so.0 => /usr/lib/libsqlite3.so.0 
(0x7f2d13641000)
libpthread.so.0 => /usr/lib/libpthread.so.0 
(0x7f2d13421000)

libm.so.6 => /usr/lib/libm.so.6 (0x7f2d13119000)
librt.so.1 => /usr/lib/librt.so.1 (0x7f2d12f11000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x7f2d12d09000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x7f2d12af1000)
libc.so.6 => /usr/lib/libc.so.6 (0x7f2d12749000)
/lib64/ld-linux-x86-64.so.2 (0x7f2d13951000)


Re: D Embedded Database v0.1 Released

2016-06-01 Thread Suliman via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 05:55:43 UTC, Piotrek wrote:

On Wednesday, 1 June 2016 at 05:45:49 UTC, Piotrek wrote:
BTW. Would someone be so kind and post the above paragraph on 
Reddit under a comment about Sqlite db. I'm not registered 
there.


I mean this thread of course:

https://www.reddit.com/r/programming/comments/4lwufi/d_embedded_database_v01_released/

Piotrek


I still think that gitlab is bad place for DB. People prefer look 
sources at git or in Google. So DB should have site or git mirror 
to be popular.


Re: C++ to D converter based on clang

2016-06-01 Thread Jacob Carlborg via Digitalmars-d-announce

On 2016-05-28 13:02, Loïc HAMOT wrote:

Hello,

I am working on a C++ to D converter.
The project is opensource, on github : https://github.com/lhamot/CPP2D


Is there a reason to reinvent the wheel instead of contributing to DStep 
[1]?


[1] https://github.com/jacob-carlborg/dstep

--
/Jacob Carlborg


Re: Button: A fast, correct, and elegantly simple build system.

2016-06-01 Thread Jacob Carlborg via Digitalmars-d-announce

On 2016-06-01 06:34, Jason White wrote:


Building it only requires dmd+phobos+dub.

Why is having dependencies so damaging for build systems? Does it really
matter with a package manager like Dub? If there is another thread that
answers these questions, please point me to it.

The two dependencies Button itself has could easily be moved into the
same project. I kept them separate because they can be useful for
others. These are the command-line parser and IO stream libraries.

As for the dependency on Lua, it is statically linked into a separate
executable (called "button-lua") and building it is dead-simple (just
run make). Using the Lua build description generator is actually
optional, it's just that writing build descriptions in JSON would be
horribly tedious.


So, Lua is a build dependency? Seems that Sqlite is a build dependency 
as well.


--
/Jacob Carlborg


Re: D Embedded Database v0.1 Released

2016-06-01 Thread Piotrek via Digitalmars-d-announce

On Wednesday, 1 June 2016 at 05:45:49 UTC, Piotrek wrote:
BTW. Would someone be so kind and post the above paragraph on 
Reddit under a comment about Sqlite db. I'm not registered 
there.


I mean this thread of course:

https://www.reddit.com/r/programming/comments/4lwufi/d_embedded_database_v01_released/

Piotrek