Erlang Pastebin
Orbitz - orbitz - May 04, 2006I have always wanted to make a pastebin for some reason. When I first started looking at nevow, I wanted to make one in that however mg beat me to it (and made a kickass one at that). So now I have been looking at yaws and think it would be a good project. Perhaps it can be packaged along with the wiki and chat client. I think my pastebin is a bit ambitious, but I would like to design it in such a way that it can all be added incrementally so I can have a functional pastebin and add onto it.
For starters, I would like a nice clean layout. I am going to do my best to use CSS and valid HTML for all of this. I am hoping petekaz can possibly help out with this. I am going to write it with everything in a div tags with proper ids so it should be easy to give this thing a skin eventually.
Technical Features:
Syntax highlighting - As with any pastebin this will most likely be used for code 90% of the time. For all of those languages we need syntax highlighting so they are easy to read. I have found a program, I beleive it is just called ‘highlight’. It handles 100+ languages, including all of the ones I have an interst in supporting so I can simply interface to that.
Documentation links - People seem to want this. I am not sure how easy it is to support, especially if you want to support a lot of languages. It’s a thought but not on the top of my list.
Annotation - Instead of putting suplimentery information in comments of the paste, just having a section for such information would be nice.
Threads for pastes - lisppaste does this I beleive. A paste should be like a discussion. “Here this doesn’t compile” “You have a mistake here, this fix will work” “Ok, but now I have a problem here” “Ok do this”. Each post in a paste thread will have the paste + annotation. To reply, since you are generally going to simply be making small changes to the previous post, the paste section should be populated with that already.
Compile code for your language - I am not sure how to do this safely, if at all. It would be nice to provide a gcc interface and an erlc interface and a ghc, yadda yadda. But I am not going to put my system at risk just for this feature that shouldn’t be needed all too much in the first place.
Interface to any erlang app - By providing a node + a process name, this should be able to send a message that paste is ready to any erlang node. The obvious first usage of this would be an IRC bot. The main problem I see with this is, depending on what application the data is sent to, that will affect the look of the pastebin. For example, if the events are sent to an IRC bot, you want to be able to select what channel the notification gets sent to for the IRC bot. Should I just hardcode this into the pastebin or provide some way for the IRC bot to register information with the pastebin and somehow have the pastebin display the information on the web app? This sounds a bit harder, but works better with any application (But what other applications would even want notification of a paste?). Perhaps I will hard code it at first and then move towards a more dynamic system as I figure out how.
Mnesia configuration - I like to use mnesia for my configuration. I have a config module which provides functions to be used in setting/getting values from the mnesia config data base. I also want to use mnesia to store all of the information for the actual pastes. I hear mnesia falls apart after store a lot of data, I can imagine some of these pastes will grow to be a fair size, so I am considering using a cache for the syntax highlighted pastes. Running the application to highlight the text on every hit sounds inefficient, and storing it for every paste sounds like a waste of space, so a cache is probably a good inbetween. Right now I would like to store as many pastes as I can but will consider deleting those that are too old.
Download paste - Being able to download the paste is always very helpful. Providing a nice filename that ends in the proper extension for the language would be nice.
Browsing recent pastes - You paste to my site you loste all privacy, go figure.
File upload - Somtimes it is easier to just upload a file rather than pasting.
This sounds like a lot but I don’t think it will be too bad. It seems like I should be able to do most of it fairly modular.
Step one - Come up with mnesia tables, do some research on mnesia in terms of foreign keys and possibly how to do decent QLC queries. I think learning QLC will be important, especially when a lot of pastes get put into this thing.
Step two - Get the basic form for uploading going
Step three - Come up with step three when I get there.
UPDATE
Some obvious ideas were brought to my attention
Indent - Running various languages through astyle and friends would be very helpful, some people just can’t indent properly.
Customize with cookies - Store various color information in cookies so people can keep colors they enjoy. This probably won’t be implemented until much later.
Differences - Highlight differences between pastes so you can show what changes have been made. This sounds kind of difficult, especially if I am outsourcing the highlighting to a third party.
Line numbers - This should be obvious
Non GUI Browsers - Yes some people use these. The download as text option should be helpful for these people, but the probably also want line numbers so a specific Non GUI version of the code might be nice, this will include line numbers.
RSS - This certainly isn’t a need but might be nice, especialy as the maintainer I might want to keept track of who’s pasting what.
Intelligent Mouseovers - Showing balanced paren when the mouse is over
Categories: Blogs Orbitz
Comments
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Posted by HHHHHHHHHHHHHHHHH on 17 Oct 2009 at 15:44Great job Andreas, congratulation! I think you could be more than a little bit proud of you, because it’s the result of very good work and a very good website! Keep on to be on the Top! :-)
treat sciatica symptoms indonesian
Very interesting as well as informative post.Thanks for providing for us.I read your article with my pleasure.
Posted by treat sciatica symptoms indonesian on 22 Dec 2009 at 04:41I can see that you are putting a lot of time and effort into your blog and detailed articles! I am deeply in love with every single piece of information you post here. Will be back often to read more updates!
treat sciatica symptoms indonesian
Really a good and interactive post, i think the post is informative and knowledge providing both in regard of current affairs and present economic Situations.
car crash claim
Thanks for taking the time to post such a detailed and informative article. It has given me a lot of inspiration and I look forward to more like this in the future.
Posted by Sciatic Pain Treatment on 09 Apr 2010 at 12:21Thanks for taking the time to post such a detailed and informative article. It has given me a lot of inspiration and I look forward to more like this in the future.
Sciatica Pain Relief
Türkiye’nin en büyük anne -bebek & aile yaşam platformu e-bebek ve Anadolu Ulaşım’ın işbirliğinde 1 Eylül 2009 tarihinde başlatılan, “çağrı merkezinden bilet alanlara çocuk koltuğu sağlanması”na yönelik uygulamaya olan ilgi artarak devam ediyor.
1 Haziran 2010 tarihinde yürürlüğe giren, ülkemizde oto koltuğu kullanımını zorunlu hale getiren yasa ile birlikte, seyahatlerde çocuk oto koltuğuna yönelik taleplerde ciddi artış yaşandığına dikkati çeken çocuk oto koltuğu Genel Müdürü Halil Erdoğmuş, ilerleyen dönemde bu talebin daha da artacağını öngördüklerinin altını çiziyor. hello totoş admin :)
Posted by çcocuk on 23 Jun 2010 at 22:00Hello, Your site is very good mIRC I have been offered about the content on my site come easy.
Thank you blog.
Posted by GoogleTR on 13 Sep 2010 at 18:24Thanks for the great site and always interesting blog posts.
I often come back to your site for further information after my first read.
Posted by Michael on 25 Oct 2010 at 11:35I’m not sure I follow your reasons for breaking the site down in the way that you have. It reads like a car crash. Time for some accident claim advice.
Posted by Mick on 29 Oct 2010 at 13:10I was looking for some topics that are enough popular and finally founded your blog, it has superb topics with great popularity.Bulk DVD Replication ideareplication.com
Posted by Mack on 23 Aug 2011 at 11:29Thanks for the consideration. I hope you pursue more innovative ways and ideas to make us.
Posted by Marketing Photography on 03 Nov 2011 at 05:40Thanks for providing for us.I read your article with my pleasure. nike free run sale
Posted by nike free run sale on 24 Feb 2012 at 19:51This is my first time at your blog and I’ve really enjoyed looking around. i like getting information about site..
Walking Holidays Europe
Add comment
Erlang on Twitter
» udzura (Uchio KONDO): 文字列操作が弱い、は今のErlangではfalseであると
» udzura (Uchio KONDO): Erlang , R14 あたりからutf-8の文字列の扱いに強くなったとのこと #shinjukuex
» winda_lestari63 (winda cliquers): gg usja di pikirin prins ank itw gjhe..RT:@Prinsia_2140
@Erlang_ABNIC @ji_bero @erlang_abnic @rb_120511
» ErlangSolutions (Erlang Solutions): Want to join the best of the best of the best? ESL is hiring 40 engineers! Join our Linkedin Group to keep updated http://t.co/CDB7qYeI
» Prinsia_2140 (˘⌣˘ pRiNsiAH ˘⌣˘): @Erlang_ABNI : http://t.co/j61ODMNv
» Erlang_ABNIC (Erlangga .A): JERA :) RT @AgnesMonicaFanz: #acakhuruf A-R-J-E . klue : kapok,lagu. jawab yuk NIC !
» Fedora_Updates (====================): Fedora 17 Update: erlang-misultin-0.9-1.fc17 http://t.co/u3ABUDkz
» HornedKavu (Max Riveiro): RT @shwars: Вчера в докладе career.ru на #itedu были озвучены новые востреб.профессии на IT-рынке: Haskell-, Lisp- и Erlang-программист!
» phyrexianengine (Vasily K.): RT @shwars: Вчера в докладе career.ru на #itedu были озвучены новые востреб.профессии на IT-рынке: Haskell-, Lisp- и Erlang-программист!
» Erlang_ABNIC (Erlangga .A): @cjerikho829 selamat shooting ♈o kak.. Nitip salam buat kak @Bellaudya829.. ☺ Semangat (งˆヮˆ)ง
Statistics
Number of aggregated posts: 10498
Number of comments: 2115
Most recent article: May 15, 2012
Latest comments
» cheap soccer jerseys on Memory Models in Erlang vs Java: Nice discussion here,you are doing a great job. i was looking for this information. i found it on your page…
» mandesejohn on Couchbase Meetup at new HQ: Thanks for sharing experience. It should be really a great post. It should be knowledgeable and informative. Keep it up. flower delivery columbus ohio
» vermaseo on Scale means Skills: I’m surprised people are still commenting about this. George has been moved on to bigger and better things with the president for awhile now.ledikanten