IRC log for #asterisk-scf-dev on 20110106

02:47.57*** join/#asterisk-scf-dev dms (~dms@user-24-214-131-55.knology.net)
02:52.43*** part/#asterisk-scf-dev wesphillips (~wphillips@72-254-150-8.client.stsn.net)
12:35.18*** join/#asterisk-scf-dev kpfleming (~kpfleming@asterisk/digium-director-of-software-tech/kpfleming)
12:37.58*** join/#asterisk-scf-dev leifmadsen (~Leif@asterisk/documenteur-extraordinaire/blitzrage)
13:32.46*** join/#asterisk-scf-dev dms (~dms@user-24-214-131-55.knology.net)
14:16.57*** join/#asterisk-scf-dev leedm777 (~dlee@nat/digium/x-mvyetbdgfdzpdznx)
14:21.57*** join/#asterisk-scf-dev dms (~dms@nat/digium/x-rzvbbdriiqqmngyp)
14:23.04*** join/#asterisk-scf-dev leedm777 (~dlee@nat/digium/x-gvlsyqskeaumcaoa)
15:02.20*** join/#asterisk-scf-dev putnopvut (~putnopvut@asterisk/master-of-queues/mmichelson)
16:08.36*** join/#asterisk-scf-dev leedm777 (~dlee@nat/digium/x-ppvdxbldyuaiigio)
16:28.33*** join/#asterisk-scf-dev kpfleming (~kpfleming@asterisk/digium-director-of-software-tech/kpfleming)
17:43.59kenhuntleedm777 and I were discussing the task that involves include files being located under and AsteriskSCF directory structure, and he made a related recommendation that I agree with. Right now in the slice organizational hierarchy, we have Core/Discovery/ServiceLocatorIf.ice, Core/Endpoint/EndpointIf.ice, Core/Routing/RoutingIf.ice. The file name adds it's own organization, so we could bump all of those up a level to Core. (ServiceLo
17:44.02kenhuntThoughts?
17:44.58beaglesI am cool with that
17:45.02kpflemingwhat if we have mutliple interface files in Core/Discovery?
17:45.39kpflemingSystem/Component is already that way, for example
17:48.08leedm777if there are multiple files, then it either a) makes sense to keep the directory or b) makes sense to merge the files
17:48.15leedm777that would be  a case-by-case basis
17:48.36kpflemingwhat advantage does this process bring then?
17:48.54kpflemingright now it's pretty easy
17:49.09kpflemingyou just create a file and put it in the appropriate directory, and people know where to find it
17:49.40kenhuntit simply removes a bit of redundancy... #include <AsteriskSCF/Core/Endpoint/EndpointIf.h>
17:49.56kpflemingok, so today we have System/Logger/LoggerIf.ice, and we decide to move it to System/LoggerIf.ice
17:50.13kpflemingthen in three months we have a need for a new Logger related Slice file that logically shouldn't be merged with LoggerIf.ice. what do we do?
17:50.43leedm777well, what would we do in the current system?
17:50.55kpflemingwe would leave the System/Logger directory, and add the new file to it
17:50.56leedm777probably System/Logger/NewLoggerIf.ice, right?
17:51.05kpflemingyes
17:51.13leedm777In the new system, it would be System/NewLoggerIf.ice
17:51.20kpflemingbut it might not have Logger in the name
17:51.33kpflemingSystem/Component/ReplicaIf.ice does not have Component in its name
17:51.47leedm777and that's a case where keeping the directory probably makes sense
17:51.59kpflemingbut once you have removed the directory, you can't go back
17:52.04leedm777why not?
17:52.10kpflemingbecause it will break all existing users
17:52.28leedm777you can have System/Logger.ice _and_ System/Logger/NewThing.ice
17:52.37kpflemingthat's awful, in my opinion
17:52.50leedm777Foo/FooIf.ice is awful in my opinion
17:53.03kpflemingthen call EndpointIf.ice something else
17:53.22kenhuntwe had discussed that boost often uses an idiom where for a particular collection of functionality where there is a "top level" include that may pull in a lot of related includes in a subdirectory. For example, you might include "boost/thread.hpp" to get all the boost thread headers... or you might include "boost/thread/mutex.hpp"
17:53.40kpflemingwhat i don't want to see is the words that used to be directory names forced to be in the file names because we've eliminated the directories
17:53.58kpflemingsure, you could certainly do that as well
17:54.18kenhuntso that's how I was thinking we'd handle the Component case...
17:54.52kpflemingthen it makes sense to do that across the board, and not have two different methods of organization
17:54.54kenhuntthere could be a ComponentIf.ice that includes Component/ComponentServiceIf.ice and Component/ReplicaIf.ice
17:55.34kpflemingwell, if you were going to do that, i'd suggest the upper level file would just be Component.ice. it won't actually generate any output files.
17:56.18leedm777And Time.ice that include Time/TimeIf.ice, Logger.ice that includes Logger/LoggerIf.ice, Routing.ice that includes Routing/RoutingIf.ice, etc.
17:56.24leedm777I could go for that
17:56.26kpflemingyes
17:56.33kpflemingthat is easily extensible and is understandable
17:56.47kpflemings/understandable/documentable/
17:57.16leedm777And it follows the pattern for boost, and i figure those guys know what they're doing
17:57.18leedm777:-D
17:57.36kpflemingyep
17:58.17kpflemingi was incorrect before... for C++, these include files would generate .h files, but that's all
17:58.44kpflemingdoes this help Java and C# at all? it doesn't seem like it.
17:58.50leedm777no
17:59.01leedm777Java structure is entirely based on the module structure
17:59.07leedm777.ice files don't matter
17:59.21kpflemingbut in those languages, you can mass reference package subspaces with wildcards though, right?
18:00.14leedm777well, in Java you usually don't care.  the IDE handles the imports for you :-)
18:00.16kpflemingok
18:00.38kpflemingi was thinking more of C++ 'using namespace', for flattening the namespace
18:00.43leedm777but, yes, it does have wildcard imports.
18:00.47kpflemingok
18:00.52kpflemingso that achieves the same end, sort of
18:00.58leedm777pretty much
18:11.34beaglesThat presumes you are using an IDE for Java development :)
18:28.55beaglesI wasn't really following the conversation as it was happening but at the risk of seeming overly agreeable: I'm also cool with that :)
18:30.31leedm777file and putnopvut: any thoughts ^^^
18:30.48putnopvutgahh, must catch up
18:33.49putnopvutI really really don't care.
18:45.34kpflemingI really care that putnopvut doesn't care.
19:49.23kpflemingleedm777: should i drop you from CR-ASTSCF-36? the remaining areas of work are pretty far outside your interests, i suspect
19:50.00leedm777kpfleming: yeah; most I can do at this point is notice glaring errors.
19:50.04leedm777thanks!
19:50.10kpflemingwill do
19:53.44*** join/#asterisk-scf-dev wesphillips (~wphillips@192.160.117.155)
19:59.47*** join/#asterisk-scf-dev wesphillips (~wphillips@192.160.117.155)
20:04.44*** join/#asterisk-scf-dev dms (~dms@nat/digium/x-emxebbqbxeproaua)
20:18.12filereads
20:18.44*** join/#asterisk-scf-dev wesphillips1 (~wphillips@192.160.117.155)
20:19.36fileI am with putnopvut
20:31.55dmsanyone built on Windows recently?
20:32.09fileI built yesterday
20:32.15dmshmm
20:32.29dmsI'm getting a compiler error from a fresh clone
20:32.46dmshere I come msdn
20:33.10kpflemingwhat is the error?
20:33.17dms0xc0150002
20:33.23kpflemingoh, you mean an internal error
20:34.18dmsyes . . on slice2cpp
20:34.51kpflemingwhy oh why does C# require you to indicate that you are overriding a virtual method in one of your base classes? if the base class didn't want it to be overridable without explicit action, they wouldn't have made it virtual
20:34.58fileare you attempting to use MSVC++ 2010?
20:35.03dmsyes
20:35.10dms(express)
20:35.20beaglesar all of the required DLLs available for slice2cpp
20:35.39file1. I strongly suggest using 2008 until I get to my task to explore 2010, because I don't think stuff will work as it is right now
20:35.48kpflemingyeah, post the last few lines of output before that message
20:35.59file2. I remember having to modify the Ice config when building it to turn on 2010 support or I got a weird error with slice2cpp
20:36.25dmsgotcha
20:37.20file# Specify your C++ compiler. Supported values are:
20:37.21file# VC60, VC90, VC90_EXPRESS, VC100, VC100_EXPRESS, BCC2010
20:37.21file#
20:37.21file!if "$(CPP_COMPILER)" == ""
20:37.21fileCPP_COMPILER= VC100_EXPRESS
20:37.21file!endif
20:37.40filethat is what I changed in Make.rules.mak
20:38.01kpflemingyou could just set CPP_COMPILER in the config file
20:38.02dms"making all in Ice"
20:38.02dms<PROTECTED>
20:38.02dmsCould Not Find C:\ascf\ice\cpp\include\Ice\BuiltinSequences.h
20:38.02dmsCould Not Find C:\ascf\ice\cpp\src\Ice\BuiltinSequences.cpp
20:38.02dms<PROTECTED>
20:38.03dms..\..\..\slice" --stream ..\..\..\slice\Ice\BuiltinSequences.ice
20:38.03dmsNMAKE : fatal error U1077: '..\..\bin\slice2cpp.exe' : return code '0xc0150002'
20:38.10fileyes.
20:38.14filethat is exactly what I encountered
20:38.20kpflemingthats not a compiler error, it's an error running slice2cpp
20:39.32beaglesif the compilation flags are the culprit, you need to rebuild slice2cpp
20:40.01beaglesand the libraries it depends on (Slice, etc)
20:53.39dmsset CPP_COMPILER=VC100_EXPRESS seems to have done the trick
20:54.46kpflemingand for some reason they do care whether it is EXPRESS or not
20:54.57dmswould appear that way
20:59.32kenhuntkpflemging: I actually adore that C# requires the override keyword. It gives the user of the class explicit information about what's happening (without having to visit all the classes being derived from), and it allows the compiler to insure that you didn't accidentally change some parameter, thus creating an accidental overload as opposed to the override that you intended. Java has added the @Override tag for the same reason, albe
20:59.35kenhunt(imo)
20:59.55kpfleminghmm
21:00.02kpflemingwell, i guess it does have its uses then
21:00.20kpflemingi've worked out the requirement and slice2cs now supports plugin generators, so i'm happy :-)
21:30.36dmswell, ice built like a champ
21:30.39dms:)
21:31.01filethere is method to my madness
21:33.22kpflemingsometimes
22:00.55*** part/#asterisk-scf-dev wesphillips1 (~wphillips@192.160.117.155)
22:38.00kpflemingokey-dokey... the slice translator plugin stuff now works for C++, Java, C# and Python, including dynamic code generation for Python
22:38.30kpflemingnow i need to test it winders to ensure i didn't break anything
22:38.36kpflemings/it/it on/
22:41.09kenhunts/infobot/nagging_wife_substitute/
22:41.51leedm777hey, don't hate on the infobot
22:42.07kenhuntwell, I don't hate my wife...
22:42.20leedm777infobot, botsnack
22:42.20infobotleedm777: thanks
22:42.23kenhuntbut infobot seems to have a lot in common with her
22:42.36dmsheh
22:43.00leedm777always correcting you...
22:43.17kenhuntsomeone has to
22:43.21dmsI now have a machine with a working dvd/cd burner!! w00t!!
22:43.24dmsit's the little things
22:47.09dmsmsbuild had less than stellar build results with AsteriskSCF . . although, it's not near as bad as the first time I tried building Asterisk SCF
22:47.16dms5 warnings, 28 errors
22:47.26dmsmost of them boost related

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.