Jump to page: 1 2
Thread overview
Mono-D v0.4.7 - Optlink output analysis / Symbol name demangling
Jan 12, 2013
alex
Jan 12, 2013
Jacob Carlborg
Jan 13, 2013
alex
Jan 13, 2013
Jacob Carlborg
Jan 13, 2013
alex
Re: Mono-D v0.4.8
Jan 15, 2013
alex
Jan 15, 2013
timotheecour
Jan 16, 2013
F i L
Jan 16, 2013
alex
Jan 16, 2013
timotheecour
Jan 16, 2013
timotheecour
Jan 16, 2013
alex
Jan 16, 2013
alex
Jan 16, 2013
F i L
Jan 16, 2013
Rory McGuire
January 12, 2013
Hi everyone,

Just released a new version - For info, see
http://mono-d.alexanderbothe.com



Cheers,
Alex
January 12, 2013
On 2013-01-12 15:28, alex wrote:
> Hi everyone,
>
> Just released a new version - For info, see
> http://mono-d.alexanderbothe.com

I just tried Mono-D again and I'm having some problems.

* Running an application

When I try to run a simple Hello World application it opens a new empty terminal, nothing is printed. I also though that MonoDevelop would run the application and display its output in an internal console view.

* Go to definition and autocompletion

I have no idea how good these features are supposed to be but to me they work very inconsistently. I have one project where go to definition basically only works for what's in the same file. I have another project where it seems to work fine, mostly.

There is no fancy mixin or template code in these projects.

A few questions:

* Does Mono-D do autocompletion or go to definition from external files like files from Phobos and druntime?

* Can Mono-D resolve type inference?

I'm using Mac OS X.

-- 
/Jacob Carlborg
January 13, 2013
On Saturday, 12 January 2013 at 17:44:54 UTC, Jacob Carlborg
wrote:
> On 2013-01-12 15:28, alex wrote:
>> Hi everyone,
>>
>> Just released a new version - For info, see
>> http://mono-d.alexanderbothe.com
>
> I just tried Mono-D again and I'm having some problems.

https://github.com/aBothe/Mono-D/issues

>
> * Running an application
>
> When I try to run a simple Hello World application it opens a new empty terminal, nothing is printed. I also though that MonoDevelop would run the application and display its output in an internal console view.

Uses xterm (at least on linux) to display stuff in an external
console. Definitely wasn't my idea. There probably is the
possibility to redirect stin/out/err streams into some kind of
internal log or so - but then probably the question will rise up
whether one can pass input to stdin. Haven't tried it out "yet" -
yes, "yet" - though Mono-D exists >1.5 years.
>
> * Go to definition and autocompletion
>
> I have no idea how good these features are supposed to be but to me they work very inconsistently. I have one project where go to definition basically only works for what's in the same file. I have another project where it seems to work fine, mostly.

That's where D magic vs. my programming ability comes into the
game. I can't and I won't guarantee that both works in all cases
(of course not) - all I can do is to make it run in as many cases
as possible. There might be couple of strange or uncommon (yes,
even common) situations where I haven't thought that these could
ever occur. In such cases, please note them down somewhere and
tell me what's not working as expected in particular.
>
> There is no fancy mixin or template code in these projects.

Did you really expect I had finished implementing CTFE so all
mixins etc could be resolved? Again, please tell me where it's
not working. Since I spend most of my coding time working Mono-D
I don't really have time to manage D projects.
Completion-related issues may get straight to
https://github.com/aBothe/D_Parser please.

> A few questions:
>
> * Does Mono-D do autocompletion or go to definition from external files like files from Phobos and druntime?

Yes. And it works for me(tm) - whereas I don't have any dimension
of what modules / completion features _advanced_ D users make use
of. I mean, as I said, I can't test everything - I need users to
do this for me :P
>
> * Can Mono-D resolve type inference?

Yes.
>
> I'm using Mac OS X.

This shouldn't be a problem.
January 13, 2013
> * Does Mono-D do autocompletion or go to definition from external files like files from Phobos and druntime?

http://mono-d.alexanderbothe.com/?page_id=9#mono-d

Have you entered the include paths in the D options panel? If so,
sorry that it isn't able to parse Phobos by random. Shouldn't
happen after a restart of MonoDevelop.
January 13, 2013
On 2013-01-13 02:10, alex wrote:

> https://github.com/aBothe/Mono-D/issues

Since I didn't know what the exact expected functionality was I wanted to discuss here first.

> Uses xterm (at least on linux) to display stuff in an external
> console. Definitely wasn't my idea. There probably is the
> possibility to redirect stin/out/err streams into some kind of
> internal log or so - but then probably the question will rise up
> whether one can pass input to stdin. Haven't tried it out "yet" -
> yes, "yet" - though Mono-D exists >1.5 years.

I see, so it's a problem with MonoDevelop. But I don't get any output, is that also an issue with MonoDevelop?

> That's where D magic vs. my programming ability comes into the
> game. I can't and I won't guarantee that both works in all cases
> (of course not) - all I can do is to make it run in as many cases
> as possible. There might be couple of strange or uncommon (yes,
> even common) situations where I haven't thought that these could
> ever occur. In such cases, please note them down somewhere and
> tell me what's not working as expected in particular.

I'll try and do that.

> Did you really expect I had finished implementing CTFE so all
> mixins etc could be resolved?

Absolutely not. That's way I said I don't use any of these language constructs.

> Completion-related issues may get straight to
> https://github.com/aBothe/D_Parser please.

Will do.

I've reported a couple of issues now.

-- 
/Jacob Carlborg
January 15, 2013
On Saturday, 12 January 2013 at 14:28:46 UTC, alex wrote:
> Hi everyone,
>
> Just released a new version - For info, see
> http://mono-d.alexanderbothe.com
>
>
>
> Cheers,
> Alex

Got to bump myself up again. Released a new version - this time
with improved code indentation.
January 15, 2013
On Tuesday, 15 January 2013 at 21:12:21 UTC, alex wrote:
> On Saturday, 12 January 2013 at 14:28:46 UTC, alex wrote:
>> Hi everyone,
>>
>> Just released a new version - For info, see
>> http://mono-d.alexanderbothe.com
>>
>>
>>
>> Cheers,
>> Alex
>
> Got to bump myself up again. Released a new version - this time
> with improved code indentation.

when upgrading to 0.4.8 i get the error below. Then monodevelop
crashes and quits.
so it is now unusable.
Also, can you describe what you mean by "with improved code
indentation" ? is that code formatting? I've been long hoping for
this!
Thanks!


An error has occurred

Error while updating status of command:
MonoDevelop.Ide.Commands.ProjectCommands.Run

System.MissingMethodException: Method not found:
'MonoDevelop.Projects.ProjectConfiguration.get_ParentItem'.
  at
MonoDevelop.D.DProjectConfiguration.UpdateGlobalVersionIdentifiers
(MonoDevelop.D.DProject prjOverride) [0x00000] in <filename
unknown>:0
  at MonoDevelop.D.DProject..ctor
(MonoDevelop.Projects.ProjectCreateInformation info,
System.Xml.XmlElement projectOptions) [0x00000] in <filename
unknown>:0
  at MonoDevelop.D.DProjectBinding.CreateProject
(MonoDevelop.Projects.ProjectCreateInformation info,
System.Xml.XmlElement projectOptions) [0x00000] in <filename
unknown>:0
  at MonoDevelop.D.DProjectBinding.CreateSingleFileProject
(System.String sourceFile) [0x00000] in <filename unknown>:0
  at MonoDevelop.Projects.ProjectService.CreateSingleFileProject
(System.String file) [0x0002e] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs:488
  at MonoDevelop.Ide.ProjectOperations.CanExecuteFile
(System.String file, MonoDevelop.Projects.ExecutionContext
context) [0x00000] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs:1007
  at MonoDevelop.Ide.ProjectOperations.CanExecuteFile
(System.String file, IExecutionHandler handler) [0x00011] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs:1002
  at MonoDevelop.Ide.Gui.Document.CanRun (IExecutionHandler
handler) [0x00000] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Document.cs:446
  at MonoDevelop.Ide.Commands.RunHandler.CanRun (IExecutionHandler
executionHandler) [0x00037] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Commands/ProjectCommands.cs:270
  at MonoDevelop.Ide.Commands.RunHandler.Update
(MonoDevelop.Components.Commands.CommandInfo info) [0x00048] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Commands/ProjectCommands.cs:262
  at MonoDevelop.Components.Commands.CommandHandler.InternalUpdate
(MonoDevelop.Components.Commands.CommandInfo info) [0x00000] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Commands/CommandHandler.cs:47
  at
MonoDevelop.Components.Commands.CommandManager.DefaultUpdateCommandInfo
(MonoDevelop.Components.Commands.ActionCommand cmd,
MonoDevelop.Components.Commands.CommandInfo info) [0x00079] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Commands/CommandManager.cs:1257
  at MonoDevelop.Components.Commands.CommandManager.GetCommandInfo
(System.Object commandId,
MonoDevelop.Components.Commands.CommandTargetRoute targetRoute)
[0x001a9] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Commands/CommandManager.cs:1223
January 16, 2013
Nice work, Alex, but something broke my GDB debugger support... :-\ I'm not sure if it's something specific to Arch Linux or not, so can anyone confirm that their Mono-D is work with GDB fine? Mine reports:

warning: Could not load shared library symbols for linux-vdso.so.1.\nDo you need \"set solib-search-path\" or \"set sysroot\

[Thread debugging using libthread_db enabled]
Using host libthread_db library \"/usr/lib/libthread_db.so.1\".
January 16, 2013
On Tuesday, 15 January 2013 at 21:38:55 UTC, timotheecour wrote:
> On Tuesday, 15 January 2013 at 21:12:21 UTC, alex wrote:
>> On Saturday, 12 January 2013 at 14:28:46 UTC, alex wrote:
>>> Hi everyone,
>>>
>>> Just released a new version - For info, see
>>> http://mono-d.alexanderbothe.com
>>>
>>>
>>>
>>> Cheers,
>>> Alex
>>
>> Got to bump myself up again. Released a new version - this time
>> with improved code indentation.
>
> when upgrading to 0.4.8 i get the error below. Then monodevelop
> crashes and quits.
> so it is now unusable.
> Also, can you describe what you mean by "with improved code
> indentation" ? is that code formatting? I've been long hoping for
> this!
> Thanks!
>
>
> An error has occurred
>
> Error while updating status of command:
> MonoDevelop.Ide.Commands.ProjectCommands.Run
>
> System.MissingMethodException: Method not found:
> 'MonoDevelop.Projects.ProjectConfiguration.get_ParentItem'.

Awesome, again these problems - which MD version do you've got
installed?
3.0.6 stable? Then please switch to the
mono-d.alexanderbothe.com/stableMD repository
3.1.0 beta? Then switch to the mono-d.alexanderbothe.com repo.

If you're having a Mac system and try to use 3.1.1, please
"downgrade" to 3.0.6 stable in order to use the /stableMD
repository. I promise, everything will work fine then - I've
tested it on Win7 and Mint 13 x86 - It's been launched flawlessly
there.

With code indent I'm not meaning code formatting but the
automated indentation generation after e.g. you've pressed
<return> and it inserts 3 tabs because you're in a method of a
class of an other class.

@Fil: I haven't changed anything regarding GDB support (yet). I'm
sorry but I get myself desperate too about what the guys from MD
tend to do sometimes. ;)
-- What is linux-vdso.so.1 ?
January 16, 2013
A)
> Awesome, again these problems - which MD version do you've got
> installed?
> 3.0.6 stable? Then please switch to the
> mono-d.alexanderbothe.com/stableMD repository
> 3.1.0 beta? Then switch to the mono-d.alexanderbothe.com repo.

OK, that made it work. Very low priority, but maybe it's possible
to provide 1 package that would work in both cases (if it were D,
something like version(MD_3_0_6){}else version(MD_310_beta)
else{...} but i guess it's C#).

B)
> With code indent I'm not meaning code formatting but the
> automated indentation generation after e.g. you've pressed
> <return> and it inserts 3 tabs because you're in a method of a
> class of an other class.

thanks for finally tackling that! Now that the hard part is done,
couldn't there be a way to reindent the entire file (or
selection)  upon request (control + I on OSX for format doc) by
calling this function on each line or something similar?
(temporary hack and might be a bit slow but a MUCH needed
feature).

C)
A question about your choice for C# vs D: wouldn't it have been
easier to write the bulk of your code in D and interface with the
MD codebase through some C wrappers? Assuming there's less than
100 or so functions you need to interface with... That way you'd
be able to benefit from hopefully soon to be written code
formatting, parsers, etc.


D)
BUG: I unchecked the option "insert * or + at comment new line"
but it still inserts "+" after a new line in a "/+" comment.

E)
BUG: create a new file, open it in MD (by double clicking for
example), press a key (eg "a"), it gives the following error (see
below). We can press OK and it'll work, but that's still a bug:

An error has occurred
Error in text editor extension chain
System.ArgumentNullException: Argument cannot be null.
Parameter name: key
   at
System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.String]].TryGetValue
(System.String key, System.Collections.Generic.List`1& value)
[0x00000] in <filename unknown>:0
   at
D_Parser.Resolver.ASTScanner.AbstractVisitor.HandleNonAliasedImport
(D_Parser.Dom.Import imp, MemberFilter VisibleMembers) [0x00000]
in <filename unknown>:0
   at
D_Parser.Resolver.ASTScanner.AbstractVisitor.HandleDBlockNode
(D_Parser.Dom.DBlockNode dbn, MemberFilter VisibleMembers,
Boolean takePublicImportsOnly) [0x00000] in <filename unknown>:0
   at D_Parser.Resolver.ASTScanner.AbstractVisitor.scanChildren
(D_Parser.Dom.DBlockNode curScope, MemberFilter VisibleMembers,
System.Boolean& breakOnNextScope, Boolean publicImports, Boolean
isBaseClass, Boolean isMixinAst, Boolean takeStaticChildrenOnly)
[0x00000] in <filename unknown>:0
   at D_Parser.Resolver.ASTScanner.AbstractVisitor.ScanBlock
(IBlockNode curScope, CodeLocation Caret, MemberFilter
VisibleMembers, System.Boolean& breakOnNextScope) [0x00000] in
<filename unknown>:0
   at D_Parser.Resolver.ASTScanner.AbstractVisitor.ScanBlockUpward
(IBlockNode curScope, CodeLocation Caret, MemberFilter
VisibleMembers) [0x00000] in <filename unknown>:0
   at
D_Parser.Resolver.ASTScanner.AbstractVisitor.IterateThroughScopeLayers
(CodeLocation Caret, MemberFilter VisibleMembers) [0x00000] in
<filename unknown>:0
   at
D_Parser.Resolver.ASTScanner.MemberCompletionEnumeration.EnumAllAvailableMembers
(ICompletionDataGenerator cdgen, IBlockNode ScopedBlock,
IStatement ScopedStatement, CodeLocation Caret,
D_Parser.Misc.ParseCacheList CodeCache, MemberFilter
VisibleMembers, D_Parser.Resolver.ConditionalCompilationFlags
compilationEnvironment) [0x00000] in <filename unknown>:0
   at
D_Parser.Completion.CtrlSpaceCompletionProvider.BuildCompletionDataInternal
(IEditorData Editor, System.String EnteredText) [0x00000] in
<filename unknown>:0
   at
D_Parser.Completion.AbstractCompletionProvider.BuildCompletionData
(IEditorData Editor, System.String EnteredText) [0x00000] in
<filename unknown>:0
   at
D_Parser.Completion.AbstractCompletionProvider.BuildCompletionData
(ICompletionDataGenerator dataGen, IEditorData editor,
System.String EnteredText) [0x00000] in <filename unknown>:0
   at
MonoDevelop.D.Completion.DCodeCompletionSupport.BuildCompletionData
(MonoDevelop.Ide.Gui.Document EditorDocument, IAbstractSyntaxTree
SyntaxTree, MonoDevelop.Ide.CodeCompletion.CodeCompletionContext
ctx, MonoDevelop.Ide.CodeCompletion.CompletionDataList l, Char
triggerChar) [0x00000] in <filename unknown>:0
   at
MonoDevelop.D.DEditorCompletionExtension.HandleCodeCompletion
(MonoDevelop.Ide.CodeCompletion.CodeCompletionContext
completionContext, Char triggerChar, System.Int32&
triggerWordLength) [0x00000] in <filename unknown>:0
   at
MonoDevelop.Ide.Gui.Content.CompletionTextEditorExtension.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x000f0] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/CompletionTextEditorExtension.cs:126
   at MonoDevelop.D.DEditorCompletionExtension.KeyPress (Key key,
Char keyChar, ModifierType modifier) [0x00000] in <filename
unknown>:0
   at MonoDevelop.Ide.Gui.Content.TextEditorExtension.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x00013] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/TextEditorExtension.cs:109
   at
MonoDevelop.D.Formatting.Indentation.DTextEditorIndentation.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x00000] in
<filename unknown>:0
   at MonoDevelop.Ide.Gui.Content.TextEditorExtension.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x00013] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/TextEditorExtension.cs:109
   at MonoDevelop.Ide.Gui.Content.TextEditorExtension.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x00013] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/TextEditorExtension.cs:109
   at MonoDevelop.Ide.Gui.Content.TextEditorExtension.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x00013] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/TextEditorExtension.cs:109
   at MonoDevelop.Ide.Gui.Content.TextEditorExtension.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x00013] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/TextEditorExtension.cs:109
   at MonoDevelop.Ide.Gui.Content.TextEditorExtension.KeyPress
(Key key, Char keyChar, ModifierType modifier) [0x00013] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/TextEditorExtension.cs:109
   at
MonoDevelop.SourceEditor.ExtensibleTextEditor.ExtensionKeyPress
(Key key, UInt32 ch, ModifierType state) [0x00000] in
/Users/builder/data/lanes/monodevelop-lion-monodevelop-3.0-series/90a53d19/source/monodevelop/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/ExtensibleTextEditor.cs:236
« First   ‹ Prev
1 2