Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Aug 21 20:27
    rsmckinney commented #116
  • Aug 21 20:26
    rsmckinney commented #116
  • Aug 21 15:13
    StrangeNoises commented #116
  • Aug 20 18:03
    rsmckinney commented #116
  • Aug 20 17:53
    rsmckinney commented #116
  • Aug 20 16:36
    rsmckinney commented #115
  • Aug 20 15:39
    StrangeNoises opened #116
  • Aug 20 13:11
    StrangeNoises closed #115
  • Aug 20 13:11
    StrangeNoises commented #115
  • Aug 20 12:28
    StrangeNoises closed #114
  • Aug 20 12:28
    StrangeNoises commented #114
  • Aug 20 03:37
    rsmckinney commented #115
  • Aug 20 03:35
    rsmckinney commented #114
  • Aug 20 03:35
    rsmckinney commented #114
  • Aug 20 01:28
    rsmckinney commented #115
  • Aug 19 17:37
    rsmckinney labeled #115
  • Aug 19 17:37
    rsmckinney labeled #114
  • Aug 19 17:34
    rsmckinney commented #115
  • Aug 19 15:11
    StrangeNoises opened #115
  • Aug 19 13:21
    StrangeNoises opened #114
Scott McKinney
@rsmckinney
Hi @CorriganRJ. Sounds cool! You don't have to do anything extra for the IJ compiler. Are the compile time errors yours? i.e., false positives your manifold is generating? Or are they errors resulting from the Java code your manifold generates? Or some other type of error? Is there a stack trace?
CorriganRJ
@CorriganRJ

Hi @rsmckinney, thanks for the support. The generated Java class corresponding to the FXML file is being create (visible in my output directory) and when I run my program I'm able to verify that the class is accessible and provides access to the underlying resource. IntelliJ however seems unable to recognize the generated class and highlights the line referencing the resource as a compile time error (despite the fact that gradle builds and runs correctly). IntelliJ is also failing to discover the class which prevents usage of autocomplete features.

Edit: There is no stacktrace because the project successfully builds. IntelliJ is just flagging the generated resource class as unresolvable.

Scott McKinney
@rsmckinney
Hmm. Is the resource file in a resource root in IJ?
Feel free to send me a link to your project, I'll be in a better position to diagnose the problem.
Scott McKinney
@rsmckinney
In the spirit of full disclosure the problem here ^^ was the project contained both the FXML type manifold implementation and an example using it, two projects in one. This produces a chicken-and-egg situation for IntelliJ -- it can't use the FXML type manifold on itself. The moral of the story: a project must have a binary dependency on a type manifold in order for IJ to recognize it.
Cosmin Popescu
@cosminpopescu14
hello !
I have a question regarding Mainfold plugin for IntelliJ
Why i have to pay for it ?
isn't supposed to be free ?
thank you !
I downloaded the plugin in may and it was free
Scott McKinney
@rsmckinney

Hi @cosminpopescu14. Both the Manifold library and the IJ plugin are very time consuming for me to build and maintain, it's a full-time job. As much as I'd like all of it to be free, I gotta pay bills, therefore the plugin has transitioned to a commercial product through the JetBrains Marketplace. The Manifold library, however, is free and will remain free.

Note the plugin is free for students and faculty and shares IntelliJ's discounts and special programs for a variety of use-cases.

Cosmin Popescu
@cosminpopescu14
Hello @rsmckinney
I understand you point of view
is thare any plan that same feature like extension method to be part of standard java ?
:)
Scott McKinney
@rsmckinney
I do not know what motivates Oracle to implement any given feature; it sure isn't pragmatism!
Cosmin Popescu
@cosminpopescu14
me neither
Scott McKinney
@rsmckinney
Heheh. There are some obvious holes in the language Oracle may never implement.
Scott McKinney
@rsmckinney
The flipside of their, I'll call it stubbornness, is that the Java language remains Java. What I mean by that is a Java programmer can move from Java project to Java project without much trouble; their aren't many different ways (or dialects) in which Java can be written. Other languages like Scala or Kotlin are in a way burdened by the huge number of features they provide. For instance, a Haskell programmer can pretty much write in a Haskell dialect in Scala. Likewise a Java programmer can write Java-like code in Scala. Knowing one form of Scala doesn't imply knowing another.
Cosmin Popescu
@cosminpopescu14
Maybe in OpenJDK :)
logicmoo
@DouglasRMiles
Any plans for Eclipse Plugin?
hopefully it does happen!
logicmoo
@DouglasRMiles
Can I add an extension method to Primitive Types or should i do it to Character, Integer etc ?
logicmoo
@DouglasRMiles
Also can I add extension method to Object? why i want to do that is right now i have programing language that has many many types that are all under "SubLObject"
well what i was actually going to show there was the " Errors.error( $str49$Cannot_reserve_a_TOP_N_indexfor, v_term );"
but for the sake of explaining right now i'll start out simple.. if i want to print I'll do something like... StreamsLow.print(makeString("hello world"));
logicmoo
@DouglasRMiles
I dont want to do that.. Id rather do this StreamLow.print("Hello world")
In C# i might have done StreamsLow.print(SubLObject) and do an autoconvert that secretly calls makeString using implicit cast operator
let me be silly and pretend i made a very slow function that basically does nothing StreamLow.slowNop(SubLObject)
implicit cast operator might be kind of useless there
logicmoo
@DouglasRMiles
i really would not be well off if makeString was super slow with StreamLow.slowNop("hello world")
anyways i assume i'll jsut say what i think i want... to code... StreamLow { static public Object print(Object o) { System.out.print( o.myExtentionToSTringMethod()); }
myExtentionToStringMethod will look at the datatype of 'o' and print it according to my spec
logicmoo
@DouglasRMiles
REally i am just asking if i can add Extension Method to java.lang.Object.. if so, than this is my dream tool!
logicmoo
@DouglasRMiles
If i cant write an extension of java.lang.Object.. I can write it on Comparable?
Scott McKinney
@rsmckinney
Hi @DouglasRMiles
Re Eclipse, it's looking more realistic, at least minimal support is coming
And I suppose Manifold is your "dream tool" ;) Yes, you can indeed add extensions methods to Object (you can add extension methods to any class)
sfiss
@sfiss
Hi, I only read the docs so far, and have the following question: Assuming I write my own manifold (or use an existing one), how would I debug internals of the dynamically generated code ? Further, is it in any way possible to see it afterwards like in a source file? I know that the main benefit is to not have the generated code as an additional build step, but with generated code I often end up looking and debugging into it and would maybe need to do the same with this tool.
Scott McKinney
@rsmckinney
Hi @sfiss. There are some dev tools available in the IntelliJ IDEA plugin. For instance, you can examine the generated source code corresponding with any resource using the Show Java Source tool:
image.png
This tool is designed mostly for the type manifold developer, so you can conveniently examine generated source dynamically
For type manifold devs and end user devs alike you can use everyday IntelliJ features such as navigation e.g., Ctrl + Click or Ctrl + B to navigate from a call site to a resource reference.
Scott McKinney
@rsmckinney
This is useful for the "where does this come from?" questions etc. Similarly you can use find usages and rename/refactor
sfiss
@sfiss
Thanks! Hopefully I can start a toy project soon to try manifold out, just have to find the time :)
Scott McKinney
@rsmckinney
:thumbsup: